The Safe Bunk is a comprehensive student attendance management system designed to help students track their attendance records, manage timetables, and calculate safe skipping opportunities ("bunks") while maintaining required attendance percentages.
- Smart Dashboard: Real-time overview of current attendance status, upcoming classes, and safe bunk metrics.
- Attendance Tracking: Easy-to-use interface for marking attendance (Present/Absent/Cancelled).
- Safe Bunk Calculator: Algorithmic logic that tells you exactly how many classes you can skip while staying above your target percentage (e.g., 75%).
- Timetable Management: Organized class schedule viewing.
- Analytics: Visual representation of attendance trends using charts.
- User Authentication: Secure login and registration system.
- Framework: React 19 (via Vite)
- Styling: Tailwind CSS 4
- State Management: Redux Toolkit
- Routing: React Router DOM
- UI Components: Lucide React (Icons), Framer Motion (Animations)
- Charts: Recharts
- HTTP Client: Axios
- Runtime: Node.js
- Framework: Express.js
- Database: MongoDB (via Mongoose)
- Authentication: JWT (JSON Web Tokens) & BcryptJS
- Task Scheduling: Node-cron (for automated tasks)
- Node.js (v20 or higher)
- MongoDB Database URI
git clone https://github.com/SwastikShetty06/TheSafeBunk.git
cd TheSafeBunkNavigate to the backend directory and install dependencies:
cd safe-bunk-backend
npm installCreate a .env file in the safe-bunk-backend directory:
PORT=5001
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_keyStart the backend server:
npm startOpen a new terminal, navigate to the frontend directory and install dependencies:
cd safe-bunk-frontend
npm installStart the development server:
npm run devThe application should now be running at http://localhost:5173.
- Frontend: Deployed on GitHub Pages. Live Link
- Backend: Hosted on Vercel.