Peerly
Peerly pairs people for focused work sessions — a shared timer, a small contract, and enough presence to make showing up easier.
Stack Next.js · TypeScript · Supabase · Tailwind CSS
Focus is easier when someone else is in the room. Peerly is a small product built on that observation: pair two people for a timed work session, give them a shared surface, and let the accountability be ambient instead of managerial.
The experience is intentionally narrow. You choose a length, state what you are working on, and get matched with another person doing the same thing. The session has a timer, a shared note, and a single end-of-session question. There are no cameras, no chat rooms, and no productivity score.
Why the constraints matter
Most accountability tools turn into another dashboard to maintain. Peerly avoids that by making the session the whole product. A session has a beginning, a middle, and an end. When it is over, the room closes. The only thing that persists is the note you chose to keep.
The matching is simple: overlapping availability, a similar session length, and a preference for the same kind of work. The interface shows enough about the other person to make the room feel human — a name, a role, a sentence about what they are working on — and nothing more.
The build
Next.js and TypeScript, Supabase for presence and session state, and a small amount of realtime plumbing for the timer and shared note. The timer is intentionally not perfectly synchronised. A second of drift is invisible and cheaper than a websocket heartbeat per user. The note is saved as the user types, with a visible state, because losing a thought is worse than an extra write.
NOTE
Presence is a design material. A green dot is not community. A person’s name and a sentence about their work is.
What I would keep
The end screen. It asks one question — did you finish the thing you said you would? — and gives three answers: yes, partly, no. No streak. No score. Just a small, honest record. It is the only metric the product needs.