RIPDPI's own Compose conventions: ViewModel pattern, Route/Screen split, DataStore->StateFlow, RipDpiThemeTokens. Use for how this app does Compose, not generic Compose API questions (see compose).
日本語の概要は準備中です。原文の説明を表示しています。
Add a Gradle dependency or module, or triage a build failure. Use when editing gradle.properties or a build.gradle.kts. Not for plugin internals (convention-plugin-development) or version bumps (dependency-update).
インストールする前に、エージェントに与えられる指示の中身を確認できます。
RIPDPI uses the Gradle version pinned by gradle/wrapper/gradle-wrapper.properties, convention plugins in build-logic/convention/, and the version catalog at gradle/libs.versions.toml. Read those source files before reporting versions; all module build configuration flows through convention plugins.
| Plugin | Purpose |
|---|---|
ripdpi.android.application | App module: compileSdk, minSdk, targetSdk, JDK 17 |
ripdpi.android.library | Library modules: compileSdk, minSdk, JDK 17 |
ripdpi.android.compose | Compose compiler configuration |
ripdpi.android.native | NDK version, ABI filters, legacy packaging |
ripdpi.android.quality | Shared detekt + ktlint + Android lint verification wiring |
ripdpi.android.coverage | Shared JaCoCo coverage wiring |
ripdpi.android.protobuf | Protobuf code generation setup |
ripdpi.android.test | com.android.test modules (:baselineprofile): wires the shared Gradle Managed Device registry |
This table is a working subset for everyday lookups, not the full inventory. Plugin sources: build-logic/convention/src/main/kotlin/ripdpi.android.*.gradle.kts -- for the complete plugin list, helper classes, and how to add a new plugin, read the convention-plugin-development skill.
[versions] in gradle/libs.versions.toml[libraries] with version.refimplementation(libs.your.library)# gradle/libs.versions.toml
[versions]
your-lib = "1.0.0"
[libraries]
your-library = { module = "com.example:library", version.ref = "your-lib" }
Never hardcode versions in build.gradle.kts files.
core/, feature/, etc.)build.gradle.kts applying convention plugin:
plugins {
id("ripdpi.android.library")
}
android { namespace = "com.poyka.ripdpi.your.module" }
include(":your:module") to settings.gradle.ktsid("ripdpi.android.compose")All in gradle.properties:
| Property | Meaning |
|---|---|
ripdpi.compileSdk | Android compile SDK; read the live value before selecting SDK packages or APIs |
ripdpi.minSdk | Minimum supported Android API |
ripdpi.targetSdk | Runtime-behavior target; changes require separate compatibility testing |
ripdpi.nativeNdkVersion | Pinned Android NDK version |
ripdpi.nativeAbis | Full CI/release ABI set |
ripdpi.localNativeAbisDefault | Local ABI policy; host derives the ABI from the workstation architecture |
includeBuild("build-logic") in settings). Changes to convention plugins require re-sync../gradlew staticAnalysis -- it aggregates detekt, ktlint, and Android lint for the quality-enabled Android modules.:core:engine:buildRustNativeLibs runs before preBuild. If native build fails, check NDK installation path, Rust target availability, and the ripdpi.android.rust-native convention plugin under build-logic/convention/.ripdpi.localNativeAbisDefault; when it is host, Apple Silicon resolves to arm64-v8a and Intel hosts resolve to x86_64. Use -Pripdpi.localNativeAbis=x86_64 for emulator-focused iteration.| Mistake | Fix |
|---|---|
| Adding plugin directly to module | Use convention plugin from build-logic/ |
| Hardcoding version in build.gradle.kts | Add to version catalog libs.versions.toml |
| Changing SDK versions in module | Change in gradle.properties, convention plugins read it |
| Missing namespace in new library module | Required: android { namespace = "com.poyka.ripdpi..." } |
convention-plugin-development skill -- full plugin inventory, plugin internals, and how to author a new convention plugin.dependency-update skill -- version-catalog update workflows and cross-ecosystem (Gradle + Cargo) coordination.まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
RIPDPI's own Compose conventions: ViewModel pattern, Route/Screen split, DataStore->StateFlow, RipDpiThemeTokens. Use for how this app does Compose, not generic Compose API questions (see compose).
日本語の概要は準備中です。原文の説明を表示しています。
ADB-based RIPDPI device/emulator debugging: build/install/launch, logcat filtering, fixture port-forwarding, instrumented tests, crash/ANR triage. Use when debugging on a real device or emulator.
日本語の概要は準備中です。原文の説明を表示しています。
RIPDPI Appium launch-contract reference: start routes and permission/service/data presets. Use when a test launches to the wrong screen or a new automation route is added. General flakiness: appium-test-debug.
日本語の概要は準備中です。原文の説明を表示しています。
RIPDPI Appium test authoring: page objects, resource-id locators, assertions, wait tiers. Use when writing a new Appium test or page object, or adding coverage for a new screen.
日本語の概要は準備中です。原文の説明を表示しています。
RIPDPI Appium failure triage: flaky tests, locator/session/wait issues, screenshot and element-tree debugging. Use when an Appium test fails or is flaky.
日本語の概要は準備中です。原文の説明を表示しています。
Add or modify a GitHub Actions job. Use when editing a file under .github/workflows/. Not for running a workflow locally (local-ci-act) or release signing (release-signing).
日本語の概要は準備中です。原文の説明を表示しています。