How Does BreathTime’s Petition System Actually Work?
BreathTime is a small civic platform: people propose petitions, sign them, and leave a few words of support. This post walks through exactly how each of those steps works today — including the parts that are deliberately simple, and the parts that don't exist yet.
Step 1: Proposing a Petition
Any registered, logged-in user can suggest a petition through the Propose a Petition page. A proposal has three fields:
a title
a description of what should change and why
an addressee — the government, institution or organisation the petition is aimed at
The form is a React page that sends the proposal to an API route; the server checks that the user is signed in (NextAuth) and saves it to the database (Prisma + MySQL) with the status pending .
Step 2: Moderation
Every proposal is read by a person. In the admin panel, proposals are listed newest first, with the author's name.…