# NikoGPT for Android Open-source Android client for the NikoGPT web chat ([chat.n1ko.dev](https://chat.n1ko.dev)) — a thin, auditable WebView shell around the same web interface that runs in the browser. No analytics, no trackers, no third-party SDKs: the whole app is one activity and a handful of resources. - **Android 10+** (`minSdk 29`), targets Android 15. - **Everything the web app can do**: conversations, attachments (system file picker), images, generated files, settings, themes. - Downloads go through Android's `DownloadManager` (with your session cookies), links to other sites open in the system browser. - **Open in the browser only**: `chat.n1ko.dev` loads inside; anything else leaves the app. - TLS errors are never bypassed, no cleartext traffic, no backup. - Day/night theme follows the system; the page keeps its own theme setting. - Back gesture navigates the chat history, pull-to-refresh reloads. ## Install Download the APK from the releases page: **https://git.n1ko.dev/Niko/nikogpt_android/releases** Latest build: https://git.n1ko.dev/Niko/nikogpt_android/releases/download/v1.0.0/nikogpt-android-1.0.0.apk Open the APK on the phone (allow installing apps from this source when Android asks). The APK is debug-signed for now, so Android may show a warning. ## Build Requirements: JDK 17, Android SDK (platform 35, build-tools 35.0.0). ```bash ./gradlew assembleDebug # app/build/outputs/apk/debug/app-debug.apk ./gradlew assembleRelease # unsigned; sign it yourself ``` Or just open the project in Android Studio. ### Release signing Create a keystore and export it as Gradle properties or use `apksigner` on the release output: ```bash keytool -genkeypair -v -keystore nikogpt.jks -alias nikogpt \ -keyalg RSA -keysize 2048 -validity 10000 apksigner sign --ks nikogpt.jks --out nikogpt-release.apk \ app/build/outputs/apk/release/app-release-unsigned.apk ``` ## Structure | Path | Purpose | |---|---| | `app/src/main/java/dev/n1ko/nikogpt/MainActivity.kt` | the whole app: WebView setup, file chooser, downloads, back handling | | `app/src/main/res/layout/activity_main.xml` | WebView + progress bar + retry screen | | `.forgejo/workflows/build.yml` | CI: builds the APK on tags | ## License MIT — see [LICENSE](LICENSE). The Tabler-based icons used by the web chat come from [f.n1ko.dev/assets/ui](https://f.n1ko.dev/assets/ui) (MIT).