A comprehensive web-based Student Management System built with Flask and SQLAlchemy. This application allows you to manage students, courses, instructors, sections, and enrollments.
- Student Management: View all students and individual student details with enrollment information
- Course Management: Browse courses and view course details with prerequisites
- Instructor Management: Manage instructor information and view their assigned sections
- Section Management: Handle course sections with instructor assignments
- Enrollment Tracking: Track student enrollments with grades
🚀 Visit the Live Application (Link will be updated after deployment)
The application includes several views:
- Home page with navigation
- Students listing and detailed student information
- Courses catalog with prerequisites
- Instructor profiles with assigned sections
- Section details with enrollments
- Backend: Python Flask
- Database: SQLAlchemy ORM with SQLite (for deployment)
- Frontend: HTML templates with CSS styling
- Deployment: Ready for cloud platforms (Railway, Render, Heroku)
- Python 3.9+
- pip package manager
- Clone the repository:
git clone https://github.com/yourusername/student-management-system.git
cd student-management-system- Install dependencies:
pip install -r requirements.txt- Run the application:
python main.py- Open your browser and navigate to
http://localhost:5000
The system includes the following entities:
- Students: Student information with unique student numbers
- Courses: Course catalog with credit hours and prerequisites
- Instructors: Instructor profiles
- Sections: Course sections taught by instructors
- Enrollments: Student enrollments in sections with grades
/- Home page/students/all- List all students/students/<id>- Student details/courses/all- List all courses/courses/<id>- Course details/instructors/all- List all instructors/instructors/<id>- Instructor details/sections/all- List all sections/sections/<id>- Section details/test_db- Database connection test
This application is configured for easy deployment to cloud platforms:
- Fork this repository
- Connect your GitHub account to Railway/Render
- Deploy directly from the repository
- The application will automatically use SQLite database
DATABASE_URL: Optional database connection stringPORT: Application port (automatically set by hosting platforms)
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Rahul - Database Systems Project
- Built as part of a Database Systems course
- Thanks to the Flask and SQLAlchemy communities for excellent documentation