Minimalist retro board for happy teams ๐
In version 2, NATS is used as communication and persistence layer to enable horizontal scaling (real-time communication works across multiple instances). If you prefer simpler single-instance setup, you can still use the version 1.
What the heck is retro board? The Retrospective Board usually used as a tool during sprint restrospective meeting by a team to carry out a "lessons learned" or "how do you feel?" assessment of the sprint. Usually helds at the end of the sprint period.
This project is heavily inspired by https://www.dragondropcards.com, here I'm trying to replicate the functionalities as much as possible while also adding some cool features that I think would be useful (timer, online users, standup, etc).
๐Try it: https://go-retro.fly.dev
- Create/Update/Delete board columns
- Add/Update/Delete cards
- Move cards to other column
- See number of online users
- A timer to allow users fill-in the board with cards within a specified time limit
- React to a card (thumbs up or emoji?)
- Display user name on who's online list
- Standup feature (shuffle users and display who's turn to speak)
- Persistence layer, powered by NATS KV (expires after 24 hours)
- Group similar cards
Therefore during development, you need to have a NATS server running locally.
-
Install dependencies
# install both backend and frontend dependencies make setup -
Run the app with Docker compose
# starts both NATS server and the app make compose
# version 2
docker pull ekaputra07/goretro:latest
docker pull ekaputra07/goretro:2.x.x
# version 1
docker pull ekaputra07/goretro:1.0.0As I'm not a UI guy, I steal and modify the board HTML from https://github.com/mithicher/tasksgram by @mithicher which perfectly suite my needs for a clean design powered by AlpineJS and Tailwind CSS.
