An anonymous, privacy-focused hobby forum. Visit us at: https://comper.space
Developers:
Ross Kugler — GitHub
Huy (Harry) Ky — GitHub
Dylan Gyori — GitHub
Linh (Jason) Nguyen — GitHub
Evan Gyori — GitHub
Ben Bordon — GitHub
Comper is a platform where users can participate in anonymous discussions, submit entries to competitions, and engage in hobby-related forums. The app prioritizes privacy and user control over their personal data. It supports anonymous posts and competitions, creating a space where people can share and explore ideas without the fear of being tracked or identified.
- Anonymous User Engagement: No account required to post or participate.
- Privacy-Focused: Protects user data and keeps participation anonymous.
- Hobby Forums: Threads for various hobbies, where users can discuss, share tips, and exchange ideas.
- Competitions: Users can submit entries to anonymous competitions and vote on them.
- Node.js – runtime for the backend
- React – frontend UI library
- Express.js – Node.js web framework
- Azure SQL – storing threads & posts
- Render – hosting platform for backend and frontend
The backend is built using Node.js and Express. It handles API requests, manages user submissions, and interacts with the Azure SQL database.
server.js: The entry point of the backend server.routes/: Contains route files for handling API requests (competitions, threads, comments, etc.).db/: Contains database connection setup (connection pools).Controllers/: Used to control queries for specific data models.Models/: Interact directly with the Azure SQL server for data in the tables.
The frontend is built using React, and it communicates with the backend API to display threads, competitions, and user-submitted competition entries.
src/App.js: The main React component, rendering the entire app interface.src/components/: Contains React components used across the app (e.g., forms, thread listings).src/utils/: Utility functions to handle API requests.src/pages/: Sections of the site that display data and allow user interaction.
We host our backend and frontend on Render. The frontend uses the static site option, and the backend uses the web service option.

