Skip to content

ComposeTemplate Wiki

This wiki documents the current source, build logic, generator, and CI contract of ComposeTemplate. ComposeTemplate is a CI-proven Jetpack Compose project generator; the application in this repository is the living fixture used to prove generated consumers.

Pages

# Page What it covers
00 Project Context Product model, enforced opinions, scale, and scope
01 Module Topology and Build System 47 modules, 21 convention plugins, discovery, boundaries, toolchain
02 Navigation and UI State Navigation3 back stack, registry, observers, generated start flows
03 Network and Auth Token Flow Transport, auth, token refresh, and strategy selection
04 Secrets, Security and Hardening Optional NDK/JNI obfuscation and Gradle guardrails
05 Generator and Scaffolding Tooling Four data strategies, projection, residue checks, feature scaffolding
06 Quality, Tests and CI Local gates, five job definitions, eight checks, generation matrix
07 Risks, Gaps and Open Questions Current limitations and recommended next work
08 Getting Started Generation, verification, scaffolding, and release checklist

Recommended order: read 00 for the mental model, 01–06 for subsystem contracts, 07 before architectural changes, and 08 when generating a consumer.

Current source snapshot

Aspect Value
Repository mustafayigitt/ComposeTemplate
Base package com.ytapps.composetemplate
License Apache-2.0
Gradle modules 47
Android library modules 44
Convention plugins 21
Data strategies remote, offline-first, local, minimal
minSdk / targetSdk / compileSdk 26 / 36 / 37
Kotlin / AGP / KSP 2.0.21 / 9.2.1 / 2.0.21-1.0.28

Generator contract in one paragraph

create-new-app copies consumer files into a sibling project, rebrands package and application names, applies one strict data strategy, optionally retains network-backed secrets/hardening, removes generator-only/template-only content, and rejects forbidden residue. Every retained feature still has data, domain, navigation, and presentation; the strategy changes only project-level infrastructure. CI proves all four generated strategies, debug and release assembly, route projection, residue cleanup, feature scaffolding, and a secret-free remote consumer.

Scope boundary

The generator supplies architecture, build conventions, selected infrastructure, example features, and executable checks. A generated app still needs product-specific domain behavior, backend contracts, branding, release signing, migrations, and runtime/UI tests.

offline-first currently means that network/auth and Room infrastructure coexist. It does not generate synchronization, queues, conflict resolution, cache policy, or background reconciliation.