Todo App Project
Android Task Manager — Mobile Computing Assignment · Universitas Muhammadiyah Surakarta
flagProject Goal
An Android task manager app built with React Native and Expo as a university Mobile Computing assignment at Universitas Muhammadiyah Surakarta (UMS). Developed collaboratively by a 2-person team using GitFlow — with dedicated feature branches, pull requests, and mandatory peer code reviews before every merge.
- check_circleProfessional Git & GitHub workflow with SSH authentication
- check_circleStructured branching strategy (GitFlow) across the full project lifecycle
- check_circleBuild and run an Android app using React Native — tested on a real physical device
- check_circleDistributed via EAS Build + Development Build — not Expo Go. APK available for download.
photo_libraryScreenshots
Running on a real Android device.






featured_play_listFeatures
Task Management
Add, complete, and delete tasks. Completed items automatically sink to the bottom of the list so focus stays on what is still pending.
Calendar & Due Dates
Assign due dates via a date picker and view tasks on a monthly calendar grid. Overdue items are highlighted in red for immediate visibility.
Local Persistence
All tasks are saved to the device using AsyncStorage. Data survives app restarts with no backend or internet connection required.
Dark Mode
The UI automatically follows the system light/dark mode setting, with a manual override toggle available in the Settings screen.
buildTech Stack
- smartphoneReact Native & Expo — Core framework and Android build tooling (SDK 54)
- javascriptTypeScript — Type safety across the entire codebase
- routeExpo Router — File-based navigation system
- databaseAsyncStorage — Local on-device data persistence
- developer_boardEAS (Expo Application Services) — Build pipeline and APK distribution
account_treeArchitecture
The project follows GitFlow with a main branch, develop integration branch, and 5 dedicated feature branches. Every change enters via Pull Request and requires a review approval from another team member before it can be merged.
8 Pull Requests merged in total — more than double the 3 PR minimum required by the assignment. Additional PRs covered calendar logic, settings integration, and conflict resolution between branches.
groupContributions
Commit history from the project Git log, grouped by author and role.