A modern, full-stack web application for managing and analyzing student attendance records. This system provides educators and administrators with powerful tools to track, analyze, and report on student attendance efficiently.
- User Authentication: Secure login for authorized access.
- Dashboard Overview: Visual summary of total students, attendance sessions, and quick links to logs and attendance.
- Attendance Management: Mark, view, and manage attendance records with real-time updates.
- Student Management: Add, view, and analyze student records and their attendance statistics.
- Analytics & Reporting: Visual analytics for attendance trends, top/bottom students, and exportable reports.
- Issue Reporting: Built-in form to report bugs, feature requests, or improvements.
- Responsive UI: Clean, modern, and mobile-friendly interface.
- Frontend: Next.js, React, Tailwind CSS, Radix UI, Recharts
- Backend: Node.js, Express.js, MongoDB, Mongoose
- APIs: RESTful endpoints for authentication, students, attendance, analytics, and reports
- Node.js (v16+)
- npm or pnpm
- MongoDB instance (local or cloud)
-
Clone the repository:
git clone <repo-url> cd attendance-management-system
-
Install backend dependencies:
npm install
-
Install frontend dependencies:
cd frontend npm install # or pnpm install
-
Configure environment variables:
- Create a
.envfile in the root and set up your MongoDB URI and other secrets as needed.
- Create a
-
Run the backend server:
npm run dev
-
Run the frontend app:
cd frontend npm run dev
attendance-management-system/
├── frontend/ # Next.js frontend
├── models/ # Mongoose models
├── routes/ # Express API routes
├── middleware/ # Express middleware
├── config/ # DB and environment config
├── read/ # Screenshots and documentation images
├── server.js # Express server entry point
└── README.md # Project documentation
The Attendance Management System is designed to streamline attendance tracking, provide actionable insights, and reduce administrative workload for educational institutions.
Created BY AJ




