The app we'll build in this chapter is a simple 'to do' management application. It consists of two screens: the first one contains a list of todos that need to be completed: from here, the user will be able to delete any item on the list by swiping left or right, and add a new todo item or edit an existing one by calling the second screen of the app. The following is a screenshot of the first page of the app:

The second screen of the app is the detail of a single todo: here the user will be able to insert the details of the todo and save them to the sembast database. The fields required for a todo are the name of the todo, its description, priority, and date.
By clicking the Save button, all changes will be persisted; by clicking the 'back' button, the changes will be discarded. The following is a picture of the second screen:

The project...