Написать в Telegram@Odilient

ОТКРЫТЫЙ КОД

Вклад в Open Source

Наш вклад в экосистемы PHP, Laravel и Vue.js, проекты TigerBeetle, Warp и ИИ-инструменты: исправления в апстрим, баг-репорты, утилиты под лицензией MIT и стартер-киты.

Открытый код
Клиент
Инструменты разработки
Отрасль
В развитии с 2021 года
Срок
2021
Год
С чего всё началось

Задача

Почти всё, что мы делаем, стоит на открытом ПО: Laravel и Filament, компоненты Symfony, Vue.js, плагины Chart.js и растущий набор инструментов для ИИ и автоматизации. Когда такие зависимости ломаются в продакшене, надёжному исправлению место в апстриме, а не в приватном патче, который исчезнет при следующем обновлении. Ещё мы хотели, чтобы переиспользуемые части нашей работы — стартер-киты, CLI и инструменты с хакатонов — были доступны другим.

Что мы сделали

Решение

Мы отправляем исправления в проекты, от которых зависим, и публикуем собственные инструменты. Среди них — принятое исправление в Filament, предложенное исправление в DoctrineBundle, принятые и предложенные исправления в hh-applicant-tool, принятая доработка плагина Chart.js для реактивных фронтенд-фреймворков, баг-репорт в Warp и исследование финансового реестра TigerBeetle. В наших публичных репозиториях — стартер-киты для Laravel и Vue, CLI для OpenAPI под лицензией MIT и пять ИИ-инструментов с хакатонов, тоже под MIT.

Технологии
PHPLaravelFilamentSymfonyVue.jsPythonTypeScriptChart.js
За кулисами

Как всё создавалось

Вклад в open source: PHP, Laravel, Vue.js и ИИ-инструменты

Наша команда вносит вклад в open-source-экосистемы, на которых мы каждый день строим продукты: PHP и Laravel, Vue.js, TigerBeetle, Warp и множество инструментов для ИИ и автоматизации. Принцип всегда один. Когда зависимость ломается или чего-то не умеет в продакшене, мы исправляем её там, где исправлению место, и отправляем его в апстрим. Когда мы делаем что-то пригодное для повторного использования, мы это публикуем.

На этой странице собрана публичная часть этой работы: пул-реквесты в апстрим-проекты, баг-репорты, исследования инфраструктуры, которую мы оцениваем, и наши собственные open-source-репозитории.

Пул-реквесты и issues в апстрим

  • Filament (Laravel) — Filament — фреймворк админ-панелей и интерфейсов, на котором мы делаем бэк-офисы на Laravel, в том числе для Bronjoy. Его вкладки были выровнены по вертикали, но не по центру по горизонтали, поэтому мы добавили justify-center в Blade-шаблон элемента вкладки и задокументировали изменение скриншотами «до» и «после». Пул-реквест приняли в ноябре 2024 года.
  • DoctrineBundle (Symfony и PHP) — в феврале 2024 года мы предложили исправление для множественных определений в бандле Symfony для Doctrine ORM и DBAL. Его закрыли без слияния.
  • Плагин выбора диапазона для Chart.js (JavaScript) — небольшой плагин для выделения диапазона перетаскиванием на графиках Chart.js. Мы добавили проверки, чтобы он работал внутри реактивных фронтенд-фреймворков — таких, на которых построены наши дашборды на Vue.js, — и изменение приняли в январе 2025 года.
  • hh-applicant-tool (Python и ИИ) — популярная open-source-утилита командной строки, которая автоматизирует отклики на вакансии на HH.ru, включая сопроводительные письма, сгенерированные ИИ. Разворачивая её в Docker на новом сервере, мы обнаружили, что HH.ru переименовал кнопку входа по паролю, а первая загрузка страницы OAuth с нового IP-адреса сервера занимала 30–45 секунд. Наше исправление селектора и тайм-аута навигации приняли в июле 2026 года. Второй, более крупный пул-реквест предлагал исправления надёжности для сопроводительных писем от ИИ и ответов работодателям — в том числе бага, из-за которого сообщения могли заново уходить в непрочитанные чаты при каждом запуске cron. Его закрыли без слияния. Вся история — в нашем кейсе об автоматизации откликов на вакансии.
  • Warp (терминал) — как пользователи Warp на Linux, мы сообщили о баге в Ubuntu 24.04: при выделении текста из вывода предыдущих команд подсвечивались не те символы, хотя скопированный текст был правильным. Issue закрыли со статусом «не запланировано».

