Минас Саркисянwebkoth.com

Открытый код · В проде

Стартовый шаблон приложения

Стартовый шаблон приложения: одна команда - и есть проект с базой, входом по логину и паролю, ролями и правами, тестами, CI и автодеплоем в два контура. Это не выдуманный эталон: шаблон извлечён из систем, которые уже работают в проде, и пакует не идею, а порядок работы - контур доставки собирается раньше предметной части.

Болело

Между «написали первый экран» и «этим можно пользоваться» обычно стоят недели настройки, и её собирают заново на каждом проекте.

Стало

Одна команда разворачивает не пустой каркас, а настроенное рабочее место: стек, база с миграциями, вход по логину и паролю с ролями и правами, тесты, CI и два контура с автооткатом прода.

Эффект по шагам

05 · Процессы - быстрее
Промышленный контур доставки готов в день первого коммита - порядок, обкатанный на трёх системах
06 · Ресурсы - свободнее
Порядок, обкатанный на трёх системах, свёрнут в одну команду; за тот же месяц одна команда запустила семь приложений

Что это даёт бизнесу

  • Вопрос «а как это выложить» снят до того, как написана первая страница.
  • Каждое приложение выкатывается одинаково, поэтому чинить их умеет один инженер, а не по человеку на проект.
  • Неудачный выкат прода откатывается сам - по смоук-проверке, а не по звонку пользователя.
  • Правила стека приезжают вместе с проектом, поэтому специалист компании работает в рамках, а не изобретает свои.

От источника к результату

  1. Одна команда
  2. Проект со стеком и базой
  3. Вход, роли и права
  4. Тесты и CI
  5. Dev и production с автооткатом

Между веткой разработки и продом стоят проверки: формат, линтер, типы, юнит-тесты и смоук на вход. Прод обновляется только через ревью, а неудачный выкат откатывается сам.

Как устроено

Это не только генератор, а настроенное рабочее место. Вместе с проектом приезжают правила стека, скиллы и шесть команд ежедневной работы: /ship (выкат), /status (состояние контуров), /logs (логи), /reset-dev (сброс песочницы), /request-prod (запрос на прод) и /onboarding (ввод нового человека).

Шаблон извлечён из двух систем, которые уже работают в проде, а не собран как «эталон на будущее»: меняется подход в них - подтягивается шаблон.

Два контура разделены намеренно: песочница обновляется из ветки разработки, production - только через ревью, со смоук-проверкой и автооткатом.

Кто ведёт систему сейчас

Я. Шаблон обновляется вслед за системами, из которых он извлечён.

Другие кейсы этого шага

Внутренняя система · В проде

Управленческий финансовый контур

Отчёт за полчаса вместо недель

Болело
Управленческую отчётность собирали руками неделями: выгрузки, сведение, перепроверка.
Стало
Отчёт собирается за полчаса, данные подтягиваются сами, расхождения по бюджету видно сразу.
Было → стало
недели → полчаса
Сбор данных
подтягивается сам

Та же система даёт эффект ещё по 3 шагам

Смотреть кейс

Внутренняя система · В проде

Товарный портал

Замена внешней PLM за дни

Болело
Товарные данные жили в чужой системе: поменять в ней ничего нельзя, а на любую доработку уходили месяцы ожидания.
Стало
Свой портал заменил внешнюю PLM за несколько дней работы. Промышленный контур доставки был готов в день первого коммита, поэтому изменения доезжают до людей тем же днём.
Срок
Контур доставки
готов в день первого коммита
Заменило
внешнюю PLM-систему

Та же система даёт эффект ещё по 2 шагам

Смотреть кейс

Открытый код · В проде

Выкат из чата

Выкат без ручного SSH, прямо из чата

Болело
Между «код готов» и «этим пользуются люди» стоит ручная возня: SSH, сервер, веб-сервер, сертификат, DNS-запись. Каждый раз заново и каждый раз по памяти.
Стало
Плагин и MCP-сервер дают Claude Code прямой доступ к облаку: сервер, база, DNS, сертификат и сам выкат делаются командой в чате. Рядом лежат проверка готовности, состояние контуров, логи и откат.
Выкат
команда в чате вместо ручного SSH
В плагине
Инфраструктура
сервер, база, DNS, сертификат - вызовом инструмента
Смотреть кейс

Свой продукт · В проде

Фабрика фронтенда

Экран собирается из готовых блоков, а не рисуется с нуля

Болело
Каждый новый экран начинался с нуля: свои компоненты, свои цвета, свои отступы. Удачный блок не переносился в соседний проект - он был прибит к теме и вёрстке своего.
Стало
Набор авторских секций и страниц-образцов поверх стоковых компонентов shadcn. Блок переносится файлом: данные приходят пропсами, а цвет берётся из темы принимающего приложения, без правок.
В наборе
Переносимость
Основание проекта
Смотреть кейс
Тип
Открытый код
Статус
В проде
Срок
один день до промышленного контура
Ведёт
инженер
Заменило
неделю настройки на каждом проекте
Next.js 16React 19TypeScriptTailwind 4shadcn/uiPrismaPostgreSQL 18PlaywrightGitHub ActionsPM2