SQL-линтер на Rust, HTML-минификатор для .NET и эмулятор DOS в браузере: кто получил гранты Yandex Open Source. HTML.. HTML. гранты.. HTML. гранты. Машинное обучение.. HTML. гранты. Машинное обучение. опенсорс.. HTML. гранты. Машинное обучение. опенсорс. Программирование.. HTML. гранты. Машинное обучение. опенсорс. Программирование. Хранение данных.
SQL-линтер на Rust, HTML-минификатор для .NET и эмулятор DOS в браузере: кто получил гранты Yandex Open Source - 1

В конце октября мы анонсировали продление программы грантов от Yandex Open Source для поддержки проектов независимых разработчиков. Пришло время подвести итоги и рассказать о победителях.

За прошедшие месяцы мы изучили 120 проектов в трёх категориях: обработка и хранение данных, машинное обучение и разработка. Кстати, одну из заявок мы получили 15 марта в 23:59 — в последнюю минуту подачи. Этот проект тоже есть среди победителей.

Заявки оценивала группа экспертов, в основном — разработчики и менеджеры опенсорс‑проектов Яндекса: YDB, YTsaurus, Testplane, Gravity UI, DivKit и других. Наших коллег мы просили оценить актуальность проекта и его пользу для сообщества, активность репозитория и вектор развития.

Так мы выбрали 12 проектов, которые показались нам самыми интересными, полезными и перспективными. Их создатели получат грант на 600 тысяч рублей, потратить которые можно на платформу данных, инструменты для разработки и другие сервисы Yandex Cloud.

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


Трек «Обработка и хранение данных»

sqruff — Андрей Николаев

https://github.com/quarylabs/sqruff

Создатели проекта столкнулись с проблемами производительности при проверке крупных объёмов SQL‑кода с помощью SQLFluff и решили переписать линтер на Rust. Так родился sqruff — продвинутый и открытый SQL‑линтер, главной отличительной особенностью которого стала высокая производительность.

sqruff поддерживает основные диалекты SQL и уже готов к интеграции в реальные проекты. В ближайших планах — переработка кода под более идиоматичный Rust, совершенствование системы конфигурации и добавление новых диалектов.

pg_index_stats — Андрей Лепихов

https://github.com/danolivo/pg_index_stats

Проект pg_index_stats родился в 2023 году как решение для автоматизации управления статистиками таблиц PostgreSQL. Идея появилась из реальных проблем снижения производительности СУБД, когда перекосы в распределении данных в таблицах приводили к неэффективным планам запросов (например, когда Ивановых больше, чем Шниперсонов). Эти ситуации требовали ручного создания расширенных статистик — процесса, неподъёмного в промышленной эксплуатации.

Расширение актуально для использования в облачных инсталляциях СУБД PostgreSQL. Сейчас команда совершенствует подход — вместо привязки к индексам разрабатывается интеллектуальный механизм, создающий статистики на основе анализа проблемных запросов и их планов выполнения.

Трек «Разработка»

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

BugStalker — Константин Деревцов

https://github.com/godzie44/BugStalker

BugStalker (или просто BS) — это отладчик, который появился, когда автору понадобилось быстро освоить Rust. В отличие от gdb и lldb, он заточен под особенности этого языка, что делает жизнь Rust‑разработчиков немного проще.

Отладчик уже нашёл своих пользователей, но контрибьюторы не останавливаются и продолжают активно его развивать, планируя выпускать как небольшие улучшения, так и крупные обновления. А ещё BugStalker может стать отличным учебным проектом для всех, кому интересно, как устроены отладчики изнутри.

js-dos — Александр Гурьянов

https://github.com/caiiiycuk/js‑dos

В 2014 году автор решил перенести классические игры Dune II и Transport Tycoon в браузер. Тогда и появился js‑dos — эмулятор для запуска классических DOS‑программ онлайн. За восемь версий развития он обзавёлся удобным API и уникальными возможностями: поддержкой DOSBox‑X и запуском Windows 9x с 3Dfx‑ускорением.

Эмулятор используют на образовательных сайтах, в цифровых архивах и просто любители ретроигр. Команда работает над ускорением загрузки больших игр, улучшением 3D‑графики и добавлением мультиплеера через WebRTC.

У проекта есть свой сайт, а также каталог поддерживаемых игр (как раз их можно запустить в браузере).

Vanilla Calendar Pro — Юрий Уваров

https://github.com/uvarov‑frontend/vanilla‑calendar‑pro

Vanilla Calendar Pro — это календарь и датапикер, который автор создал для своего рабочего проекта и выложил в npm. После публикации пользователи начали запрашивать новые функции, и проект стал расширяться.

В отличие от других подобных инструментов, Vanilla Calendar Pro позволяет настраивать HTML‑разметку и внешний вид без написания большого объёма кода. Он работает как ядро для отображения дат, месяцев, лет и времени, которое можно адаптировать под конкретные задачи.

Календарь подходит для сайтов и приложений, где требуется отображение или выбор дат. Сейчас проект активно используется и развивается, а в планах — добавление новых функций кастомизации.

WebMarkupMin — Андрей Тарицын

https://github.com/Taritsyn/WebMarkupMin

