From 5f6cb1f309471ac0248a68892a3eceba9496aebd Mon Sep 17 00:00:00 2001 From: Lovebug MCP Date: Fri, 12 Jun 2026 23:31:59 +0000 Subject: [PATCH] =?UTF-8?q?mcp:=20project-plan=20=E2=80=94=20PBS=20Members?= =?UTF-8?q?hip=20Platform=20=E2=80=94=20Master=20Roadmap?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pbs-membership-platform-overview.md | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 Sources/Venture/pbs-membership-platform-overview.md diff --git a/Sources/Venture/pbs-membership-platform-overview.md b/Sources/Venture/pbs-membership-platform-overview.md new file mode 100644 index 0000000..044f19b --- /dev/null +++ b/Sources/Venture/pbs-membership-platform-overview.md @@ -0,0 +1,71 @@ +--- +created: '2026-06-12' +path: Sources/Venture +project: pbs-membership-platform-overview +tags: +- pbs +- sunnie +- membership +- garden +type: project-plan +--- + +## Goal + +Single source of truth for the **big picture** of the PBS Membership Platform — the initiative to evolve plantbasedsoutherner.com from a content site into a full plant-based lifestyle platform. This document orients; it does not duplicate phase-level detail. + +**Read this first** at the start of any membership planning session, then drill into the specific phase doc you're working on. + +### End-State Vision + +A full plant-based lifestyle platform powered by a standalone Flask backend (**the Sunflower Garden**) running alongside WordPress. WordPress owns identity; the Garden owns membership features. Free tier first, paid tiers later. + +The platform is delivered as four Lines of Effort (see Phases). Beyond the LOEs sit two **horizon goals** — not yet scoped, intentionally past the current roadmap: + +- A **companion app** +- A **custom LLM** trained on plant-based cooking knowledge + +These are direction, not plans. They exist here so the roadmap remembers where it's ultimately pointed. + +## Locked Decisions + +These architectural decisions are settled and inherited by every LOE: + +- **WordPress owns identity, the Garden owns features.** Bridge = validated WordPress session + read-only access to `wp_posts`. +- **The Garden is a standalone Flask app in its own container**, separate from `pbs-hub`. Shared MySQL server; no shared application tables or logic. +- **Database: `pbs_garden`**, with a generic `user_interactions` table serving all interaction types. +- **Auth: WordPress validates its own cookie** (Option 2) via an internal-only endpoint. Secrets stay sealed in WordPress; ~5 min per-session cache. +- **Tiers are WordPress `roles[]`** — no separate tier field, no second source of truth. +- **Garden lives at `/the-garden/`**, Traefik path-routed, and owns its own visual identity (Option D — intentionally distinct from the main site). + +## Open Items + +None at drafting — this is the originating roadmap. + +## Phases + +### The Four Lines of Effort + +| LOE | Project | +|-----|---------| +| 1 | Recipe Saving | +| 2 | Weekly Meal Plan Viewer | +| 3 | Whole Food Diversity Tracker | +| 4 | User Profiles & Preferences | + +**Why this order:** the LOEs are sequenced not only by priority but because each teaches skills that compound into the next. LOE 1 is foundational — it establishes the shared membership infrastructure (WordPress-cookie auth, the `user_interactions` table, Flask patterns, and the Garden shell) that every later LOE inherits. Build it first and the rest get cheaper. + +### LOE 1 — Recipe Saving (phase ladder) + +- **Phase 0** — Ultimate Member setup (registration, login, roles, basic profile) +- **Phase 1** — Backend foundation: `pbs_garden` DB, the Garden Flask app, WP-cookie auth endpoint, the four interaction APIs +- **Phase 2** — Save button on WordPress recipe pages (JS widget; needs Phase 1's check endpoint) +- **Phase 3** — Saved-recipes member area = the Garden frontend, broken into **3a–3e**: + - 3a shell → 3b saved-recipes card wired to data → 3c detail page → 3d recently-added strip + empty state → 3e coming-soon cards +- **Phase 4** — Collections (named recipe groups) +- **Phase 5** — Polish (mobile, loading states, error handling) + +## Notes + +- **The Garden naming:** the member area is "the Sunflower Garden," at `/the-garden/`. Community members are Sunnies. +- This doc exists because the big picture was previously scattered across multiple phase docs and chat sessions, forcing every session to reconstruct the map from fragments. This is the map. \ No newline at end of file