A React Native application to track and manage attendance efficiently. The app allows users to mark attendance, view attendance records, and analyze trends. Built with React Native, it ensures a smooth and responsive experience across both Android and iOS platforms.
Designed on Figma (link)
-
📊 Track Attendance: Easily mark attendance for different classes or events.
-
🤖 AI Scheduling: Generate your time table instantly and optimize your schedule.
-
📆 Timetable Management: Create, edit, and manage class or event timetables effortlessly.
-
🔔 Reminders & Alerts: Set alerts to remind you of low attendance.
-
☁️ Cloud Sync (Optional): Sync data across multiple devices.
![]() |
![]() |
![]() |
---|---|---|
![]() |
![]() |
![]() |
Ensure you have the following installed:
- Node.js (Latest LTS recommended) - Download
- React Native CLI or Expo CLI
- Android Studio (For Android emulator) / Xcode (For iOS development)
git clone https://github.com/yourusername/attendance-manager.git
cd attendance-manager
npm install
# or
yarn install
- For Android:
npx react-native run-android
- For iOS (Mac users only):
npx react-native run-ios
- If using Expo:
npx expo start
- Go to Firebase Console.
- Click "Add project", enter a project name, and follow the setup steps.
- Once created, go to Project Settings and note down:
- Project Number
- Project ID
- Storage Bucket
- In Firebase Console, go to Project Settings > General.
- Under Your apps, click Add App and select Android.
- Enter your package name (e.g.,
com.yourappname
). - Follow the steps and download the
google-services.json
file.
- In Firebase Console, go to Project Settings > Service Accounts.
- Set up authentication via OAuth 2.0.
- Obtain API keys and OAuth client IDs.
- Replace placeholders in
google-services.json
with actual values.
- Place
google-services.json
inside your React Native project'sandroid/app/
directory. - Open
android/build.gradle
and add:dependencies { classpath("com.google.gms:google-services:4.3.10") // Make sure it's the latest version }
- React Native - Frontend framework
- Redux - State management
- AsyncStorage / Firebase - Data persistence
- React Navigation - Seamless app navigation
- For more, refer to labels in repo's description.
-
Fork the repository.
-
Select or create an issue to work on.
-
Create a branch in your fork:
git checkout -b feature/#<issue_number>
-
Write meaningful commit messages:
git commit -m "feat: add AI scheduling option (fixes #42)"
Types:
feat
,fix
,docs
,style
,refactor
,test
,chore
-
Work on a single issue per PR.
-
Push and create a PR
This project is licensed under the MIT License.
For issues or suggestions, create a GitHub issue or contact me at [[email protected]].