feat(start): show paying Patreon supporters on the Start page

Add a right-hand rail on the Start page listing active paying patrons
(name + pledge amount, highest first) with a "Support on Patreon" button.
The list is fetched once at boot from the Patreon API in the background;
free followers, $0 tiers, declined and former patrons are excluded.

The creator access token is read at build time from OCS_PATREON_TOKEN
(option_env!), so it never lives in source or git — the release workflow
passes it from a repo secret, and build.rs re-bakes when it changes.
Without a token the rail just shows the support button.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Hakan Seven 2026-07-02 01:00:22 +03:00
commit 608fe5ec3e
8 changed files with 208 additions and 3 deletions

View file

@ -7,6 +7,12 @@
use std::path::Path;
fn main() {
// The Patreon token is baked in at compile time via `option_env!` in
// src/patreon.rs. `option_env!` is not tracked by Cargo, so without this a
// token change wouldn't trigger a rebuild — declare the dependency so an
// updated OCS_PATREON_TOKEN re-bakes the binary. (#229-adjacent)
println!("cargo:rerun-if-env-changed=OCS_PATREON_TOKEN");
// Windows: embed AppIcon.ico into the .exe so the executable carries its
// own icon (Explorer, taskbar, Start-menu tile, file associations). The
// .ico is produced from assets/logo.svg by the release workflow before the