Skip to content

LoSpiri/appero

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

APPERÓ

Apperó is an app that helps its users annotate tasks they have to do, with a particular focus on letting them do it as fast as possible, providing the possibility to attach various types of content and synchronizing with other applications.

Github Repo

Features

  • Saving content rich tasks
  • Recording audio attachments
  • Setting up notifications
  • Setting up calendar events
  • Soon to be: Adding tasks to Notion databases

Navigation

alt text

The app is composed of 2 main composables, todo_list and add_edit_todo, inflated from MainActivity.kt, using Jetpack Compose way of using the navigation component, meaning without a navigation graph. A NavController is created inside the theme, from there the NavHost inflates the composables and passes them the NavController method they need to navigate, as shown in the image above.

I separated add_todo and edit_todo, although they are actually the same composable, because they are reached using different NavController.navigate strings. Except for this, from both going back to todo_list is done using the NavController.popBackStack method.

MVVM

alt text
(Ignore software design conventions)

Apperó follow the MVVM architecture, using the 2 composables as views, assigning them a viewmodel each and connecting the viewmodels to a database.
To avoid if conditions here and there and instead group all the logic together, it uses events, sent and received through channels placed in the viewmodels and accessed from their respective view to process the event resposnsible for the UI. The possible events are listed in event classes, with a shared one for the UI ones.


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages