0005 — Community Platform Selection: BuddyBoss Platform¶
- Status: Accepted
- Date: 2026-05-09
- Decision owners: Gina Lyn Cox · Operations Lead
- Related: ADR-004 (Forms Permissions) ·
guildcommerce-theme·guildcommerce-core-plugin
Context¶
The Ganjier Guild member hub needs first-class member types to drive the forms permission model (ADR-004), the Section 28A contribution taxonomy, and future LMS / certification integrations. Two viable WordPress community plugins:
- BuddyPress (free, volunteer-maintained, partial member-type support, dated UI)
- BuddyBoss Platform (free fork of BuddyPress, commercial vendor, native member types and group types, modern UI, full REST API)
The Guild already owns its own theme (guildcommerce-theme) and core plugin (guildcommerce-core-plugin), so theme choice is not part of this decision — only the underlying community framework is being selected.
Decision¶
Adopt BuddyBoss Platform (the free plugin) as the community framework. Keep guildcommerce-theme as the active theme.
The BuddyBoss Theme ($228/yr) and BuddyBoss App ($199/mo) are explicitly not being adopted at this time.
Rationale¶
| Capability needed | BuddyPress | BuddyBoss Platform |
|---|---|---|
| First-class member types (admin UI + APIs) | Limited | Yes |
| Group types and group hierarchies | Limited | Yes |
| Full REST API for member type / xprofile | Partial | Yes |
| Native xprofile repeater + conditional fields | No | Yes |
Compatibility with bp_* API surface |
n/a | Backward compatible |
| Active commercial maintenance | Volunteer | Commercial |
| Cost (plugin only) | $0 | $0 |
For the forms permissions model in ADR-004, BuddyBoss member types map 1:1 to the role slugs (navigator, operator, officer, sysadmin, etc.) without custom code. The forms sub-module of guildcommerce-core-plugin becomes materially shorter.
Migration timing¶
Migration happens before member onboarding ramps and before the forms sub-module is built. The user's current BuddyPress install is described as minimal ("barely set up"), which is the cheapest possible time to migrate.
Estimated effort: one weekend. Steps:
- Back up the WordPress site.
- Install BuddyBoss Platform plugin; activate (it replaces BuddyPress on activation while preserving data).
- Configure profile fields and member types in the BuddyBoss admin UI.
- Map Section 28A taxonomy to BuddyBoss member types.
- Test existing user accounts (low risk — small user base).
- Re-test Klaviyo / Zapier integrations against the new APIs.
- Update
guildcommerce-core-pluginto call BuddyBoss APIs with a BuddyPress fallback shim.
Theme decision (out of scope here, restated for clarity)¶
guildcommerce-theme remains the active theme. It is custom-built, brand-aligned, and integrated with the existing phase3-deploy.sh deploy flow. There is no business case for the BuddyBoss Theme.
What we are NOT adopting¶
- BuddyBoss Theme ($228/yr) — the custom theme already covers the Guild's needs.
- BuddyBoss App ($199/mo) — premature; revisit when active member count exceeds ~100 and content velocity justifies a mobile app.
- A separate paid membership plugin (Restrict Content Pro, Paid Memberships Pro) —
guildcommerce-core-plugincovers membership gating natively.
Consequences¶
- Forms permission plugin code shrinks. Member-type detection becomes a single
bp_get_member_type()call (BuddyBoss aliases the BuddyPress function for compatibility). - Future LMS integration is unblocked. LearnDash and LifterLMS both have native BuddyBoss hooks for course access by member type.
- Mobile-app upgrade path is preserved without committing the cost now.
- One reversible decision. If BuddyBoss commercialization terms change unfavorably, the codebase can fall back to BuddyPress because BB is API-compatible.
Alternatives considered¶
- Stay on BuddyPress. Cheapest path now, but every forms permission interaction requires custom code, and migration becomes harder later as the data model accumulates.
- Adopt BuddyBoss Theme too. Rejected — duplicates the work already invested in
guildcommerce-theme. - Skip community plugin entirely; build custom. Rejected — reinvents 5+ years of community-software work for no strategic gain.
Follow-ups¶
- Schedule the migration weekend (separate task).
- Update
guildcommerce-core-pluginAPI calls to target BuddyBoss APIs with BP fallback. - Update
forms-manifest.jsonplatformfield tobuddyboss-platform(already done). - Document the BuddyBoss member-type configuration in
tech/community-platform.md(deferred).