Port: graduated ventures as orgs (persimmons, phast, phly) + pages model #2

Closed
opened 2026-10-14 05:36:50 +00:00 by teahubxyz · 1 comment
Owner

Graduated ventures become organisations on prod, each an independent client of Teahub: its own repos, members, and a pages convention for its public site/app. Nothing is wholesale-imported; each org starts from what it actually is.

Orgs to create (owner teahubxyz, chai as member where she's interested):

  • persimmons — the one with a product start (credential vault web app). Port: the vault app source as persimmons/app, after reading; the persimmons-vault repo-topic idea as the storage model (a vault = a private repo with a topic). Drop: standalone backend, old nginx bits.
  • phast — concept + landing today. Port: landing page as phast/site; the "generative Prefab in chat → saved HTML app" idea as a README, not code, until a card needs it.
  • phly — name + mascot concept only. Org + README; the Flappy/domain game stays an idea.

Pages model: a repo named site (or pages) in an org is the org's public site, built and shipped by Time on GitHub (the org's GitHub mirror) or by a Gitea Action → Cloudflare Pages. Decide in docs/decisions.md before the first one ships; Cloudflare Pages is the boring default.

DONE: three orgs exist with READMEs, persimmons/app has the ported app with a receipt in docs/rebuild.md, pages model decided and one org site live. Send to @review.

Graduated ventures become **organisations** on prod, each an independent client of Teahub: its own repos, members, and a `pages` convention for its public site/app. Nothing is wholesale-imported; each org starts from what it actually is. Orgs to create (owner teahubxyz, chai as member where she's interested): - `persimmons` — the one with a product start (credential vault web app). Port: the vault app source as `persimmons/app`, after reading; the `persimmons-vault` repo-topic idea as the storage model (a vault = a private repo with a topic). Drop: standalone backend, old nginx bits. - `phast` — concept + landing today. Port: landing page as `phast/site`; the "generative Prefab in chat → saved HTML app" idea as a README, not code, until a card needs it. - `phly` — name + mascot concept only. Org + README; the Flappy/domain game stays an idea. Pages model: a repo named `site` (or `pages`) in an org is the org's public site, built and shipped by Time on GitHub (the org's GitHub mirror) or by a Gitea Action → Cloudflare Pages. Decide in docs/decisions.md before the first one ships; Cloudflare Pages is the boring default. DONE: three orgs exist with READMEs, persimmons/app has the ported app with a receipt in docs/rebuild.md, pages model decided and one org site live. Send to @review.
Author
Owner

Settled (docs/decisions.md 2026-10-14): <org>/site is served at the org's domain by green-tea-pages — a stdlib static host on Fly, one shallow clone per site, re-pulled on a push webhook or every 5 min. No tokens. Code in pages/.

Live now: persimmons.app → persimmons/site, phast.app → phast/site (certs issued, DNS off the dead edge, webhooks on both repos). Adding a site is documented in pages/README.md.

Orgs filled: persimmons/app (+ vendored human_vault), persimmons/extension, phast/app (+ acp). Runtime seams filed on the orgs' own repos. Closing.

Settled (docs/decisions.md 2026-10-14): **`<org>/site` is served at the org's domain by `green-tea-pages`** — a stdlib static host on Fly, one shallow clone per site, re-pulled on a push webhook or every 5 min. No tokens. Code in `pages/`. Live now: persimmons.app → `persimmons/site`, phast.app → `phast/site` (certs issued, DNS off the dead edge, webhooks on both repos). Adding a site is documented in `pages/README.md`. Orgs filled: `persimmons/app` (+ vendored human_vault), `persimmons/extension`, `phast/app` (+ acp). Runtime seams filed on the orgs' own repos. Closing.
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: teahubxyz/teahub#2