Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Attendance Management System (AMS)

A Django-based Attendance Management System that allows teachers to manage courses, enroll students, and track attendance efficiently.

The system provides a dashboard where teachers can create courses, enroll students, and monitor attendance statistics including total classes attended and attendance percentage.


Features

  • Teacher and Admin authentication
  • Dashboard displaying created courses
  • Create and manage courses
  • View course details and enrolled students
  • Enroll students from an existing student list
  • Create and enroll new students simultaneously
  • Automatic student database storage for future use
  • Attendance tracking per student
  • Automatic attendance percentage calculation
  • Simple and organized dashboard interface

System Overview

The system is designed primarily for teachers to manage attendance for their courses.

Login

Only Teachers and Admins are able to log in to the system.


Dashboard

After logging in, users are presented with a dashboard that displays all the courses they have created.

The dashboard shows:

  • Course Code
  • Course Name
  • Students Enrolled
  • Semester
  • Year
  • Teacher

Teachers can also add new courses directly from the dashboard.


Course Page

When a course is opened, the teacher can view detailed information about that course including:

  • Course Name
  • Year
  • Semester
  • Number of students enrolled

Example header:

Course Name — Course Code
Semester: X | Year: X | Students: X

Student Management

Each course page shows a list of enrolled students with the following information:

Roll No Name Attendance Percentage
Student Roll Number Student Name Classes Attended Attendance %

Attendance is displayed as:

Attendance: Classes Attended / Total Classes

Example:

Attendance: 2 / 3
Percentage: 66.67%

Enrolling Students

Teachers have two options when adding students to a course.

1. Enroll Existing Student

If the student already exists in the database, the teacher can select the student from a dropdown list and enroll them directly into the course.

2. Create and Enroll New Student

If the student does not exist in the database, the teacher can:

  1. Enter the student's Roll Number
  2. Enter the Student Name
  3. Create the student and enroll them into the course at the same time

Once created, that student becomes part of the system database and can later be enrolled in other courses without creating a new record.


Attendance Tracking

Teachers can take attendance for a course. The system keeps track of:

  • Total number of classes conducted
  • Number of classes attended by each student
  • Attendance percentage

The percentage is automatically calculated using:

Attendance Percentage = (Classes Attended / Total Classes) * 100

Tech Stack

Backend

Django

Frontend

HTML
CSS
Bootstrap

Database

SQLite (default Django database)

Authentication

Django Authentication System

Project Structure

AMS/
│
├── ams/                 # Main Django project
├── attendance/          # Attendance management app
├── templates/           # HTML templates
├── static/              # CSS and static assets
├── db.sqlite3
├── manage.py
└── README.md

Installation

1 Clone the Repository

git clone https://github.com/cosmos-creator/AMS.git
cd AMS

2 Create Virtual Environment

python -m venv venv

Activate the environment.

Windows

venv\Scripts\activate

Mac / Linux

source venv/bin/activate

3 Install Dependencies

pip install -r requirements.txt

4 Apply Migrations

python manage.py migrate

5 Create Admin User

python manage.py createsuperuser

6 Run Development Server

python manage.py runserver

Open the application in your browser:

http://127.0.0.1:8000/

Future Improvements

  • Student login portal
  • Export attendance reports (CSV / Excel)
  • Attendance analytics and graphs
  • Bulk student upload
  • Email notifications
  • Improved responsive UI

License

This project is intended for educational purposes and can be modified or extended as needed.

About

Attendance Management System made with Django for teachers

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages