=== Clubhaus ===
Contributors: clubhaus
Tags: community, membership, courses, forum, social
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.1
Stable tag: 0.1.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Own your community. A paid community platform on your own WordPress site: member feed, courses, profiles and tiers, with no platform fees.

== Description ==

Clubhaus is a self-hosted alternative to hosted community platforms. Run your community on the site you already own: your members, your data, no per-member fees.

Free core: one community, the member feed with comments, reactions, polls and @mentions, points and levels, member profiles, one free tier, and courses with modules, lessons, progress and drip.

Clubhaus Pro is a separate add-on plugin that adds paid tiers with Stripe, multiple spaces, direct messages, events with RSVP, waitlists, reminders and a calendar, analytics, custom branding and real-time transport. Nothing in the free plugin is locked or time-limited.

= Built for the site you already own =

* Members live in your WordPress users table; content lives in your database. Export or erase anyone with the core privacy tools.
* Mobile-first community app at /app/ with a web manifest and offline fallback, so members can install it on their phone.
* Blocks for every piece: Feed, Gate, Course Player, Course Catalog, Notification Bell, Notification Settings, Community Landing, Join Form, Onboarding Questions, Member Directory and Profile Editor.
* Modules you can switch off: feed, courses, notifications, profiles and moderation each register independently.
* Migration tools for Skool (CSV) and Circle (API) with dry-run previews.
* Developer friendly: REST API under clubhaus/v1, 130+ documented actions and filters, theme-overridable email templates, PSR-4 code and WordPress Coding Standards.

= Privacy =

Clubhaus makes no external requests from the free plugin. Web push, link previews and email delivery all use your own site. The Pro add-on contacts Stripe and, when a license key is entered, Lemon Squeezy's license service; both are opt-in.

== Installation ==

1. Install and activate the plugin.
2. Open Clubhaus in the admin menu: name your community, pick an accent color and choose which modules to run.
3. Add the Community Landing block to a page for visitors and send members to /app/.
4. Optional: install Clubhaus Pro for paid tiers, events and direct messages.

== Frequently Asked Questions ==

= Is the free version limited? =

No. Everything in this plugin works without the Pro add-on: one community, the feed, courses, profiles, notifications, moderation and one free tier. Pro adds paid tiers and the features that need a paid gateway, more spaces, events and messaging.

= Does it work on shared hosting? =

Yes. Clubhaus runs background work through Action Scheduler, uses short polling rather than websockets, and keeps high-volume data in its own indexed tables. A persistent object cache helps beyond about 10,000 members.

= Can I move from Skool or Circle? =

Yes. Clubhaus > Migrate imports a Skool members CSV or pulls members, spaces and posts from the Circle API, with a dry run before anything is written. Guides are linked from that screen.

= Where is my data? =

In your WordPress database: members are WordPress users, courses and events are post types, and feed posts, comments, reactions, notifications and memberships are custom tables prefixed clubhaus_. Uninstall keeps everything unless you opt in to removal.

= Which hooks are there? =

Over 130 actions and filters, all prefixed clubhaus_. The reference is generated from the code and ships in the docs folder of the repository.

== Screenshots ==

1. The member feed with spaces, sorting, reactions and comments.
2. The course player with modules, lessons and progress.
3. The mobile community app at /app/.
4. The admin dashboard with metrics, members, spaces, tiers and moderation.
5. Events with RSVP and a calendar (Clubhaus Pro).

== Changelog ==

= 0.1.0 =
* Scaffold: module registry, migrations, REST API, admin shell.
* Member feed: posts, comments, reactions, polls, images, link previews, mentions, points and levels.
* Courses: modules and lessons, progress tracking, drip, course player and catalog blocks.
* Notifications: bell, per-type email preferences with instant or daily delivery, theme-overridable email templates, web push plumbing.
* Community app: /app/ shell with tab navigation, branding tokens, manifest, service worker with offline fallback, install prompt.
* Onboarding and profiles: landing and join blocks, onboarding questions, profiles with bio, links and photo, member directory, welcome post.
* Admin dashboard: overview metrics, members with grant/revoke/suspend and CSV import/export, spaces, tiers with access rules, moderation queue with keyword filter and new-member approval.
* Migration tools: Skool members CSV with level-to-points mapping and a course rebuild guide, Circle API import of members, spaces and posts, Stripe subscription attach (Pro), all with dry-run previews.
* Hardening: REST audit, per-address rate limits, caching, GDPR export and erasure, opt-in uninstall.
* Design: shared design system (clubhaus-ui) with tokens, dark mode and components across every block and the app; generated initials avatars with Gravatar opt-in.
* Release: WordPress.org assets, Plugin Check clean, release zips, generated hooks reference; Pro licensing through Lemon Squeezy with weekly validation, graceful expiry and automatic updates.
* Access control: tiers, spaces, content gating.

== Upgrade Notice ==

= 0.1.0 =
First release.
