All BlueprintsMedia
Community noticeboard
A noticeboard for one neighbourhood. Neighbours put up what is happening locally, argue about it underneath, and anything somebody objects to is held until a person looks. The moderators are neighbours too, which is the whole difficulty: every decision is a judgement somebody will disagree with, and the product's job is to make those decisions reviewable rather than to pretend they are automatic.
What you’ll build.
A noticeboard for a street. Neighbours post notices the street reads within the minute and reply underneath them. Anything reported stays up while a moderator looks, and a moderator cannot touch a notice they are part of. What comes down is gone for everybody, including anybody who already had the link, and the author can appeal to a different moderator.
What you’ll learn.
Each sprint is built around one skill. You show you have it in a pull request your team reviews, then explain it in a walkthrough.
Authentication
You can register and sign in a user, keep a request authenticated without asking for the password again, and explain where the credential lives in the browser and why there rather than somewhere else.
A feed people scroll
You can serve a paged feed, keep it stable as new content arrives, and show that it stays fast as the content set grows.
Comments and replies
You can store threaded comments, render a thread without a query per comment, and handle a comment deleted with replies under it.
Moderating what gets published
You can hold content for review, let a moderator approve or reject it, and show the author what state theirs is in.
Roles and permissions
You can give users different roles and have the server refuse what a role may not do — not merely hide the button — and show the refusal working against a request the interface never offered.
Going live
Somebody who has never met you can open a URL and use the product — and you can say what is different about the copy running there, where its secrets come from, and what you do when a release turns out to be wrong.
The roadmap. 8 sprints, 38 tasks.
Every sprint has a goal and a set of tasks. Open a sprint to see the tasks you will pick up.
Names on the board
Somebody can join under a name their neighbours see, come back to it, and be stopped everywhere at once when it comes to that.
5 tasks
- Joining the noticeboard under a name the street sees
- Coming back on Thursday to the same account
- Leaving properly on a machine that is not yours
- The account that runs the board is a member with a mark on it
- The board can end somebody's sign-in everywhere at once
The board
Somebody can put up a notice the street reads, correct it or take it down, and the board keeps reading straight while notices come and go.
4 tasks
- Putting up a notice the street reads within the minute
- The board reads newest first, and keeps reading
- Correcting your own notice, and taking it down
- A notice that goes while somebody is reading
Underneath the notice
Neighbours can reply to a notice and to each other, and a reply that goes leaves the conversation still readable.
4 tasks
- Replying to a notice, and to a reply
- A busy thread opens as fast as a quiet one
- Replies stop nesting before the page becomes unreadable
- A deleted reply leaves the conversation standing
Reported, and still up
Anybody can report a notice or a reply, it stays on the board while somebody looks, and what reaches the moderator is a queue rather than a pile.
5 tasks
- Reporting a notice or a reply, from the thing itself
- It stays on the board while somebody looks
- A queue a moderator can actually work
- Nine reports on one notice are one piece of work
- A decision, in a sentence, that empties the queue
Moderators are neighbours
Several neighbours hold the hat, none of them can decide a report they are part of, and every decision carries a name and a reason somebody else can read.
5 tasks
- More than one neighbour can hold the hat
- A moderator cannot decide a report they are part of
- Every decision carries a name and a reason that cannot be rewritten
- Who gets to read the trail
- Taking the hat off somebody
Taking it down properly
A notice taken off the board is gone for whoever already had the link, the conversation around it still reads, and the record of what went outlives it.
5 tasks
- Gone for whoever already had the link
- A removed reply says a moderator removed it
- The record outlives the notice
- Telling the author away from the board
- The second time the same thing is reported
The author's side of it
An author can say a decision was wrong, a different moderator looks, a reversal shows on the board and on the record, and an author the board keeps having to deal with is stopped.
5 tasks
- Saying the decision was wrong
- Somebody other than the original moderator hears it
- A reversal puts the notice back where it was
- A reversal is visible, not quiet
- An author the board keeps having to deal with
In front of the street
It is on the internet, and a bad release can be undone without losing the record.
5 tasks
- Three different people, three different machines, one board
- Settings and secrets live where it runs
- A bad release goes back without losing a day of decisions
- The backup is proved by restoring it, not by existing
- Nothing taken down comes back because of a restore
Read before you build. The best engineers do.
Senior engineers read the docs before they touch the code. Every Blueprint comes with short documents on the product and its world, the kind a team hands a new hire. Read them well and you ask sharper questions and walk into every review prepared.
What you are building
The product, who it is for, and why moderation is the whole of it rather than a feature of it.
What moderating actually is
Judgement rather than detection, the four states a piece of content can be in, and why the uncomfortable version is the one worth building.
More media Blueprints.
Build community noticeboard.
Start your free week. Adaeze runs your kickoff, and Lars reviews every pull request.