Repository navigation
feat(docs): Habitica-styled hosted-plan checkout page - #1
Merged
Merged
Conversation
Static GitHub Pages page (docs/) for the paid hosted plan. A client-side PayPal subscribe flow stamps the subscriber's Habitica User ID into the subscription custom_id, which WardStone decodes to bind the entitlement — the page shares no code with the engine or the billing backend, only the custom_id contract. - index.html: Habitica-authentic design (full purple field, Varela Round headings, task-card sections with centered checkmarks, pixel dividers + footer); scope-honest copy (to-dos + dailies only); free self-host + EUR1/mo hosted; PayPal + card funding; responsive, keyboard focus, reduced-motion, dark. - custom-id.js: browser custom_id encoder, pinned byte-for-byte to WardStone's Python codec by custom-id.golden.json (verify with custom-id.test.mjs). - checkout.md: runbook - config, codec contract, Pages publish, go-live gate. - .nojekyll: serve .js/.mjs/.json verbatim. PayPal client-id/plan-id are sandbox (public, safe to commit). EUR1 is display-only until a EUR1 plan replaces the current $3 sandbox plan. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a static GitHub Pages page (
docs/) for the paid hosted plan — a self-host pitch plus a PayPal subscribe flow.What it does
The page is a pure front-end: PayPal's JS SDK creates the subscription client-side and stamps the subscriber's Habitica User ID into the subscription
custom_id. WardStone (the private billing backend) decodes it from theBILLING.SUBSCRIPTION.ACTIVATEDwebhook to bind the entitlement. The page shares no code with the engine or the backend — only thecustom_idcontract.Files
index.html— Habitica-authentic design: full purple field, Varela Round headings, task-card sections with centered checkmarks (from Habitica's owncheck.svg), pixel dividers + a pixel-mountain footer. Scope-honest copy (to-dos + dailies only — no habits/rewards/streaks). Free self-host + €1/mo hosted. PayPal + card funding. Responsive, keyboard focus, reduced-motion, dark mode.custom-id.js— browsercustom_idencoder, pinned byte-for-byte to WardStone's Python codec bycustom-id.golden.json.custom-id.test.mjs—node docs/custom-id.test.mjsasserts the encoder reproduces the golden vectors.checkout.md— runbook: config, codec contract, Pages publish, go-live gate..nojekyll— serve.js/.mjs/.jsonverbatim.Verified
|-delimiter / UTF-8 edge cases.custom_idstamping, honest success copy) — 12/12 checks.Deploy
Merge, then enable Pages: Settings → Pages → Deploy from a branch →
main//docs.Notes
PLAN_ID+ WardStone'sWARDSTONE_PAYPAL_PLAN_MAPare updated.🤖 Generated with Claude Code