- Выпущена версия 1.0 открытого проекта Gitmal — генератора статических веб-представлений Git-репозиториев.
- Инструмент позволяет создавать статические сайты для навигации по структуре репозитория без необходимости серверных скриптов.
- Поддерживаются темы оформления, подсветка синтаксиса, отображение markdown, а также инкрементальные обновления и сжатие контента.
Проект Gitmal, недавно достигнувший версии 1.0, представляет собой инструмент для генерации статических веб-сайтов, предназначенных для удобной навигации по содержимому Git-репозиториев. Созданный на языке программирования Go и распространяемый под лицензией MIT, Gitmal доступен на платформе GitHub.
Основная особенность решения заключается в формировании наглядных веб-страниц, стилизованных под GitHub, однако работающих исключительно на статическом HTML без необходимости выполнения скриптов на сервере. Это значительно снижает требования к серверным ресурсам и упрощает развертывание таких сайтов.
Gitmal предоставляет функционал отображения не только структуры каталогов и файлов с подсветкой синтаксиса, но и отдельные представления для веток, тегов и коммитов. Кроме того, поддерживается рендеринг содержимого в формате markdown, что расширяет возможности визуализации документации.
Для поддержания актуальности веб-представления проект предлагает механизм инкрементальных обновлений, при которых страницы, отсутствующие на сайте, генерируются автоматически при изменениях в репозитории. Дополнительно реализована минификация и сжатие конечных файлов с помощью флагов -minify и -gzip, что позволяет уменьшить размер генерируемого контента.
Тестирование на примерах крупных репозиториев, таких как Zig, ZX и my-badges, показало, что генерация полного набора страниц занимает около 25 минут на MacBook Air с процессором M2 и приводит к формированию порядка 2 ГБ статического контента.
Gitmal открывает новые возможности для создания лёгких, быстро загружаемых веб-сайтов, упрощающих просмотр и анализ содержимого Git-репозиториев без сложных серверных настроек.
