finds.dev

SimonMarquis/InternalAppStore

📦 Manage your own internal Android App Store.

View on GitHubHomepage ↗

★ 542KotlinApache-2.0updated Sep 2024

// the take

A self-hosted internal app store for distributing Android APKs to testers, pairing a Kotlin Android client with a Firebase backend (Realtime Database, Storage, Auth, Functions, FCM) plus a web admin console. It's for small teams or solo developers who want an App Center/HockeyApp-style beta distribution tool they run themselves on Firebase, not for anyone managing a large multi-platform release pipeline.

Runs entirely on Firebase's managed services, so there's no backend to operate - auth, file storage, push notifications and the admin web console are already handled for you. The feature set matches what teams actually need for internal distribution: per-version changelogs with HTML support, silent vs. forced update flags, and per-version download/install analytics. Write access is enforced at the data layer via Firebase security rules checking admin UIDs, not just trusted on the client, so a modified APK can't fake admin access.

Built on Firebase Realtime Database rather than Firestore, which limits querying and indexing as the number of apps and versions grows. Android only - teams distributing to iOS testers need a second tool regardless. Setup is entirely manual: editing applicationId, security rules files and config constants by hand, then deploying through the Firebase CLI with no Terraform or other infrastructure-as-code, so standing up a second environment is tedious and easy to get subtly wrong. Test coverage is a single unit test for SemVer parsing, and the last push was over a year ago with one maintainer, so there's no real signal the project still tracks Firebase SDK or rules changes.

We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →

// at a glance

Stars
542
Forks
74
Language
Kotlin
License
Apache-2.0
Last commit
28 Sep 2024

// nearby

If InternalAppStore isn't quite it.

All repos →