# Swecha Event Management System ## Main modules 1. Registration, Login, Signup 2. User management 3. Event management 4. Certificate generator 5. Payment Gateway 6. Stats page - Visualise existing user data, event data and download the stats ## Features 1. Register and Login users 2. Update profiles 3. Events: - List all events - List attended events - List registered events - Create an event - Update an event - Delete an event - Assign speakers and volunteers to an event - Limit event registration based on - College - Place - Role 4. Roles - Assign a role (commitee and admin) - Participant - Volunteer - Speaker - Functional Commitee - Admin - Promote and demote above roles 5. Certificates - Upload template (Store as file in Disk) - Update template - Delete template 6. Payment gateway - PhonePay - Card ## User Roles 1. Participant - SignUP/Login - List all events - Register to an event - Update profile info - Download certificates 2. Member - Volunteer, Speaker (in addition to the above..) - Upload certificate - Attendance - Commitee (in addition to the above..) - Create, Update, Delete event - Promote or Demote roles - Deactivate or Delete user 3. Admin user (Super user) - Complete access to data and operations ## Data Schema #### Users (SignUp and Profile) - UserID (autogenerated and non editable) - Name - Date of birth - Email - Phone - Education qualification - Education qualified year - College - Branch - Occupation and company (if employed) - Current Place - Area of interest - System availability (Choose from given list) - Desktop - Laptop - Broadband availability (Choose from given list) - Dongle/Mobile - Wifi - How do you know swecha? (Choose from given list) - Role (Editable by commitee and admin) - ProfilePicID #### Events - EventID (autogenerated and non editable) - Event Name - Category (Technical, Social...) - Activity - Talk - Workshop - Hackathon - Speakers [UserIDs] - Volunteers [UserIDs] - Organisers [UserIDs] - Date - StartTime - EndTime - Place - Venue - Amount - CertID #### Payments - UserID - EventID - PaymentID ## Tech Stack 1. UI 2. Backend - Django - Registration - Authentication (Login) - Autherisation (Role access) - CRUD APIs 3. Storage - Disk - ProfileImages - Certificates - Event Images - SQL - Users - Events - Payments 4. Deployment - Docker - Kubernetes (if needed to scale)