Community

A community doesn't die from conflict. It dies from silence.

The symptom arrives slowly. The feed is still there, the member list is still full, and the conversation concentrates in a handful of people while everyone else reads.

This page walks through the four moments where a community loses people — the new member's first day, the moment they decide to speak up, the night someone needs to moderate, and the week they stop showing up. Each mechanism below comes with what it does and where it stops.

01First day

The new member opens the feed and sees everyone else's conversation.

They read, don't reply, and disappear. Doing nothing triggers nothing — abandonment doesn't generate an event.

The onboarding journey takes the first day out of chance. You build the sequence of missions — complete the profile, follow someone, react, comment, vote in a poll, write the first post — each with its own goal, XP, and badge, plus a badge at the end of the journey. If you don't want to start from scratch, there are templates by category.

Separate from that, with its own on/off switch, are the welcome cards: text, image, or video, in the order you set. They're two features, not one.

And there's the drop-off funnel. The onboarding analytics screen points to the mission where most people get stuck. You fix that mission, not the entire journey.

Where it stops

The reminder rule — hours without showing up, pending mission, days since joining — is configurable, and the dashboard lists who fits each rule. Automatic sending doesn't exist: no scheduler runs the rule, and reaching out remains your decision.

02Who can speak

Speaking has to be easy for whoever stayed and hard for whoever arrived yesterday.

Two opposite failures, in the same feed. In one, nobody posts, because the space belongs to no one. In the other, whoever joined yesterday pastes an affiliate link in the main space.

Spaces solve the first half. Each one has public or private visibility, its own moderators, and posting permission at four levels: everyone, followers only, moderators and admins, or admins only. The member list keeps track of where each person came from — added by hand or through course access. A space that's run its course gets archived, not deleted, and comes back whenever you want.

Trust levels solve the second. You design the level and the requirements it demands: active days, posts created, comments, likes given, and likes received. The count is recalculated every time the member posts, comments, gives, or receives a like — whoever meets it moves up on their own, and the history logs the change. Moving down is automatic in one case: thirty days without activity demote a level, with the reason recorded. A penalty applied by hand has a duration and expires on its own. And when you need to move an entire group at once, there's a bulk job with live progress, cancellation, and a record of who triggered it.

What the server actually blocks: creating a post, creating a poll, and uploading an image or video. It's a backend refusal, not a hidden button on the screen. Chat and direct messages don't go through here — each has its own access setting, also at three levels.

Where it stops

Spaces aren't unlimited. The cap is 10, 30, or 100 depending on the plan, and the server refuses creation once it's exceeded — better to know now than on the day you need space number 11.

03Moderation

The conversation that turns sour at 11pm isn't the problem.

The problem is the queue nobody sees: the report opened two days ago, Friday's join request, Thursday's event without a single RSVP, the space suggestion sitting there waiting for a reply.

The action inbox pulls all four into one list with a number and a direct link. Pending reports. Pending join requests. Events in the next seven days with no RSVP at all. Space suggestions waiting. When the total hits zero, it's done.

The report starts with the member and lands in a queue with status and a per-user history: you can see what's already been decided about that person before deciding again. A post comes down without disappearing, comes back if you got it wrong, or gets deleted for good. A user gets banned and unbanned. And you can end their active sessions — the difference between blocking the account and getting someone out right now.

The door is yours too. Email invites, one at a time or in batch, with resend and revoke. Invite links with an expiration, a use limit, and an on/off switch, plus conversion stats. Join requests with approval and rejection. And every member carries a record of how they got in.

04Coming back

Whoever disappears rarely announces it.

They stop having a reason to open the page that day.

Inside the product there are 28 notification types with an unread counter. Sixteen cover community life: comment, like, reply, mention, pinned post, badge earned, new follower, event reminder, event changed, event canceled, space suggestion, space approved, space rejected, new space, space access granted, and system notice. The other twelve belong to the marketplace. The @name mention is the shortest path: you call the person by name and they get it.

Outside the product, two channels. Browser push, with its own VAPID key and service worker — no app to install, no store to approve. Members turn it on and off per type: comment, like, reply, mention, badge, new follower, event reminder, event changed, and space activity, plus one general switch. And the email digest: a daily routine at 9am that sends to whoever chose that day of the week, with a preview, send history, and a test dispatch before it goes out to the whole base.

When the problem is the week and not one person, there's the challenge: a date window, a goal on posts, comments, or streak days, a reward badge, and its own scoreboard.

Where it stops

Chat messages and direct messages don't generate push notifications. The types cover feed, badges, followers, spaces, and events.

05Diagnosis

A hundred people talking, or five talking in front of ninety-five.

Back to the start. Silence has a number, and the number has a name.

The contribution split divides the base into three, with the cutoff spelled out: whoever went over ten posts or comments in the period, whoever made one to ten, and whoever made none. It's the most uncomfortable chart in the dashboard — it answers whether your community has a hundred people talking or five talking in front of ninety-five.

Next to it: engagement by space, which points out which space stalled; a heatmap by day of the week and hour, which shows when your crowd is actually awake; the average time to a post's first comment; and the list of posts that passed 48 hours with fewer than two interactions.

And the list that closes the subject: at-risk. It isn't a list of inactive members. It's the people last seen between 14 and 44 days ago who had at least three posts or comments in the thirty days before that cutoff. People who used to talk and stopped. Those you can call back by name — the others never really showed up in the first place.

Five lenses, all with CSV export.

Where it stops

The numbers are recalculated when you open the screen. It isn't a dashboard that blinks on its own, and it doesn't need to be: there's no decision made here in seconds.

Continues in

The live conversation is a single room, with slow mode enforced on the server and direct messages with blocking: 04 · Chat

The invite you just read goes out from a sender and leads to a domain. Which ones, and from when they're yours: 06 · Brand and infrastructure

See plans and limits I'm coming from another platform