Campus Event Management System
This is a comprehensive event management platform designed specifically for educational institutions. Through this platform (Web App for teachers and admin and Mobile App for students) the college event management will be very effective!
Project Overview
The system consists of three main components working together to provide a complete event management solution. The backend handles all the business logic and data management, the web application provides administrators with tools to manage events, and the mobile application gives students convenient access to events on their devices.
Note - For backend=> direct to 'backend' folder
For WebApp => direct to 'frontend' folder
For Mobile Application => direct to 'flutter_mobile' folder (Please connect through an simulator or external emulator)
Trial Accounts
WebApp - (Email) mskmss1516@gmail.com (password) 11112222
Mobile App(Flutter) - (Email) msk15@gmail.com (password) 33334444
Project Wireframe
An image of the project's wireframe is attached in this repository with the filename: Wireframe-Web_APP-and-Mobile_APP.png. Go through it for better understanding.
Backend System
The backend is done using FastAPI, a python web framework as it is an excellent solution for the structure we've planned. I've also used SQLite for the DB, as it is easier to setop and deploy without the need of a seperate DB server.
The backend has the following key features such as authentication and authorization, event mangement endpoints for smooth working of the application as required (check the wireframe for reference). It also has two different access features - student and admin. Students can register for an event and get tickets for the event they've registered for. They also get the list of all the events they've registered. Admin has the access to add/create, manage and see the number of participants for each event. They can also get a detailed analytics for the event.
Swagger API testing endpoint
Web Application
The WebApp is developed using Next.js and gives administrators interface for managing the events. Admins can create new events, edit events, view registrations, and manage accounts.
The following are the screenshots of the Web Application
Landing page
Login Page
Registration page
Dashboard page
Create Events page
Manage events page
Edit events page
User Management page
Event Reports and Analytics
Mobile Application
The mobile application is done using Flutter and gives students easy acess to college events. Students can check for available events, view information about eac and every event, and register for events they want to participate in.
The mobile app also has features like digital tickets for events registered by the user and students can show at the start of their respective events.
Digital ticket for each registered event
Installation and Setup
To run the project, you'll need to set up each part separately. The backend uses Python and the related packages, the web application uses Node packages, and the mobile application uses Flutter environment.
Backend Setup
First, go/navigate to the 'backend' directory in the project and create a virtual environment(venv). Activate the venv and install required packages using
pip install
```.
The project uses SQLite, so no extra external DB setup is needed. The DB file will be generated automatically when we first run the application.
Here are the commands to set up and run the backend:
```bash
cd backend
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --host 0.0.0.0 --port 8000 --reloadThe backend server will run on localhost port 8000 by default. You can access the API documentation at http://localhost:8000/docs to test the endpoints.
Web Application Setup
Go to the 'frontend' directory and install the node packages using npm. The application uses Next.js, it provides server-side rendering and other webapp features.
Here are the commands to set up and run the web application:
cd frontend
npm install
npm run devThe web application will be available in your browser at http://localhost:3000. You can access the admin portal and start creating, monitoring and managing events.
Mobile Application Setup
Go to the 'flutter_mobile' directory and install the dependencies using flutter pub get. Make sure you have Flutter installed on your system.
Here are the commands to set up and run the mobile application:
cd flutter_mobile
flutter pub get
flutter runYou can run the mobile application on an simulator or external emulator device. The app will connect to the backend API to get event data and handle user auth. Make sure the backend is running before starting the mobile app.