TigerBeetle и инфраструктура для финансового учёта

Наша работа с TigerBeetle — это исследование и обмен знаниями, а не код. Мы изучили TigerBeetle — базу данных, созданную специально для финансовых транзакций, — и опубликовали разбор того, что нас зацепило: корректность двойной записи (дебет равен кредиту), которую обеспечивает сама база данных, встроенный аудиторский след и неизменяемость записей, а также эксплуатационная философия, которая делает ставку на простоту — вплоть до рекомендации использовать systemd, а не Docker. Именно такую оценку мы проводим, прежде чем рекомендовать инфраструктуру для финтех-продуктов.

Наши собственные open-source-проекты

  • Стартер-киты — стартер API на Laravel с JWT-аутентификацией под лицензией MIT и парный стартер с JWT-аутентификацией на Vue для быстрого прототипирования, а также эталонная архитектура корпоративного API на Laravel, в которой описаны многослойные паттерны, построенные вокруг предметной области.
  • CLI и утилиты для разработчиков — openapi-domainify, CLI, который разбивает OpenAPI-спецификацию на TypeScript-классы сервисов по доменам вместо одного монолитного сгенерированного файла, и консольная команда Laravel, которая разбирает XML и JSON внутри директорий, а также zip- и gzip-архивов.
  • Патчи для экосистемы Laravel — публичная пропатченная копия плагина Filament для Vemto, генератора кода для Laravel, из которой убрана зависимость livewire/livewire.
  • Telegram — Finfolio, стартер Telegram-мини-приложения на чистом JavaScript под лицензией MIT.
  • ИИ-инструменты с хакатонов — пять инструментов под лицензией MIT, созданных и показанных на AMD Developer Hackathon в июле 2026 года: Keystone — движок принятия решений, в котором LLM предлагает, солвер решает, а верификатор сертифицирует; RecipeReel, который превращает кулинарные видео в структурированные рецепты; LectureLoom, который превращает видеолекции в конспекты; Legible — ИИ-адаптация документов под требования доступности; и Testify — аудит регулируемых телефонных звонков на соответствие требованиям. Наш проект с UM Hackathon 2026, Opus Magnum, тоже открыт.
  • Открытый код клуба — Pitch, турнирная платформа на Next.js и Supabase, на которой работает XCeed Football Cup, разрабатывается в публичном репозитории, куда мы влили свою работу над жизненным циклом турнира, ведением счёта и row-level security.

Как мы работаем в open source

  • Исправлять там, где исправлению место. Локальный патч в скопированном коде зависимости стирается при следующем обновлении. Исправление в апстриме защищает всех пользователей, включая нас.
  • Сначала воспроизвести. В наших пул-реквестах описано, что ломается, как мы это воспроизвели и как проверяли исправление — например, на реальном аккаунте с нового IP-адреса сервера.
  • Показывать всю историю. Принимают не каждый пул-реквест, и такие мы тоже здесь перечисляем.
  • Публиковать то, что пригодится другим. Стартер-киты, CLI и инструменты с хакатонов мы по возможности выпускаем под свободными лицензиями.

Смежные работы

Этот опыт в open source напрямую идёт в клиентские проекты: бэк-офисы на Laravel и Filament — в нашей разработке веб-приложений, ИИ-инструменты — во внедрении ИИ и автоматизации. Как один из этих вкладов работает в продакшене, смотрите в кейсе об автоматизации откликов на вакансии.

Создадим вместе

Хотите что-то вроде Вклад в Open Source?

Расскажите, что должен делать ваш продукт. Мы определим объём работ, распишем сроки и пришлём фиксированную цену — бесплатно и без обязательств продолжать.

Бесплатная консультация Без обязательств Быстрый ответ