grig-teo:~$
light
Android Developer @ GlavUpDK
Solo-developing a guest-and-vehicle tracking app for events at GlavUpDK (updk.ru). The app is fully offline-first, persists everything on-device via SQLite, and ships through GitVerse with a self-hosted download site. This is the first of several planned mobile projects for the organization, with follow-up products coming on both Android and iOS.
Highlights
- — Offline-first guest & vehicle tracking — on-device SQLite store with full CRUD, multi-column LIKE search (COLLATE NOCASE), pagination, swipe-to-delete, pull-to-refresh and empty/no-results states.
- — XLSX import & export — hand-rolled, zero-dependency .xlsx reader and writer (no Apache POI); upsert-by-full-name imports that preserve entry state across re-imports, plus a versioned template shipped with the app.
- — License-plate OCR scanner — CameraX + Google ML Kit text recognition to find a car by plate and mark it as entered.
- — Build & release automation — Docker-based APK/AAB builder (JDK 17 + Android SDK), per-flavor .env → BuildConfig injection in Gradle Kotlin DSL (dev/staging/prod) and signing-key generation.
- — CI/CD — GitHub Actions runs Espresso instrumented tests on an API 30 emulator and uploads the APK; GitVerse releases with an auto-generated download site (Jekyll / GitVerse Pages).
- — Roadmap — this is the first mobile product for GlavUpDK; additional apps are planned for Android and iOS.
Tech stack
Kotlin, Android SDK (minSdk 24 / targetSdk 34), AndroidX, CameraX, Google ML Kit text recognition, SQLite (SQLiteOpenHelper), RecyclerView + ListAdapter, Gradle Kotlin DSL, product flavors, Docker, GitHub Actions, GitVerse