Files
Android-app/.gitattributes
wtclaude c920e8805b
Some checks failed
PR Checks / android-build (pull_request) Failing after 5m13s
chore(scaffold): M0 Gradle + Compose + Hilt skeleton with CI
Stand up the Android-app repo per docs/android/PLAN.md M0: a buildable
Kotlin + Jetpack Compose (Material 3) single-activity skeleton wired for
Hilt, ready for the M1-M4 functional pass.

- Gradle 8.7 wrapper; AGP 8.6.1 / Kotlin 2.0.20, JDK 17, minSdk 29, target 35.
- Version catalog (gradle/libs.versions.toml) pins the full planned stack
  (Compose, Hilt, Retrofit/OkHttp + kotlinx.serialization, DataStore,
  security-crypto, Coil, Navigation) so later milestones reference by alias.
- RunicGatewayApp (@HiltAndroidApp) + MainActivity (Compose) + ui/theme/*.
- Strings externalized from day one; adaptive launcher icon; backup rules
  exclude the token store / DataStore (no session material off-device).
- CI: .gitea/workflows/pr-checks.yml gates PRs with lint + test + assembleDebug
  (JDK 17 + Android SDK on the self-hosted runner; debug builds auto-signed,
  no secrets). Placeholder JVM unit test so the test gate runs.
- .gitattributes forces LF on gradlew so the wrapper runs on the Linux runner.

Verified locally: `gradle help`/`projects` configure the :app module and
resolve all six plugins cleanly (full assemble needs the Android SDK, done in CI).

app id: com.runicgateway.app (PLAN.md §13, pending runicgateway.app domain).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-19 12:52:35 -05:00

20 lines
450 B
Plaintext

# SPDX-License-Identifier: GPL-3.0-or-later
# Deterministic line endings across contributor platforms.
# Default: normalize to LF in the repo.
* text=auto eol=lf
# The Gradle wrapper POSIX script MUST stay LF (runs on the Linux CI runner).
gradlew text eol=lf
# Windows batch files must be CRLF.
*.bat text eol=crlf
# Binary assets — never touch line endings.
*.jar binary
*.keystore binary
*.jks binary
*.png binary
*.webp binary
*.ico binary