EduTrack is a smart attendance system built for schools, colleges, and universities. It uses Image Based recognition to take attendance automatically, so there’s no need for roll calls or manual tracking.
With personalized dashboards for students, teachers, and administrators, everyone gets the tools they need, right at their fingertips.
By cutting out the paperwork and streamlining the process, EduTrack saves time, reduces errors, and makes managing attendance simple, fast, and accurate.
- Image Based Face Recognition: Automated attendance tracking using facial recognition technology.
- Role-Based Access Control: Separate interfaces for administrators, faculty, and students.
- Secure Authentication: Hardcoded credentials in MongoDB Atlas without registration route.
- Cloud-Based Storage: Data persistence using MongoDB & MongoDB Atlas.
- Interactive Dashboards:
- Admin Dashboard for system management.
- Faculty Dashboard for managing attendance records.
- Student Dashboard for viewing attendance history and schedules.
- Containerized Deployment: Dockerized setup for easy installation and scalability.
- Frontend: React.js with Vite
- Backend: Node.js, Express.js
- Database: MongoDB Atlas
- AI Components: MTCNN and FaceNet Model for facial recognition
- Containerization: Docker & Docker Compose
- Authentication: JWT (JSON Web Tokens)
- Node.js (v16+)
- MongoDB Atlas account
- Docker & Docker Compose (for containerized setup)
-
Create a
.envfile based on.env.samplewith the following content:DB_URI="DB URI" PORT="Backend Port" JWT_SECRET=<your_jwt_secret> CLOUDINARY_CLOUD_NAME=<your_cloud_name> CLOUDINARY_API_KEY=<your_api_key> CLOUDINARY_API_SECRET=<your_api_secret> FACE_RECOGNITION_API_URL=http://0.0.0.0:8000 SPREADSHEET_ID=<your_spreadsheet_id> VITE_SPREADSHEET_ID=<your_spreadsheet_id> VITE_API_BASE_URL=http://localhost:5000
-
Navigate to the backend directory:
cd backend -
Install dependencies :
npm install -
Start the Backend Server:
npm run dev -
Note: Go to console.cloud.google.com and enable google sheets API, download the credentials file and rename with credentials.json
-
Check out the Backend API Documentation for more details.
-
Navigate to the frontend directory:
cd frontend -
Install dependencies :
npm install -
Start the development server:
npm run dev -
Access the application at http://localhost:5173
-
Check out the Frontend API Documentation for more details.
- Python 3.8+
- Virtual Environment (optional but recommended)
- Required Python libraries:
tensorflow,keras,mtcnn,numpy,opencv-python
-
Navigate to the Face Recognition Directory:
cd face -
Create a Virtual Environment (optional but recommended):
python -m venv venv -
Activate the Virtual Environment:
-
On Windows:
venv\Scripts\activate -
On macOS/Linux:
source venv/bin/activate
-
-
Install Required Dependencies:
pip install -r requirements.txt -
Run the Face Recognition API:
uvicorn main:app --host 0.0.0.0 --port 8000 -
Verify the API:
Access the API at
http://0.0.0.0:8000to ensure it is running correctly.
- Ensure the
FACE_RECOGNITION_API_URLin your.envfile matches the API URL (http://0.0.0.0:8000). - The
requirements.txtfile should include all necessary dependencies for the face recognition model.
- Docker installed (Download Docker)
- Docker Compose (included with Docker Desktop)
-
Build and Run with Docker Compose
docker-compose up --build
EduTrack implements a secure role-based access control system with the following user roles:
- Full access to all system features
- User management capabilities
- Analytics and reporting
- Manage course attendance
- View student attendance records
- Generate attendance reports
- Mark attendance
- View personal attendance records
- Check schedules and timetables
- Receive notifications for attendance status
Note: User credentials are pre-defined in MongoDB Atlas. There is no registration route.
-
Use these credentials for test the project
-
For Student Dashboard :
Username : test@gmail.com Password : test@123 -
For Faculty Dashboard :
Username : test@gmail.com Password : test@123 -
For Admin Dashboard :
Username : test@gmail.com Password : test@123 SecretKey : 832153
