The Making of Fizzy, Told by Git
7 days ago
- #rails
- #product-development
- #open-source
- Fizzy was released with its full development history open-sourced, providing a rare look into 37signals' product development process.
- The project began on June 21, 2024, with a simple Rails app and evolved through 8,152 commits over 18 months, involving 25+ contributors.
- Initial concept was 'Splats on a Windshield', which evolved into 'Bubbles' and finally 'Cards', reflecting the product's transformation from a visual metaphor to a kanban board.
- Key pivots included renaming from Splat to Bubble to Fizzy, and from Project to Bucket to Collection to Board, showing the team's search for the right mental model.
- DHH contributed significantly, especially in April 2025 with 323 commits, focusing on removing 'anemic' code, upgrading to Rails 8, and enforcing architectural best practices.
- Several features were added and then removed, including 'Boosts', 'Fizzy Ask' (an AI assistant), and custom workflows, highlighting the importance of deletion in product development.
- The final architecture included Cards, Columns, and Boards, with support for SQLite and MySQL, and was designed to be AI-native with the MCP (Model Context Protocol) branch.
- The project was open-sourced on November 28, 2025, after extracting proprietary SAAS features into a separate gem, leaving a clean, open-source Rails application.
- Key lessons from Fizzy's development include the importance of iterative design, the value of deleting features, and how architecture evolves through building.