/TodoisterApp

Mobile application that manages the list of "to do" tasks stored in local database // UdemyChallenge

Primary LanguageJava

Todoister App

What is this project about?

This application comes with help for people who has problem with remembering tasks or for people who wants to delegate their job somewhere. To have their minds free. By this app user has an access to the list of tasks that he wants to do.

When he will feel the need to add a new task he could simply click the button, fill the necessary sections and add to his list a new task with priority (low, medium, high) and finish time. By clicking on single task user can edit/update its information. Moreover, if something is wrong or user decides about removal of one or few tasks it is possible to do it by one click on the trash button.

How the design looks like?

Panel with a list of tasks to do:
       

Adding a new task or editing existing task panel:
   

What technologies was used?

To implement that project Android and Java language was used. The program uses one bottom sheet Fragment hosted by one Activity. The rows of the list are generated by RecyclerView which takes the tasks from MainActivity which in turn has information about them by observing the data in the ROOM database.
This posibility is provided by using MVVM Architecture with LiveData which observe data changes in the database. Besides that, MVVM architecture helps to separate the application logic from the user interface.

In this project TypeConverter provided by Room Database has to be used to convert date type to the long type - in which dates in ROOM are stored. Similar to this, conversion of task's priority (which is saves as ENUM) happens.

Who is the author?

👨‍💻 Implemented by: Wojciech Kula
📚 Based on the Udemy course by: Paulo Dichone