Tux
✦ Pro @tuxnotfoundcurrently: relaunching Openstage in public. indie dev. ships things. moves on.
Rebirth begins 🚀
This week I went back to Story Time by adding a export to pdf feature. Also a lot of work on synchronising private github repos on Openstage. Fun fun!
x.com/tux404/status/2100961113177194875?s=20fix bug with private repos
github.com/tuxnotfound/openstage/commit/b22ea9deea2cb442cc30eb81c865c17341811d72refresh dashboard after sync
github.com/tuxnotfound/openstage/commit/99e33f25ee7e21f86bb9219a6b6919047c73eeadfix git sync job
github.com/tuxnotfound/openstage/commit/b85941b666122d660371239507a1336742f62d1cAdds export to pdf feature
Attribute signups from the X bio link with ref=bio
github.com/tuxnotfound/openstage/commit/2d13e577c69d61c622106a6451f5820dea533ba5Sync every repo the user can push to, not only owned ones; show shared repos on admin
github.com/tuxnotfound/openstage/commit/904d0c08839e696449a7cc4efe5de43c81223039Dashboard: search, type filter and paging so old entries are findable
github.com/tuxnotfound/openstage/commit/0fba369f8c7e527fbc0cfa05f50a10db3d28dbaaLanding: real profile above the fold, cap the feed, CTA before it
github.com/tuxnotfound/openstage/commit/516748fedf4c3917d3d12c3c83388fc6500c93d1Remove tinyurl call from the dashboard render loop; its cache key never repeated
github.com/tuxnotfound/openstage/commit/6cca8c64e7c24d2f27af2e8a90ff1c599d8cb237Fix non-terminating sync pagination; share one repo-row partial; even nav weight
github.com/tuxnotfound/openstage/commit/736a2836ffa41cb37f32f808ce7d599876232015Let users publish private-repo commits by opting in; keep excluded as the default
github.com/tuxnotfound/openstage/commit/34a722f22ad4341418d72d65b2dac893653f2878Harden C10: allowlist sweep, reach excluded repos, block re-publishing paths
github.com/tuxnotfound/openstage/commit/ea4dcf5a4fe8a5f695344e85574686c8f4f8faddC10: stop publishing private-repo work and drop the repo OAuth scope
github.com/tuxnotfound/openstage/commit/2bfedb8a1f3b1e8219429a80d3a536dec09858c8Add owner test-email button and mail_configured to the deploy check
github.com/tuxnotfound/openstage/commit/a1945a51ba51f25cd9674bb2105a4d368bdc23e9Wire mailer delivery behind RESEND_API_KEY; send payment failures to the captured email
github.com/tuxnotfound/openstage/commit/2dd230c1a65d53c9ddf7c03be2d0c990907fc944Phase B: admin metrics page, signup attribution, email capture, public feed
github.com/tuxnotfound/openstage/commit/cd254a65e71636cf0f632b1abeda6f0fc51fccc1Report unsafe stored URLs and owner-uid status on the deploy check page
github.com/tuxnotfound/openstage/commit/13634566702e50f373e6b69870ed15430a5dea07This week's build log: 5 commits in openstage.
This week's build log: 5 commits in openstage. - Rebirth begins 🚀
Add Recap to nav; block javascript: URLs in profile website and entry links
github.com/tuxnotfound/openstage/commit/7107396c4032e36962cfbe93b6e0d07bd4763012Reserve recap and _deploy_check as usernames so they cannot shadow routes
github.com/tuxnotfound/openstage/commit/e7cc80637e3d397da323a963c5c5597fd8c79d7dAdd owner-only /recap picker page and fix RecapDraft on database entries
github.com/tuxnotfound/openstage/commit/cf9ca0b05cc2eb9afb467d726dd56183f21501e6Recap picker: dedupe forked commits, detect merges structurally, stable numbering, honest window
github.com/tuxnotfound/openstage/commit/66b3528c936619c450dfa8dcce984b285eb0e7b6Recap drafts target 280 chars so one draft posts to both X and Bluesky
github.com/tuxnotfound/openstage/commit/91002869e9f0479f8de90d8a62b93f59a708994cRebirth begins 🚀