A comprehensive University Management System built with Python Flask featuring normalized database design, multi-user authentication, and role-based access control.
A full-stack web application for managing university operations including student enrollment, faculty management, course administration, and grade tracking.
- Multi-User Authentication - Self-registration with role-based access (Admin, Faculty, Student)
- Student Management - Complete CRUD operations with profile management
- Faculty Management - Faculty records with course assignments
- Course Management - Course creation, enrollment tracking, and credit management
- Grade System - Automated grade calculation with CGPA computation
- Reports & Analytics - Department-wise statistics and top performers leaderboard
- Normalized Database Design - 3NF compliant schema with 11+ tables
- Role-Based Access Control - Different permissions for Admin, Faculty, and Students
- Password Security - SHA-256 hashing for user credentials
- Session Management - Secure login/logout with Flask sessions
- Responsive UI - Bootstrap 5 with mobile-friendly design
- RESTful Architecture - Clean API structure with proper routing
Backend:
- Python 3.x
- Flask (Web Framework)
- SQLite (Database)
- Jinja2 (Templating)
Frontend:
- HTML5, CSS3
- Bootstrap 5
- Font Awesome Icons
- JavaScript
Deployment:
- Gunicorn (WSGI Server)
- Ready for Render.com/Heroku
Normalized database structure following 1NF, 2NF, and 3NF:
departments- Department informationstudents- Student recordsstudent_addresses- Separate address table (1NF)faculty- Faculty informationcourses- Course catalogenrollments- Student-course junction (resolves M:N)grades- Grade recordsgrade_lookup- Grade scale referencefaculty_courses- Faculty-course assignmentsusers- Authentication & authorization
Python 3.9+
pip- Clone the repository
git clone https://github.com/YOUR_USERNAME/university-management.git
cd university-management- Install dependencies
pip install -r requirements.txt- Run the application
python app.py- Open in browser
http://127.0.0.1:5000
Admin Access:
- Username:
admin - Password:
admin123
Test Accounts:
- Student:
student1/student123 - Faculty:
faculty1/faculty123
- Password hashing (SHA-256)
- SQL injection prevention (parameterized queries)
- Session-based authentication
- Role-based authorization
- CSRF protection
This project demonstrates:
- Object-Oriented Programming in Python
- Database normalization and design
- Web application architecture (MVC pattern)
- RESTful API design
- Exception handling and error management
- File I/O operations
- Session management
- SQL joins and complex queries
Ready for deployment on:
- Render.com
- Heroku
- PythonAnywhere
- Railway.app
See Procfile for production configuration.
This project is open source and available under the MIT License.
Soni
- GitHub:(https://github.com/Soni875612/)
- LinkedIn:(https://www.linkedin.com/feed/)
Special thanks to Saksham Mishra Sir for guidance and mentorship throughout this project.
8765568506
⭐ If you found this project helpful, please give it a star!
---
## 🎯 **Topics/Tags (GitHub repository settings mein):**
python flask sqlite web-development database crud authentication authorization bootstrap education university management-system full-stack