Устали от Jira? 37signals выложили в опенсорс свой Kanban-инструмент Fizzy
Знакомая ситуация? Вы просто хотите передвигать карточки с задачами по колонкам «Сделать», «В процессе», «Готово», а вместо этого продираетесь через дебри кастомных полей, сложных воркфлоу и бесконечных настроек. Кажется, в 37signals (компании, подарившей нам Ruby on Rails и Basecamp) тоже от этого устали и создали свой инструмент — Fizzy. А недавно взяли и выложили его в опенсорс.
Давайте разберемся, что это за зверь и почему на него стоит обратить внимание, даже если у вас уже есть таск-трекер.
Что такое Fizzy и кому он нужен?
Fizzy — это веб-приложение для ведения Kanban-досок. Его девиз на GitHub гласит: «Канбан, каким он должен быть. А не каким он стал». И это, пожалуй, лучшее описание. Это не замена Jira или Asana со всеми их возможностями. Это возвращение к истокам: простая, визуальная и быстрая доска для отслеживания задач и идей.
Кому он пригодится?
- Небольшим командам, которым не нужна вся мощь корпоративных систем.
- Инди-разработчикам и фрилансерам для ведения собственных проектов.
- Всем, кто ценит философию 37signals: простота, фокус на главном и отказ от лишних функций.
- Ruby on Rails разработчикам, которые хотят посмотреть, как создают современные веб-приложения авторы фреймворка. И вот это, пожалуй, самое интересное.
Чем интересен Fizzy с технической точки зрения?
Этот проект — не просто еще одна Kanban-доска. Это образцово-показательный проект от людей, которые формируют тренды в Rails-сообществе. Вот на что я обратил внимание.
1. Современный стек без лишнего JavaScript
Fizzy построен на Ruby on Rails с использованием стека Hotwire (Turbo + Stimulus). Это значит, что вы получаете скорость и интерактивность одностраничного приложения (SPA), но без необходимости писать тонны кода на фронтенд-фреймворках вроде React или Vue. Весь рендеринг происходит на сервере, а страницы обновляются "на лету". Для многих команд это огромный плюс: не нужно держать отдельную команду фронтендеров или углубляться в сложности современного JS-мира.
2. Готовность к самостоятельному развертыванию
Ребята из 37signals не просто выложили код, они позаботились о том, чтобы его можно было легко запустить у себя. В README прямо рекомендуется использовать Kamal — их же инструмент для деплоя с помощью Docker. Это показывает, что Fizzy — не какой-то побочный продукт, а серьезный инструмент, который они сами используют и развертывают.
Настройка проекта до смешного проста. После клонирования репозитория достаточно выполнить:
bin/setup
bin/dev
И все, приложение уже работает локально. Никаких танцев с бубном.
3. Прозрачная архитектура и база данных
По умолчанию Fizzy работает с SQLite, что идеально для локальной разработки или небольших инсталляций. Но если вам нужно что-то посерьезнее, переключиться на MySQL можно одной командой, просто установив переменную окружения DATABASE_ADAPTER. Это отличный пример того, как можно писать гибкий код, не привязанный к конкретной СУБД.
4. Интересная модель монетизации
Самое любопытное — это то, как 37signals используют этот опенсорс-проект. У них есть основной репозиторий fizzy, который доступен всем. А рядом лежит приватный репозиторий fizzy-saas — это гем-компаньон, который добавляет в приложение всё необходимое для SaaS-версии: биллинг, интеграцию с их внутренними системами и специфичные для их продакшена настройки.
Это гениальная модель: ядро продукта открыто, сообщество может его использовать и вносить свой вклад. А коммерческая обвязка остается внутри компании. Отличная пища для размышлений, если вы думаете над опенсорс-стратегией для своего продукта.
Как можно использовать Fizzy?
Помимо очевидного — вести свои проекты — есть еще как минимум два интересных сценария.
Сценарий 1: Основа для внутреннего инструмента
Вам нужен простой трекер задач для команды, но готовые решения не подходят? Вы можете взять Fizzy за основу, дописать нужную вам логику (например, интеграцию с корпоративным чатом или Git-репозиторием) и развернуть на своих серверах. Вы получаете качественную кодовую базу и полный контроль над инструментом.
Сценарий 2: Учебное пособие по Rails
Хотите понять, как писать на "рельсах" в 2024 году? Просто изучайте код Fizzy. Это настоящий концентрат лучших практик от создателей фреймворка:
- Как структурировать приложение?
- Как эффективно использовать Hotwire?
- Как писать тесты, которые легко поддерживать?
- Как организовать деплой с помощью Kamal?
Ответы на все эти вопросы есть прямо в исходниках. Это куда полезнее, чем читать абстрактные статьи.
Выводы: стоит ли пробовать?
Однозначно да.
Если вы ищете простой и элегантный Kanban-инструмент для себя или небольшой команды, Fizzy может стать идеальным решением. Вы получаете полный контроль, никаких ежемесячных платежей и интерфейс, который не будет стоять у вас на пути.
Если вы Rails-разработчик, то этот репозиторий — просто клад. Изучайте его, вдохновляйтесь и применяйте подходы 37signals в своих проектах. Это отличная возможность заглянуть "за кулисы" к одной из самых влиятельных команд в веб-разработке. В конце концов, кто научит писать на Rails лучше, чем те, кто его создал?