EduSync is a full-stack Android application designed to digitize the administrative and academic lifecycle of a B.Tech college. It replaces fragmented manual processes with a unified, role-based mobile ecosystem.
The system utilizes Firebase as a serverless backend to ensure real-time synchronization of chat, attendance, and notices across thousands of concurrent users. It features complex logic for timetable automation (Excel parsing) and live class tracking.
| Module | Description |
|---|---|
| 🔐 RBAC Security | Secure, separated login flows for Students, Teachers, and Admins. |
| 📅 Live Timetable | Real-time home screen indicator showing Current Subject & Teacher based on time/day. |
| 📊 Analytics | Visual attendance reports using MPAndroidChart (Semester/Year/Branch wise). |
| 📂 Excel Sync | Admins can upload bulk timetables via .xlsx files using Apache POI. |
| 💬 Global Chat | Hierarchical chat rooms: Class-wise, Semester-wise, and Admin-Staff channels. |
| ☁️ Cloud Storage | Teachers upload PDFs (Notes/Assignments); Students download directly to local storage. |
Role Selection |
Secure Login |
Student Register |
Teacher Register |
Home (Live Schedule) |
Profile Management |
Weekly Timetable |
Notes Repository |
Group Chat System |
Assignment Submission |
Events & Notices |
Excel Timetable Upload |
Attendance Marking |
Attendance Analytics |
The app executes a real-time check against the device's current timestamp and the synchronized Firebase JSON tree:
- Fetch:
Branch -> Semester -> Daynode. - Compare: Current
HH:MMvs. storedStartTime&EndTime. - Render: If a match is found, the specific subject card is highlighted on the Home Fragment.
To avoid manual entry of hundreds of classes:
- Admin uploads an
.xlsxfile. - Apache POI iterates through rows (Time slots) and columns (Days).
- Data is serialized into a Java Object and pushed to
FirebaseDatabase.getInstance().getReference("Timetable").
- Core:
androidx.appcompat,material:1.9.0 - Backend:
firebase-auth,firebase-database,firebase-storage - Image Loading:
Glide 4.16.0,Picasso 2.71 - Data Tools:
Apache POI 5.4.1(Excel),MPAndroidChart(Graphs)
Click to expand setup instructions
-
Clone the Repository
git clone [https://github.com/Surajkumar5050/final_year_major_project.git](https://github.com/Surajkumar5050/final_year_major_project.git)
-
Firebase Configuration
- Create a new project on Firebase Console.
- Enable Authentication (Email/Password).
- Enable Realtime Database and Storage.
- Download
google-services.jsonand place it in theapp/directory.
-
Build Project
- Open Android Studio.
- Go to
File > Sync Project with Gradle Files. - Ensure JDK 11 is selected.
-
Run
- Connect device/emulator (MinSDK 26+ required).
- Click Run (Shift+F10).
Suraj Kumar Sahoo














