mcp: project-plan — PBS Membership Platform — Master Roadmap

This commit is contained in:
Lovebug MCP 2026-06-12 23:31:59 +00:00
parent 7d3cc87da9
commit 5f6cb1f309

View File

@ -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 **3a3e**:
- 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.