SA
← All work
SaaS Live

Retroly

Role Founder & Fullstack Engineer
Timeline 2019 – 2022
Year 2019
Live retroly.io
#2
Product Hunt — December 2019
161
upvotes on launch
60%
of daily users from France
Overview

Retroly was a SaaS retrospective tool I co-founded with Biyi Adetunji to make sprint retros actually useful — whether the team was in the same room or spread across time zones. I built both the Angular frontend and the Node.js/Express backend from scratch. We launched on Product Hunt in December 2019, ranked #2 for the day, and hit 161 upvotes.

Retroly covered the full retrospective lifecycle: a facilitator creates a board, members add feedback cards anonymously or named, and the session moves through four guided stages — feedback, grouping, voting, and resolution. Cards could be merged when themes overlapped, voted on with configurable limits, and discussed in threaded comments. Real-time collaboration ran over WebSocket so everyone saw updates instantly. The full session could be exported to PDF or Excel at the end.

Retroly found users we didn't expect. France became our largest market — about 60% of daily active users — followed by the UK, US, Germany, and Canada. Retroly ran a free tier (one board, two teams, five members) and a $10/month Pro plan enforced via Stripe subscriptions and API-level middleware. It was at a Lagos co-working space in 2019, while building Retroly, that I first met Lanre Adelowo — a conversation that eventually led to Fluidcoins. Retroly is no longer actively maintained.

What I built
→ Built the full Angular frontend — dashboard, board creation, feedback page, voting, grouping, discussion, resolution, and board settings
→ Built the Node.js/Express API — auth (JWT with refresh tokens, social login, email verification), team management, board CRUD, feedback, voting, comments, and WebSocket for real-time collaboration
→ Feedback system — card creation with type tagging, anonymous mode, card merging for consolidating similar themes, and threaded comments
→ Voting system — configurable max votes per user, multiple votes toggle, live vote counts via WebSocket
→ Board stage machine — feedback → voting → grouping → discussion → resolution, with facilitator controls over transitions and who can group cards
→ Team management — create teams, invite members by email (with email notification), max member limits enforced by subscription tier
→ Stripe subscription integration — checkout, webhook handling (subscription created/updated, invoice events), free tier enforcement via API middleware, and upgrade modal in the UI
→ PDF and Excel export of full board sessions using PdfMake and ExcelJS
→ Auth — email/password with verification, social login, JWT access and refresh tokens, avatar selection, account deletion flow
Press & Coverage

Product Hunt

Ranked #2 on launch day with 161 upvotes

Built in Africa

Feature interview on building a remote retrospective tool from Lagos

GoRetro — Retroly vs GoRetro

Retroly compared as a competitive alternative — praised for really nice UX

Tech stack
Angular TypeScript SCSS Node.js Express MongoDB WebSocket Stripe PdfMake ExcelJS
Next project Papertrail →