📈 GH Trending Explorer 🎲 Surprise me

← all repos

MostafaXS1 / artcraft-android

git clone https://github.com/MostafaXS1/artcraft-android.git

—

—
stars, 24h
+324
stars, 7 days · #180
+324
stars, 30 days · #815
324
★ total · +324% this week
30
forks · 7 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageShell
LicenseMIT
Created2026-10-15 (5d ago)
Last pushtoday
Watchers7
OwnerUser

Links

README excerpt
# ArtCraft Android Builder
## Go to Releases to download the apps.
Build locally signed, 64-bit ARM (arm64) Android APKs from the official Storytold repositories for the ArtCraft apps.
The builder provides a repeatable path from an existing app repository to an installable Android package. It includes release and debug builds, optional app metadata overrides, a shared file-association registry, and persistent app-specific adapters for projects that need more than the generic launcher.
Project links: ArtCraft · The Crafting Apps
## Quick start
Run the scripts from any directory. Each script resolves its own location and switches to the project directory before building.
 [code] 
Replace `-pdfcraft` with any supported app name.
## Supported apps
 [code] 
App names are passed as command-line flags, such as `-photocraft` or `-vectorcraft`.
## Options
| Option | Description |
| --- | --- |
| `-appname= ` | Override the Android display name. By default, the app's built-in title is used. |
| `-packagename= ` | Override the Android package name. By default, the package is `com.artcraft. `. |
| `-appicon= ` | Use a custom launcher icon PNG. By default, the app's own icon is used. |
| `-h`, `--help` | Show command help. |
## Examples
 [code] 
## Build outputs
| Path | Contents |
| --- | --- |
| `output/ - .apk` | Optimized release APK, versioned from the app's own source manifest (e.g. `output/vectorcraft-0.12.0.apk`) |
| `output/ - -debug.apk` | Debug APK |
| `source/ /` | Source checkout and generated GameActivity crate |
| `build/ /target/` | Isolated Cargo build output for the app |
| `logs/` | Build logs for diagnosis |
| `keys/artcraft-builder.jks` | Persistent local signing keystore |
Build output is separated by app so that Cargo artifacts and source changes do not need to be shared between targets.
## Source checkout behavior
The builder is designed to preserve local work. It does not delete an existing source checkout, reset it, or pull over local changes. Subsequent builds reuse the existing checkout and any modifications made to the Android port.
Update app sources deliberately with Git after preserving your changes. Review the diff before switching versions or incorporating upstream changes.
## Build pipeline
Each build compiles the app's Rust code with cargo-ndk into a `jniLibs` tree and packages it with the Gradle Android Plugin (AGP 8.7.3 on the bundled Gradle 8.11.1 wrapper). The launcher runs as a GameActivity — Google's maintained Activity for native apps, whose Java half also hosts the soft keyboard input connection — so the APK's Java side links `androidx.games:games-activity` and AppCompat alongside the platform SDK.
The Gradle project, `AndroidManifest.xml` and the `Theme.AppCompat` theme are regenerated from the app's own Cargo metadata on every build (see `lib/android_project.py`). Signing uses the persistent builder keystore (`keys/artcraft-builder.jks`) through Gradle's signing configs, and `versionCode` follows the same formula