В 2012 году автор проекта обнаружил, что платформе.NET не хватает хорошего инструмента для минификации HTML‑кода, особенно с учётом новых возможностей HTML5. Так родилась WebMarkupMin — библиотека, которая умеет уменьшать размер файлов HTML, XHTML и XML.

Главные фишки WebMarkupMin — четыре режима минификации пробельных символов и поддержка нестандартной разметки, включая все типы условных комментариев IE и маркеры Blazor. За 12 лет проект преодолел порог в 7 миллионов скачиваний и сейчас используется на сайтах крупных компаний, таких как Dell. Разработчик продолжает улучшать библиотеку и сейчас работает над оптимизацией экранирования значений атрибутов.

kernel-build-containers — Александр Попов

https://github.com/a13xp0p0v/kernel‑build‑containers

Автор проекта — разработчик ядра Linux, который задумал решить проблему toolchain hell — конфликтов между разными версиями компиляторов на одной машине. Инструмент создаёт изолированные контейнеры с нужными компиляторами для сборки системного ПО.

Проект поддерживает основные архитектуры (x86_64, i386, arm64, arm, riscv) и множество версий компиляторов — от gcc-4.9 до gcc-14 и от clang-5 до clang-17. Он также упрощает кросс‑компиляцию ядра Linux за счёт автоматической настройки параметров сборки.

Инструмент уже активно используется системными разработчиками, а в ближайшее время получит поддержку Podman в дополнение к Docker.

IronOS — Иван Зорин

https://github.com/Ralim/IronOS

IronOS — открытая прошивка для паяльников Miniware и Pine64, а также термостолов. Изначально проект существовал как альтернативная прошивка для TS100, но сейчас подходит для самого разного оборудования благодаря вкладу сообщества.

Лауреат гранта — один из четырёх мейнтейнеров, работающих над улучшением документации, автоматизацией процессов и оптимизацией кода. Прошивка добавляет в паяльное оборудование профессиональные функции, например поддержку термопрофилей.

Сейчас команда готовит к выпуску стабильную версию 2.23, делая паяльное дело доступнее для начинающих инженеров.

i18n-unused — Максим Вишневский

https://github.com/mxmvshnvsk/i18n‑unused

Разработчик создал i18n‑unused во время перевода документации Vuestic, когда появилась проблема синхронизации переводов. Инструмент анализирует исходный код на наличие токенов локализации, находит неиспользуемые переводы и может синхронизировать языковые конфиги.

В отличие от появившихся позже аналогов, решение не ограничивается поиском неиспользуемых переводов и работает с разными языками программирования. Несмотря на бета‑статус, пакет уже активно применяется в продакшне, и у него есть стабильный API.

К выпуску готовится мажорный релиз с улучшенным ядром для более глубокой интеграции в CI/CD‑процессы. Следить за новостями проекта можно в телеграм‑канале автора.

Talker — Станислав Ильин

https://github.com/Frezyx/talker

Talker — библиотека для Dart. Она появилась, когда разработчик столкнулся с проблемой отладки большого проекта. Вместо размытых сообщений в духе «оно сломалось», инструмент собирает детальные «слепки» состояния приложения, позволяя тестировщикам и пользователям отправлять информативные баг‑репорты.

Главное преимущество Talker — простота использования. В отличие от других библиотек логирования, достаточно установить пару пакетов, и система начнёт автоматически собирать логи без необходимости вручную настраивать логгер по всему коду.

Сейчас библиотека в стабильной версии 4.7, работает во многих продакшн‑приложениях и готовится к релизу версии 5 с тремя новыми модулями. Следить за развитием проекта можно в телеграм‑канале автора.

Трек «Машинное обучение»

VLMHyperBench — Антон Ширяев

https://github.com/VLMHyperBenchTeam/VLMHyperBench

В октябре 2024 года студенты магистратуры AI Talent Hub в ИТМО разработали VLMHyperBench — фреймворк для оценки возможностей Vision Language Models (VLM) в распознавании русскоязычных документов с целью автоматизации документооборота.

Инструмент позволяет сравнивать модели, которые нельзя запустить в одном окружении, в том числе на разных фреймворках инференса, оценивать промпты для разных типов документов и полей, а также легко добавлять свои данные, новые модели и метрики. Он пригодится как исследователям для сравнения и анализа работы моделей, так и бизнесу для оценки их работы с реальными документами.

Сейчас проект активно дорабатывается. Следить за обновлениями можно в телеграм‑канале.

Faster COCO Eval — Михаил Степанов

https://github.com/MiXaiLL76/faster_coco_eval

В 2021 году автор проекта столкнулся с проблемой: классический алгоритм COCO‑валидации работал слишком долго, решая задачи с тысячами объектов на одном изображении. Так появился Faster COCO Eval — инструмент, который ускоряет процесс в три раза для стандартных задач и больше чем в 10 раз для сложных случаев.

Библиотека уже интегрирована в популярные инструменты TorchMetrics и d‑fine, активно используется CV‑разработчиками для подсчёта метрик моделей детекции. В планах — добавление дополнительных визуализаций с bbox, переход на C++20 и интеграция с Ultralytics.


Поздравляем победителей! А если вы хотите принять участие в следующем конкурсе грантов Yandex Open Source, следите за нашими анонсами.

Автор: veged

Источник

Rambler's Top100