mirror of
https://github.com/priyanshujain/bertsatlas.git
synced 2026-10-02 19:06:59 +00:00
bootstrap android and ios apps
This commit is contained in:
1 parent
339db54e8f
commit
bad6bce051
28 files changed
+1136
-1
No files matched your search
@@ -0,0 +1,33 @@
|
||||
# Bert's Atlas
|
||||
|
||||
Bert's Atlas is an offline geography trivia game for Android and iOS. Product behavior and acceptance criteria live in `spec.md`; engineering principles live in `principles.md`.
|
||||
|
||||
## Project layout
|
||||
|
||||
- `domain`: pure multiplatform quiz and progression rules
|
||||
- `composeApp`: shared Compose UI and platform-neutral application code
|
||||
- `androidApp`: thin Android launcher required by Android Gradle Plugin 9
|
||||
- `catalogTool`: JVM catalog validator and human-review report generator
|
||||
- `iosApp`: thin Xcode host for the shared Compose framework
|
||||
|
||||
The extra Android launcher is deliberate. AGP 9 does not support combining `com.android.application` and Kotlin Multiplatform in one module, so the three substantive modules remain separate from both thin platform hosts.
|
||||
|
||||
## Toolchain
|
||||
|
||||
Builds use JDK 21 and the checked-in Gradle wrapper. Compose Multiplatform 1.12 requires Android compile SDK 37; target SDK remains 36 and minimum SDK is 26.
|
||||
|
||||
```sh
|
||||
export JAVA_HOME=/opt/homebrew/opt/openjdk@21/libexec/openjdk.jdk/Contents/Home
|
||||
./gradlew :androidApp:assembleDebug
|
||||
./gradlew :composeApp:linkDebugFrameworkIosSimulatorArm64
|
||||
./gradlew :catalogTool:run
|
||||
```
|
||||
|
||||
Generate the Xcode project after changing `iosApp/project.yml`:
|
||||
|
||||
```sh
|
||||
cd iosApp
|
||||
xcodegen generate
|
||||
```
|
||||
|
||||
No automated test sources or test dependencies are part of V1. Verification is manual and release catalog validation is performed by `catalogTool`.
|
||||
Reference in new issue
Block a user