CampusConnect is a campus event discovery and registration platform for students, clubs, and organizers. It helps students find events, workshops, fests, and communities in one place while giving organizers a simple way to manage participation.
CampusConnect works like a campus-focused event platform. Students can browse upcoming events, join clubs, view event details, register for paid or free events, and participate in club chats. Organizers can publish events and clubs, manage signups, and improve student engagement across campus.
- Event discovery and filtering
- Event detail pages
- Event registration flow
- Payment screenshot upload support for paid events
- Club discovery and membership flow
- Real-time club chat using Socket.IO
- User authentication with JWT
- MongoDB-backed event, club, member, and user models
- Responsive React frontend
- Express REST API backend
- React
- Vite
- Tailwind CSS
- React Router
- Socket.IO Client
- Node.js
- Express.js
- MongoDB
- Mongoose
- JWT Authentication
- Socket.IO
- Multer
CampusConnect/
├── backend/ # Express API, MongoDB models, routes, auth, uploads
├── frontend/ # React + Vite frontend
├── package.json # Root helper scripts
├── .gitignore
└── README.md
git clone https://github.com/ryanshaon/CampusConnect.git
cd CampusConnectnpm run install:allcp backend/.env.example backend/.env
cp frontend/.env.example frontend/.envUpdate the values in both .env files. Do not commit real secrets or database credentials.
Open two terminals:
npm run dev:backendnpm run dev:frontendDefault local URLs:
Frontend: http://localhost:5173
Backend: http://localhost:8000
Active full-stack student project. Cleaned and structured for portfolio review, future deployment, and continued development.
- Add organizer dashboard
- Add admin verification for event registrations
- Add better role-based access control
- Add deployment guide
- Add automated tests
- Improve event recommendation logic