Skip to content

slateblua/meent

Repository files navigation

Meent

App Flow

graph TD
    Entry(MeentEntry) --> AppHost(App NavHost)
    
    %% Data Layer
    subgraph DataLayer ["Data Layer"]
        FocusRepo(FocusRepo)
        UserPrefs(UserPreferencesRepo)
        DB[(AppDatabase)]
        DS[(DataStore)]
        
        FocusRepo <--> DB
        UserPrefs <--> DS
    end
    
    AppHost ---> Onboarding
    Onboarding -- "Navigate(MAIN_APP_CONTENT)" --> Main
    
    %% ViewModels
    subgraph ViewModels ["ViewModels"]
        WelcomeVM(WelcomeViewModel)
        DashboardVM(DashboardViewModel)
        FocusVM(FocusViewModel)
        ReportsVM(ReportsViewModel)
        PrefsVM(PreferencesViewModel)
    end

    subgraph MainContent ["Main App Content NavHost"]
        direction TB
        Dashboard
        Focus(Focus Limits)
        Reports
        Settings
    end
    
    Main -- start --> Dashboard
    Main --> Focus
    Main --> Reports
    Main --> Settings

    %% ViewModel to View connections
    Onboarding --> WelcomeVM
    Dashboard --> DashboardVM
    Focus --> FocusVM
    Reports --> ReportsVM
    Settings --> PrefsVM
    Entry --> PrefsVM

    %% ViewModel to Data Layer connections
    WelcomeVM --> UserPrefs
    DashboardVM --> FocusRepo
    FocusVM --> FocusRepo
    ReportsVM --> FocusRepo
    PrefsVM --> UserPrefs

    %% Styling
    classDef screen fill:#e1f5fe,stroke:#01579b,stroke-width:2px;
    classDef vm fill:#f3e5f5,stroke:#4a148c,stroke-width:2px;
    classDef data fill:#e8f5e9,stroke:#1b5e20,stroke-width:2px;
    
    class Onboarding,Dashboard,Focus,Reports,Settings screen
    class WelcomeVM,DashboardVM,FocusVM,ReportsVM,PrefsVM vm
    class FocusRepo,UserPrefs,DB,DS data
Loading

About

Productivity app built with Jetpack Compose, Orbit and Koin

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages