Androidbooster architecture
Skill huhx0015/AndroidBooster/claude/skills/androidbooster-architecture
Android Booster: An Android starter project that provides a modular foundation for building production-ready apps. It offers multiple architecture patterns (MVI, MVVM, MVP, VIPER) with shared base classes, so you can choose the approach that fits each feature.
npx -y skills add huhx0015/AndroidBooster --skill androidbooster-architectureAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Defines architecture patterns for AndroidBooster. Use when implementing MVI, MVVM, VIPER, MVP, or base UI components. Use when creating activities, fragments, ViewModels, or structuring feature modules.
SKILL.md
3.2 KB, as published. Nobody here has run it
AndroidBooster Architecture
Use the architecture base classes from core/architecture/src/main/kotlin/com/huhx0015/androidbooster/architecture/ when building features.
Base Classes (Always Use)
Extend these for all activities, fragments, and ViewModels:
| Class | Path | Usage |
|---|---|---|
BaseActivity | architecture/base/BaseActivity.kt | Extend AppCompatActivity; includes Hilt @AndroidEntryPoint, CompositeDisposable |
BaseFragment | architecture/base/BaseFragment.kt | Extend Fragment; includes Hilt @AndroidEntryPoint |
BaseViewModel | architecture/base/BaseViewModel.kt | Extend AndroidViewModel; includes DataBinding Observable, CompositeDisposable, lifecycle callbacks |
MVI Architecture
Use architecture/mvi/ when implementing Model-View-Intent:
| Class | Purpose |
|---|---|
BaseContract | Defines View : BaseView |
BaseView | initView(), observe() |
BaseViewModel<S, I, E> | state: StateFlow<S>, events: Flow<E>, sendIntent(I) |
BaseState | State object observed by View via StateFlow |
BaseIntent | Intents sent from View → ViewModel |
BaseEvent | Events sent from ViewModel → View |
Flow: View sends intents via sendIntent() → ViewModel processes in processIntent() → ViewModel updates state and emits events → View observes state and handles events.
For Compose-first MVI Activity screens (for example, setContent, ComposeDataScreen, snackbar handling from BaseEvent), also apply androidbooster-ui-compose.
MVVM Architecture
Use architecture/mvvm/ when implementing Model-View-ViewModel:
| Class | Purpose |
|---|---|
BaseContract | Defines View : BaseView, ViewModel : BaseViewModel<View> |
BaseView | initView() |
BaseViewModel<V> | ViewModel bound to View |
MVP Architecture
Use architecture/mvp/ when implementing Model-View-Presenter:
| Class | Purpose |
|---|---|
BaseContract | Defines View : BaseView<Presenter>, Presenter : BasePresenter, Repository |
BaseView<P> | View with presenter reference |
BasePresenter | Presenter interface |
Reference: https://www.codeproject.com/Articles/1098822/Learn-Android-MVP-Pattern-By-Example
VIPER Architecture
Use architecture/viper/ when implementing VIPER:
| Class | Purpose |
|---|---|
BaseContract | Defines View, Interactor, InteractorOutput, Presenter, Entity, Router |
Reference: https://cheesecakelabs.com/blog/using-viper-architecture-android/
Event Bus
Use architecture/event/RxBus.kt for cross-component event communication.
Dependency Injection
Hilt modules in architecture/modules/:
ActivityModule,FragmentModule,ViewModelModule,RxBusModule
UI Components
ApiRecyclerViewModel(extendsBaseViewModel) for list screens with error/progress visibilityApiRecyclerViewActivity,ApiRecyclerViewFragmentfor API-backed RecyclerView screens