Skip to content
/ CMS Public

A college management system built using Django framework. It is designed for interactions between students and teachers. Features include attendance, marks and time table.

License

Notifications You must be signed in to change notification settings

Ashy-21/CMS

Repository files navigation

πŸŽ“ College Management System (CMS)

A full-featured College Management System built using Django, offering a clean, responsive, and efficient interface for Admins (HODs), Staff, and Students. It streamlines the management of students, staff, attendance, leaves, and results with role-based dashboards and secure authentication.


🌟 Highlights

  • βœ… Role-based access for Admins (HODs), Staff, and Students
  • βœ… Manage departments, courses, and academic sessions
  • βœ… Attendance and results management modules
  • βœ… Leave request and approval system
  • βœ… Visual analytics using Chart.js
  • βœ… Secure authentication and CSRF protection
  • βœ… Modern, responsive Bootstrap 5 design
  • βœ… Modular Django structure ready for scaling

πŸ–ΌοΈ Screenshots

Below are screenshots of key pages (place your images in screenshots/):

College Login / Registration

Login Page

Member Login / Registration

Login Page

Student Dashboard

Student Dashboard

Student Dashboard

Staff Dashboard

Staff Dashboard

Admin / HOD Dashboard

Admin Dashboard


πŸš€ Features Overview

πŸ‘¨β€πŸ’Ό Admin / HOD

  • Manage students, staff, departments, courses, and sessions
  • Approve or reject leave requests from staff and students
  • View detailed analytics and statistics by department
  • Interactive dashboards powered by Chart.js
  • Access attendance records and results
  • Create colleges and assign admins

πŸ‘©β€πŸ« Staff

  • Manage students per semester or course
  • Mark student attendance
  • Add or edit results
  • Apply for leave and track approvals
  • View student lists with interactive previews

πŸŽ“ Students

  • View attendance history and subject-wise reports
  • Check results and grades in detailed tabular and chart format
  • Apply for leave and track status
  • Submit feedback to faculty or admin
  • Personalized dashboard with department, semester, and course info

🌐 General

  • Role-based dashboard routing and views
  • College selector and creation option
  • Built-in CSRF protection for all forms
  • Responsive and consistent Bootstrap 5 UI
  • Modular Django app design for clarity and scalability
  • SQLite by default, easy switch to PostgreSQL/MySQL

🧠 Tech Stack

Layer Technology
Frontend HTML, CSS, Bootstrap 5, Chart.js
Backend Django 5.x
Database SQLite (default), PostgreSQL/MySQL supported
Language Python 3.12+
Auth System Django Authentication (Custom User Model)
Template Engine Django Templates

βš™οΈ Installation & Setup (Development)

1️⃣ Clone the Repository

git clone https://github.com/Ashy-21/CMS.git
cd CMS

2️⃣ Create & Activate Virtual Environment

Windows (PowerShell):

python -m venv venv
venv\Scripts\activate

macOS / Linux:

python -m venv venv
source venv/bin/activate

3️⃣ Install Dependencies

If requirements.txt is provided:

pip install -r requirements.txt

If not:

pip install django==5.2.7

4️⃣ Apply Database Migrations

python manage.py migrate

5️⃣ Create Superuser (Optional)

python manage.py createsuperuser

6️⃣ Run the Server

python manage.py runserver

Visit πŸ‘‰ http://127.0.0.1:8000/ to start using CMS.


πŸ“ Project Structure

CMS/                             # project root
β”œβ”€ college/                      # main Django app
β”‚  β”œβ”€ templates/college/          # HTML templates (login, dashboard, etc.)
β”‚  β”œβ”€ static/college/             # CSS, JS, and images
β”‚  β”œβ”€ models.py                   # Core models (Student, Staff, etc.)
β”‚  β”œβ”€ views.py                    # Role-based views
β”‚  β”œβ”€ forms.py                    # Forms for login, registration, etc.
β”‚  └─ urls.py                     # URL configurations
β”œβ”€ CMS_proj/                      # Django project folder
β”‚  β”œβ”€ settings.py                 # Project settings
β”‚  β”œβ”€ urls.py                     # Root URL configuration
β”‚  └─ wsgi.py / asgi.py           # Server entry points
β”œβ”€ db.sqlite3                     # Default database
β”œβ”€ requirements.txt               # Dependencies
└─ README.md                      # This file

πŸ§ͺ Testing

Run tests using Django’s test framework:

python manage.py test

☁️ Deployment Notes

  • Production Ready: Supports PostgreSQL/MySQL for scalability.
  • Static Files: Configure collectstatic for deployment.
  • Security: Set DEBUG=False and configure ALLOWED_HOSTS.
  • Hosting: Compatible with Render, PythonAnywhere, or any WSGI-compatible host.

πŸ§‘β€πŸ’» Contributing

  1. Fork the repository
  2. Create a branch: git checkout -b feature/your-feature
  3. Commit changes and push: git push origin feature/your-feature
  4. Open a Pull Request

πŸ“ License

This project is released under the MIT License. See LICENSE for more details.


πŸ“¬ Contact

For guidance, customization, or integration support, feel free to reach out. πŸ’¬ *Built with ❀️ for colleges to manage academics se

About

A college management system built using Django framework. It is designed for interactions between students and teachers. Features include attendance, marks and time table.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published