A modern, full-stack attendance management system built with React and Node.js. Perfect for educational institutions looking to digitize their attendance tracking process.
- User Authentication - Secure login and registration system
- Role-Based Access - Separate dashboards for students, faculty, and administrators
- Smart Attendance Tracking - Easy-to-use interface for marking attendance
- Comprehensive Reporting - Generate detailed attendance reports and analytics
- Course Management - Organize courses and manage student enrollments
- Frontend: React 18, Material-UI, Recharts for data visualization
- Backend: Node.js, Express.js, MongoDB with Compass
- Authentication: JWT tokens with bcrypt for password hashing
- File Export: PDF and Excel report generation
AttendEase/
├── frontend/ # React application
├── backend/ # Node.js API server
└── README.md
Make sure you have Node.js (v14 or higher) and npm installed on your machine.
-
Clone the repository
git clone <repository-url> cd AttendEase
-
Install backend dependencies
cd backend npm install -
Install frontend dependencies
cd ../frontend npm install
You'll need to run both the backend and frontend servers. Open two separate terminal windows/tabs for this.
In your first terminal:
cd backend
npm run devThe backend will start on http://localhost:5000 with automatic restart enabled (thanks to nodemon).
In your second terminal:
cd frontend
npm run devThe frontend will start on http://localhost:3000 and automatically open in your browser.
npm run dev- Start development server with hot reloadnpm start- Start production server
npm run dev- Start development servernpm start- Same as dev (alias)npm run build- Create production buildnpm test- Run test suite
- The backend uses nodemon, so it will automatically restart when you make changes to server files
- The frontend has hot reload enabled, so changes will appear instantly in the browser
- Make sure MongoDB is running locally or update the connection string in the backend config
- Check the console for any error messages if something isn't working
- Students: View your attendance records, check attendance percentages, and see course schedules
- Faculty: Take attendance, view student lists, generate reports, and manage courses
- Administrators: Manage users, courses, and access comprehensive system analytics
Feel free to submit issues, feature requests, or pull requests to improve this project!
This project is open source and available under the MIT License.