Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions _includes/head.html
Original file line number Diff line number Diff line change
Expand Up @@ -217,18 +217,18 @@
},
{
"@type": "Question",
"name": "How is GitHub Store different from F-Droid?",
"name": "Which platforms does GitHub Store support?",
"acceptedAnswer": {
"@type": "Answer",
"text": "F-Droid only includes apps in its curated FOSS-only repository. GitHub Store discovers and installs apps directly from GitHub releases — including apps not in F-Droid."
"text": "Android, Windows, macOS, and Linux. The codebase is shared across all four via Kotlin Multiplatform and Compose Multiplatform."
}
},
{
"@type": "Question",
"name": "How is GitHub Store different from Obtainium?",
"name": "How does GitHub Store keep installs current?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Obtainium is a power-user updater for tracked GitHub repos. GitHub Store adds a discovery layer (browse trending, popular, hot releases), an install layer (Shizuku/Dhizuku silent install), and works on Desktop too. You can import your Obtainium library with one tap."
"text": "GitHub Store remembers what you installed and surfaces new releases automatically. On Android you can opt in to silent updates via Shizuku, Sui, or Dhizuku. Auto-update verifies the signing fingerprint matches the originally-installed key before applying any update."
}
},
{
Expand Down
2 changes: 1 addition & 1 deletion _includes/newsletter.html
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
{% if site.buttondown_username and site.buttondown_username != "" %}
{%- assign nl_id = include.id | default: "default" -%}
{%- assign nl_title = include.title | default: "Get the next post" -%}
{%- assign nl_sub = include.subtitle | default: "Roughly one essay every 2 weeks. Founder notes, comparison guides, and major release breakdowns. No spam." -%}
{%- assign nl_sub = include.subtitle | default: "Roughly one essay every 2 weeks. Founder notes, engineering deep-dives, and major release breakdowns. No spam." -%}
{%- assign nl_cta = include.cta | default: "Subscribe" -%}
{%- assign nl_variant = include.variant | default: "card" -%}

Expand Down
6 changes: 3 additions & 3 deletions blog/index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
layout: default
title: Blog
description: Founder essays, comparison guides, tutorials, and engineering deep-dives from the makers of GitHub Store.
description: Founder essays, tutorials, and engineering deep-dives from the makers of GitHub Store.
keywords: github store blog, github store news, github store updates, kotlin multiplatform blog, app store engineering, indie open source
permalink: /blog/
redirect_from:
Expand All @@ -12,7 +12,7 @@ redirect_from:
<div class="page-hero__inner">
<p class="section-header__overline">Blog</p>
<h1 class="page-hero__title">Notes from the build</h1>
<p class="page-hero__subtitle">Founder essays, position posts, comparison guides, and engineering deep-dives from the makers of GitHub Store.</p>
<p class="page-hero__subtitle">Founder essays, position posts, and engineering deep-dives from the makers of GitHub Store.</p>
<div class="page-hero__actions">
<a href="/blog/feed.xml" class="btn btn--tonal">
<svg viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M6.18 15.64a2.18 2.18 0 0 1 2.18 2.18C8.36 19 7.38 20 6.18 20C5 20 4 19 4 17.82a2.18 2.18 0 0 1 2.18-2.18M4 4.44A15.56 15.56 0 0 1 19.56 20h-2.83A12.73 12.73 0 0 0 4 7.27V4.44m0 5.66a9.9 9.9 0 0 1 9.9 9.9h-2.83A7.07 7.07 0 0 0 4 12.93V10.1Z"/></svg>
Expand All @@ -24,7 +24,7 @@ redirect_from:

<section class="news-list container">
<div class="blog-newsletter">
{% include newsletter.html id="blog-hero" title="Get the next post" subtitle="One email every 2 weeks. Founder notes, comparison guides, engineering deep-dives, and major release breakdowns." %}
{% include newsletter.html id="blog-hero" title="Get the next post" subtitle="One email every 2 weeks. Founder notes, engineering deep-dives, and major release breakdowns." %}
</div>

<ul class="news-list__items">
Expand Down
87 changes: 7 additions & 80 deletions index.html
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
layout: default
title_full: GitHub Store — Open-Source App Store for GitHub Releases
description: Free, open-source app store for GitHub releases. F-Droid + Obtainium alternative for Android, Linux, macOS, Windows. Auto-update, silent install, China-friendly mirrors.
keywords: github store, github releases app store, f-droid alternative, obtainium alternative, install android apps from github, open source app store, apk auto update, kotlin multiplatform, compose multiplatform, china mirror
description: Free, open-source app store for GitHub releases. Discover, install, and auto-update apps on Android, Linux, macOS, Windows. Silent install, China-friendly mirrors.
keywords: github store, github releases app store, install android apps from github, open source app store, apk auto update, kotlin multiplatform, compose multiplatform, china mirror
homepage: true
---

Expand Down Expand Up @@ -100,79 +100,6 @@ <h1 class="hero__title">The app store for<br><em>GitHub releases</em></h1>
</div>
</div>

<!-- ═══ Comparison ═══ -->
<section class="comparison container" id="comparison" aria-labelledby="comparison-heading">
<div class="section-header reveal">
<p class="section-header__overline">Comparison</p>
<h2 class="section-header__title" id="comparison-heading">How GitHub Store compares</h2>
<p class="section-header__subtitle">Looking for an <strong>F-Droid alternative</strong>, <strong>Obtainium alternative</strong>, or a way to install Android apps directly from GitHub? GitHub Store turns any GitHub release into a one-tap install across all your devices.</p>
</div>
<div class="comparison__scroller" role="region" aria-label="Feature comparison table">
<table class="comparison__table">
<thead>
<tr>
<th scope="col">Feature</th>
<th scope="col" class="comparison__own">GitHub Store</th>
<th scope="col">Obtainium</th>
<th scope="col">F-Droid</th>
<th scope="col">Aurora Store</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">Open source</th>
<td class="comparison__own"><span class="cmp-yes" aria-label="yes">✓</span> Apache-2.0</td>
<td><span class="cmp-yes" aria-label="yes">✓</span></td>
<td><span class="cmp-yes" aria-label="yes">✓</span></td>
<td><span class="cmp-yes" aria-label="yes">✓</span></td>
</tr>
<tr>
<th scope="row">Cross-platform (Desktop too)</th>
<td class="comparison__own"><span class="cmp-yes" aria-label="yes">✓</span> Win, macOS, Linux, Android</td>
<td><span class="cmp-no" aria-label="no">✕</span> Android only</td>
<td><span class="cmp-no" aria-label="no">✕</span> Android only</td>
<td><span class="cmp-no" aria-label="no">✕</span> Android only</td>
</tr>
<tr>
<th scope="row">Discover new apps</th>
<td class="comparison__own"><span class="cmp-yes" aria-label="yes">✓</span> Trending, popular, hot</td>
<td><span class="cmp-no" aria-label="no">✕</span> Manual repo URL</td>
<td><span class="cmp-yes" aria-label="yes">✓</span> Curated</td>
<td><span class="cmp-yes" aria-label="yes">✓</span> Play Store mirror</td>
</tr>
<tr>
<th scope="row">Silent install (Shizuku/Dhizuku)</th>
<td class="comparison__own"><span class="cmp-yes" aria-label="yes">✓</span></td>
<td><span class="cmp-yes" aria-label="yes">✓</span> Shizuku</td>
<td><span class="cmp-yes" aria-label="yes">✓</span></td>
<td><span class="cmp-no" aria-label="no">✕</span></td>
</tr>
<tr>
<th scope="row">China mirror system</th>
<td class="comparison__own"><span class="cmp-yes" aria-label="yes">✓</span> Multi-source race + SHA-256 verify</td>
<td><span class="cmp-no" aria-label="no">✕</span></td>
<td><span class="cmp-partial" aria-label="partial">~</span> Limited</td>
<td><span class="cmp-partial" aria-label="partial">~</span> Limited</td>
</tr>
<tr>
<th scope="row">Direct GitHub releases</th>
<td class="comparison__own"><span class="cmp-yes" aria-label="yes">✓</span> Native</td>
<td><span class="cmp-yes" aria-label="yes">✓</span> Native</td>
<td><span class="cmp-no" aria-label="no">✕</span> Curated only</td>
<td><span class="cmp-no" aria-label="no">✕</span> Play only</td>
</tr>
<tr>
<th scope="row">Library import from Obtainium</th>
<td class="comparison__own"><span class="cmp-yes" aria-label="yes">✓</span></td>
<td><span class="cmp-na" aria-label="not applicable">—</span></td>
<td><span class="cmp-no" aria-label="no">✕</span></td>
<td><span class="cmp-no" aria-label="no">✕</span></td>
</tr>
</tbody>
</table>
</div>
</section>

<!-- ═══ FAQ ═══ -->
<section class="faq container" id="faq" aria-labelledby="faq-heading">
<div class="section-header reveal">
Expand All @@ -189,12 +116,12 @@ <h2 class="section-header__title" id="faq-heading">Frequently Asked Questions</h
<p>Yes. The app, the source code, and the backend are all open source under Apache 2.0.</p>
</details>
<details class="faq__item">
<summary><h3>How is GitHub Store different from F-Droid?</h3><span class="faq__chev" aria-hidden="true">+</span></summary>
<p>F-Droid only includes apps in its curated FOSS-only repository. GitHub Store discovers and installs apps directly from GitHub releases — including apps not in F-Droid.</p>
<summary><h3>Which platforms does GitHub Store support?</h3><span class="faq__chev" aria-hidden="true">+</span></summary>
<p>Android, Windows, macOS, and Linux. The codebase is shared across all four via Kotlin Multiplatform and Compose Multiplatform.</p>
</details>
<details class="faq__item">
<summary><h3>How is GitHub Store different from Obtainium?</h3><span class="faq__chev" aria-hidden="true">+</span></summary>
<p>Obtainium is a power-user updater for tracked GitHub repos. GitHub Store adds a discovery layer (browse trending, popular, hot releases), an install layer (Shizuku/Dhizuku silent install), and works on Desktop too. You can import your Obtainium library with one tap.</p>
<summary><h3>How does GitHub Store keep installs current?</h3><span class="faq__chev" aria-hidden="true">+</span></summary>
<p>GitHub Store remembers what you installed and surfaces new releases automatically. On Android you can opt in to silent updates via Shizuku, Sui, or Dhizuku. Auto-update verifies the signing fingerprint matches the originally-installed key before applying any update.</p>
</details>
<details class="faq__item">
<summary><h3>Does GitHub Store work in China?</h3><span class="faq__chev" aria-hidden="true">+</span></summary>
Expand Down Expand Up @@ -372,7 +299,7 @@ <h2 class="section-header__title" id="about-heading">About GitHub Store</h2>
<!-- ═══ Newsletter ═══ -->
<section class="newsletter-section container" aria-labelledby="newsletter-heading">
<div class="newsletter-section__inner reveal" id="newsletter-heading">
{% include newsletter.html id="home" title="Stay in the loop" subtitle="Founder essays, comparison guides, and release notes. Roughly one email every 2 weeks. No spam, no tracking, no selling your address." %}
{% include newsletter.html id="home" title="Stay in the loop" subtitle="Founder essays, engineering deep-dives, and release notes. Roughly one email every 2 weeks. No spam, no tracking, no selling your address." %}
</div>
</section>

Expand Down
4 changes: 2 additions & 2 deletions llms.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# GitHub Store

> Free, open-source app store for GitHub releases. Cross-platform (Android, Windows, macOS, Linux). Apache-2.0. Built by Usmon Narzullayev with Kotlin Multiplatform + Compose Multiplatform. F-Droid + Obtainium alternative with discovery, silent install, signing-key verification, and a multi-source mirror system for restricted networks.
> Free, open-source app store for GitHub releases. Cross-platform (Android, Windows, macOS, Linux). Apache-2.0. Built by Usmon Narzullayev with Kotlin Multiplatform + Compose Multiplatform. Discovery, silent install, signing-key verification, and a multi-source mirror system for restricted networks.

## Core pages

- [Homepage](https://github-store.org/): What GitHub Store is, who uses it, comparison vs F-Droid / Obtainium / Aurora Store, FAQ, About panel.
- [Homepage](https://github-store.org/): What GitHub Store is, who uses it, FAQ, About panel.
- [Download](https://github-store.org/download/): Per-platform install methods. Android (APK direct, F-Droid, Obtainium). Windows (EXE, MSI, Scoop, Winget). macOS (DMG arm64/x64, PKG). Linux (AppImage, DEB, RPM, pacman). SHA-256 signing fingerprint for verification.
- [Features](https://github-store.org/features/): Full feature catalog. Discovery, release browser, mirror system, rich details, app management (Library Imports, Obtainium import/export, Shizuku/Sui/Dhizuku silent install), collections, announcements feed, authentication, tweaks, localization (13 languages), network & performance.
- [Press](https://github-store.org/press/): Boilerplate (1-sentence / 1-paragraph / 3-paragraph). Brand assets, color palette, screenshots, founder bio, "Featured in" list, quick facts table, press contact.
Expand Down
4 changes: 2 additions & 2 deletions press/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ <h3>One paragraph</h3>
<h3>Three paragraphs</h3>
<blockquote>
<p>GitHub Store is a free, open-source app store for GitHub releases — built by a single 17-year-old developer, Usmon Narzullayev, in Uzbekistan. It runs on Android, Windows, macOS, and Linux from a shared Kotlin Multiplatform / Compose Multiplatform codebase, and is licensed under Apache-2.0.</p>
<p>The app provides three things GitHub itself does not: a discovery layer (trending, popular, hot releases, with platform-aware ranking), an install layer (one-tap, with optional Shizuku, Sui, or Dhizuku silent install on Android), and a verified update layer (SHA-256 against GitHub's published digests, auto-update blocked on signing-key mismatch). It can also import Obtainium libraries and recognise GitHub-sourced apps already installed on the device.</p>
<p>Unlike F-Droid, GitHub Store does not maintain its own curated repository — it indexes the live GitHub Search API, surfaces only repos that ship installable binaries, and falls back to direct GitHub when the curated index lags. Unlike Obtainium, GitHub Store is cross-platform, has discovery built in, and works on Desktop. Its backend (also Apache-2.0, also self-hostable) runs in the EU, hashes search queries client-side, and stores no IP-linked logs.</p>
<p>The app provides three things GitHub itself does not: a discovery layer (trending, popular, hot releases, with platform-aware ranking), an install layer (one-tap, with optional Shizuku, Sui, or Dhizuku silent install on Android), and a verified update layer (SHA-256 against GitHub's published digests, auto-update blocked on signing-key mismatch).</p>
<p>GitHub Store does not maintain its own curated repository — it indexes the live GitHub Search API, surfaces only repos that ship installable binaries, and falls back to direct GitHub when the curated index lags. Its backend (also Apache-2.0, also self-hostable) runs in the EU, hashes search queries client-side, and stores no IP-linked logs.</p>
</blockquote>
</div>
</div>
Expand Down
6 changes: 3 additions & 3 deletions privacy-policy/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ <h1>Privacy Policy</h1>

<div class="privacy-container">
<div class="info-box">
<strong>Last Updated:</strong> May 8, 2026<br>
<strong>Version:</strong> 2.5<br>
<strong>Last Updated:</strong> May 10, 2026<br>
<strong>Version:</strong> 2.6<br>
<strong>Developer:</strong> Usmon Narzullayev (rainxchzed)<br>
<strong>Contact:</strong> rainxchzed@gmail.com
</div>
Expand Down Expand Up @@ -72,7 +72,7 @@ <h3>Newsletter (website only)</h3>
<ul>
<li><strong>Provider:</strong> <a href="https://buttondown.com/" target="_blank" rel="noopener">Buttondown</a>, an indie privacy-focused email newsletter platform. Subject to <a href="https://buttondown.com/legal/privacy" target="_blank" rel="noopener">Buttondown's Privacy Policy</a>.</li>
<li><strong>What we collect:</strong> Your email address, and the date you subscribed. Nothing else. No tracking pixels in newsletter emails by default.</li>
<li><strong>How we use it:</strong> To send the newsletter — roughly one email every two weeks containing founder essays, comparison guides, tutorials, and major release breakdowns.</li>
<li><strong>How we use it:</strong> To send the newsletter — roughly one email every two weeks containing founder essays, tutorials, and major release breakdowns.</li>
<li><strong>Data sharing:</strong> We do not sell, rent, or share your email with third parties for marketing.</li>
<li><strong>Unsubscribe:</strong> Every email contains a one-click unsubscribe link at the bottom. You can also email <a href="mailto:hello@github-store.org">hello@github-store.org</a> and we will remove you manually.</li>
<li><strong>Storage:</strong> Subscriber addresses are stored on Buttondown servers (US) for as long as you are subscribed. Unsubscribing removes your address from the active list; Buttondown may retain it in their suppression list to prevent re-subscription bugs, per their own retention policy.</li>
Expand Down