How I built GitHub Store to 12,500 stars in 6 months — I started at 16 — GitHub Store

Six months ago I was a 16-year-old living in Uzbekistan and trying to ship a small Android app I’d built. The Play Store process was too burdensome for the project to be worth it, I created an alternative instead.

Six months later that alternative – the GitHub Store – has 12,500+ stars, has provided 250,000+ updates, is available in 13 languages, runs on Android + Windows + macOS + Linux. I turned 17 a few weeks ago.

Oh! That is the matter. This includes the part where I almost left off.

play console wall

I had previously sent apps to the Play Store. They felt it was worth it – real apps, real users, friction was the cost of doing business.

This time was different. I was working on Philipp Lackner’s Mobile Dev Campus Challenge. Created a little side project that I was proud of. Wanted to publish it. Read the Play Console requirements again and stop now.

$25 fee. Government ID. Address verification. 20 closed testers. 2-week minimum closed trial. wait. Maybe it’s acceptable.

One month of process. For a side project. Mathematics was not there.

GitHub already lets developers publish APKs in releases. So I thought: build a store on top of it.

That was a gap project.

what i didn’t know

Honest confession: When I started, I didn’t know F-Droid or Obtanium existed. People told me about them later – after I sent them. If I had known on day one, I probably wouldn’t have created a GitHub store at all. I would just install Obtanium and move on.

Sometimes ignorance is a virtue.

Why Kotlin Multiplatform

Native Android dev for about two years before that. Kotlin was my language. Compose was my UI toolkit.

Flutter would mean Dart + new build system + new debugger. I didn’t know that React Native meant JavaScript. I didn’t know that Tauri meant war.

KMP allowed me to bring two years of Android straight to the desktop without changing the language, IDE, or mental models. I chose it because I could ship fast.

1-week MVP, no coding agent

The first version of the GitHub Store shipped within a single week.

Complete focus. out of school. Left studies. Some nights I could hardly sleep.

Zero coding agent. No cursor, no copilot, no cloud code. Just IntelliJ, Compose Multiplatform docs, Ktor docs, and my hands.

What was sent:

  • GitHub releases search via public API
  • Asset Filter – APK & Desktop Installer, Hide Noise
  • Tap-to-install on Android via system installer
  • One UI codebase: Android + Windows + macOS + Linux

Unrefined. But real. it worked.

I posted this on LinkedIn even before I technically became an MVP – it was the first real LinkedIn post I ever made. ~100 reactions, 5,000+ impressions, on a profile that basically had nothing on it before. Then I posted in the Kotlin Slack community a few days later.

trajectory

I started on November 21, 2025. Made it private for a week. The repo was made public in late November. November 30 – First Star.

December 15: 100 stars.

January 3: 2,500.

I didn’t really understand what was happening. Growth was slow, then did not happen suddenly. Created a LinkedIn post celebrating each milestone – which got more responses than the launch itself.

Star History Chart Reaches 2,500 Stars from November 2025 to January 2026 – Slow Start, Then Exponential

The biggest amplifier in that window was Howtomain – at almost 2,000 stars, he showed in his GitHub store. Top 12 App Stores Better Than Play Store Video. Their audience is exactly who the app is for: privacy-conscious Android users who already distrust Play. The trajectory looked different after that video.

The inevitable comparison: yes, I know about Obtanium. I get asked “Why not Obtanium?” Every week. Obtanium is a lightweight power-user updater for the repos you already know about. The GitHub Store is the search-first store for people who don’t yet know what to install – and it’s cross-platform. Use Obtanium. Use the GitHub Store. Use both. We built Obtanium import/export so libraries can move between them in one tap.

Valley at 2-3k stars

I have almost cut that part out of this essay.

I went somewhere between about 2-3,000 stars. Keeping one’s head bowed for months. The focus is on the product. People are writing good things. Issues are piling up.

And I started losing the plot.

I’ll open the repo and just keep looking. Why am I doing this? Would anyone use it long term? Is counting stars just a show? Am I spending my life on something that doesn’t matter?

I talked to ChatGPT for hours during that time. One-two hour conversation. Not for code help – for thinking out loud. Friends my age weren’t building products. Because of this doubt no one in my life got the right to connect with it.

What freaked me out wasn’t any insight. These were specific user messages. A Dave DeMing to say that his workflow has changed. A bug report begins “I like this app, but…”. A maintainer boasted of his repo that it was the first time that his project was real. store page. None of them knew that I was not guessing anything. They were simply users using something.

If you’re building something: The valley is real. External success doesn’t make you feel anything; It just sits there. Solid feedback from real users only helps. Make it easy for them to reach you.

What would I tell a 16 year old

Ship first, then know your audience. I didn’t do audience research before sending. The audience showed up – FOSS users who like tinkering, hate ads, hate tracking, want privacy. Knowing that I then started making decisions about every product: open backend, no telemetry, donation rails, no dark patterns. Ship before finishing research. Audiences teach you faster than you realize.

KMP works. Even on desktop. Cross-platform claims are not marketing.

Delivery is a specialty. F-Droid, Obtainium config, Scoop, Wingate, IzzyOnDroid – every channel I added was a product feature. Users who cannot install you do not exist.

Talk to your users. directly. Inside the app. Release notes don’t cut it. Most people don’t read them – I’ve never opened a “What’s New” page on the Play Store in my life. So I created an in-app what’s-new sheet (concise, bullet-format) that pops up after every update, an announcement feed for surveys and security notes, a send feedback A card with a diagnostics preview before you send it and a Discord. The first real survey I did told me what 12,000 stars couldn’t.

Localize quickly. If your app is good and they can read it then people will use it all over the world. The limitations are language and network. The GitHub Store ships in 13 languages ​​and runs through a backend proxy that bypasses the Great Firewall. That’s why Chinese, Russian and Arabic users are here.

The hardest part is not the code. No one warned me about the valley.

what will happen next

There’s more coming. A new design that is much better than what exists today. Better desktop support – possibly with the same auto-update story that Android already has. UX 100x better than now.

Finally a paid category. One principle: The GitHub Store only charges for features that cost us money to run. Storage, bandwidth, compute, monitoring. Anything that runs on your device remains free forever. The backend is open source and self-hosted. A separate essay is coming on why.

If you’ve read this far – give it a try. Star it if it solves something for you. If this does not happen then file a complaint. If you’re a developer whose project ships an APK or desktop installer, claim your Store Page (free, coming soon). And if you’re a teen thinking about shipping a project: just get started. Play Store will wait. The GitHub release is right here.

– Usmon (@rainxchzed)



<a href

Leave a Comment