Skip to content
Sakhawat Hossain edited this page Feb 18, 2025 · 9 revisions

Overview

Compose Drill is an open-source Jetpack Compose project skeleton/template designed for Android developers. It provides a structured foundation to build Compose-based applications efficiently, integrating modern Android development best practices. This also ensures all the bets practices recommended by Google.

Features

πŸ—οΈ MVVM Architecture

Implements Model-View-ViewModel (MVVM) to separate concerns and improve maintainability. Uses ViewModel to manage UI-related data in a lifecycle-conscious way.

πŸ—οΈ Dependency Injection with Koin

Utilizes Koin, a lightweight DI framework, for easy and modular dependency management. Supports scoped dependencies and lazy injection.

πŸ” Authentication Flow

Provides a structured authentication journey. Supports API-based authentication and future extensibility for third-party logins.

πŸš€ Navigation Component

Added Jetpack Navigation Component for seamless screen transitions. Supports argument passing and deep linking.

🎨 UI Components

A collection of reusable Composable UI components, including:

  • Dialogs & Bottom Sheets – Fully customizable with animation support.
  • Layouts – Standardized design patterns for efficient UI structuring.
  • Buttons & TextFields – Styled according to Material 3 guidelines.
  • Typography & Theming – Ensures consistent branding across the app.

πŸ’Ύ State Management

Implements state hoisting for predictable UI behavior. Supports persistent state handling to retain UI state across configuration changes.

πŸ“‚ Project Structure

πŸ“‚ compose-drill 
┣ πŸ“‚ data
┣ πŸ“‚ di
┣ πŸ“‚ domain
┣ πŸ“‚ navigation
┣ πŸ“‚ ui
┣ πŸ“‚ utils
β”— StarterApp

Clone this wiki locally