The To Do List App is a task management app where you can create to-do notes and track your functionality.
The To-Do List app offers the following features:
- convenient to-do management,
- location-based real-time weather updates,
- and task tracking.
minSdk = 27, targetSdk = 36. The To Do List app supports platform 8.1 (Oreo) and above.
- Clean Architecture
- Multi-module project
- MVVM
- Hilt
- Room
- Google Mobile Services (GMS) Location API
- Retrofit + JSON
- Coroutines + Suspend functions + Flow + Scopes + Dispatchers
- ViewModel + LiveData
- Fragment Manager + Nested Fragments
- ViewBinding
- Constraint + Linear Layout + Material Design 3 + Guidlines
- Popup menu + Snackbar + AlertDialog Fragment + Progress bar
- Night theme + styles + Landscape view
- Runtime permissions
- RecyclerView + DiffUtil
- Date Picker
- OnBackPressedDispatcher
- SavedInstanceState
The purpose of the To-Do List app is to create to-do notes and track your tasks.
On the calendar, you can move back and forth, select a date, and create a to-do note for that day. When you complete a task, you can mark the note as finished by checking the checkbox next to it. Additionally, you can view all unfinished tasks and mark them as completed, or view all completed tasks and delete them permanently.
Moreover, the app displays today’s weather in the top-right corner of the screen. Knowing the current weather can help you plan your activities for the day, don’t forget to bring an umbrella or use sunscreen. To see the weather, you need to allow the app to access your location.
-
When the app starts for the first time, it shows a permission request for the user's current location.
Android 8.1-11 (API level 21-30) Android 12 (API level 31) or higher
-
To create your first task, write it in the “Today I plan to do” input field and click the Save button.
-
If you decide to delete the note, an alert dialogue is shown. The note will be deleted from the Room database by its ID.
-
If you decide to edit the note, the edit fragment will open, where you can update the note. To save an updated note, choose the Save button; to cancel all changes and return to the previous screen, choose the Cancel button.
-
To choose another date for your to-do tasks, click on the date. A DatePicker dialogue will be shown.
-
If you have finished your planned task, you can mark your note as finished by putting a check mark in the checkbox near the note. In this case, a note will be stroked through.
-
Additionally, you can see a list of all your finished or unfinished tasks, regardless of date. You can delete all finished tasks simultaneously by clicking on the “DELETE FINISHED?” FAB button.
-
If there are no finished tasks, the “No finished tasks” snackbar is shown. If there are no unfinished tasks, “All work is done! No unfinished tasks” snackbar is shown.
- The weather window shows a current location, temperature in Celsius, a description of the current weather condition (rain, sunshine, etc.), and an icon. The weather is loading from Openweathermap.org by using Retrofit. Icons are saved locally in drawables.
















