📖
AppKickstarter docs
  • Get Started
    • Get started
    • Initialize third parties
    • Project organization
    • Application initialization
  • Tech things
    • Multi modules Architecture
    • Dependency injection
    • Library management
    • Secrets and Build Config
    • Backend as an implementation detail
  • Tutorials
    • Add a login page
    • Add a screen with tab bars
    • Add a settings screen
    • Display an In-App Changelog for a new published version
    • Update localizations
    • Update theme
    • Customize onboarding
    • Setup your paywall
    • Setup your first notifications
    • Format dates and save on database
    • Using a Different Backend Instead of Firebase
    • Make an infinite list with pagination
  • Features
    • Onboarding
    • Authentication
    • Firebase support
    • Offline support
    • Monetization
    • Whats new feature
    • Navigation in AppKickstarter
    • Theme
    • UI Kit
    • Dates management
    • Platform specific
    • Offline cache
    • Translations
    • Analytics
    • User management
    • Logger
    • Platform utilities
    • Maps and locations
    • Secured AI Backend Proxy
    • Settings
    • Application monitoring
    • Notifications
  • UI Kit
    • Adaptive
    • Advanced Components
    • Animated Components
    • Badges
    • Buttons
    • Cards
    • Containers
    • Dialogs
    • EmptyStates
    • Icons
    • Images
    • Lists
    • Modals
    • Tabs
    • Texts
    • Text fields
    • Toasts
    • Toggles
  • Other
    • Known issues
Powered by GitBook
On this page

Was this helpful?

  1. Tech things

Dependency injection

There are 2 main packages in AppKickstarter. One is template with the base of the template and one is app.

In app there is a appModule.kt file where there is a demo with a simple app that creates posts and list them on a paginated list. The screen models, datasources and use cases are defined in this appModule . You would want to override this, clear all the appModule and create your own unique application.

val appModule = module {
    factoryOf(::AddPostScreenModel)
    factoryOf(::PostsListScreenModel) 
    singleOf(::AddPost)
    singleOf(::PostsFirestore)
    singleOf(::SavePostPicture)
}

PreviousMulti modules ArchitectureNextLibrary management

Last updated 1 year ago

Was this helpful?