AttendEase is a student attendance system designed to streamline attendance tracking and management for both students and administrators.
- Student Attendance Marking: Students can easily view their class schedules and mark their attendance for each class.
- Admin Attendance Analytics: Administrators have access to a dashboard displaying attendance analytics, including overall attendance rates and individual student records.
- Class Management: Admins can add, edit, and manage classes, including class names and schedules.
- Class Timetable Integration: The system integrates class timetables to display schedules and facilitate automated attendance reminders.
- Student Absence Notification and Analytics: Students receive notifications about their absences, and admins can view absence analytics.
AttendEase is built using Next.js, leveraging React for the frontend and a Node.js backend for server-side logic. Firebase is used for authentication, database, and potentially other backend services.
- Frontend: Next.js, React, Tailwind CSS for styling.
- Backend: Node.js, Firebase (Authentication, Firestore, potentially Cloud Functions).
- Data Management: Firebase Firestore is used to store class information, student data, and attendance records.
- APIs: Custom APIs are implemented to handle attendance marking, class management, and data retrieval for analytics.
- Student Dashboard: Displays upcoming classes, attendance status, and absence notifications.
- Mark Attendance Page: Interface for students to mark their attendance for specific classes.
- Admin Dashboard: Overview of attendance analytics, including charts and summaries.
- Class Management Page: Interface for administrators to add, edit, and delete classes.
- Student Records Page (Admin): Detailed attendance and absence records for individual students.
- Login/Authentication Pages: For user authentication (students and admins).
- Firebase Authentication: For secure user login and management.
- Firebase Firestore: As the primary database for storing application data.
- Potential Future Integrations: Calendar APIs for timetable synchronization, notification services for absence alerts.
The project utilizes a modular component-based architecture with React components for various UI elements and functionalities, including:
- Attendance cards/widgets
- Data tables for displaying records
- Forms for class management
- Charts and graphs for analytics
- Navigation and layout components
To get started, explore the project structure and the components within the src directory.