BACK TO PROJECTS
FULL STACK / PRODUCT
CampusConnect.
A campus events app for finding events and managing them through an admin area.
40automated tests
React client · Express API · MongoDB
React client · Express API · MongoDB
A REAL EXAMPLE
What happens
Open the app as a visitor to search and filter published events. Admin accounts can create events and review earlier configuration changes; those controls require sign-in.
Why I made it
Campus announcements can be scattered across channels. I built one place to browse events while keeping publishing and configuration changes behind an admin role.
How it works
React / Vite client→Express REST API→Middleware / services→MongoDB Atlas
- Event search, filters, sorting and pagination for visitors.
- JWT sign-in and role checks for event and configuration administration.
- Configuration version history, restoration, audit history and CSV export.
Choices I made
- I kept the client and server in one workspace repository, then deployed them as separate services.
- I put validation, role checks and error handling at the API boundary so admin actions have predictable outcomes.
What I checked
- 40 automated tests documented for the application.
- The repository documents an integrated deployment of the client, API and database.
Where it stands
- The public demo shows visitor features; admin actions need an authorized account.
- The frontend and API are hosted separately. A public demo is not linked while API availability is unconfirmed.