SourceHut — это набор лёгких модулей и сервисов для разработки программного обеспечения, ориентированный на минималистичный интерфейс, модульность и открытый код. Платформа предоставляет инструменты для хостинга репозиториев, непрерывной интеграции, трекинга задач, рассылок и размещения статических сайтов, объединяя их в единое интегрируемое окружение с упором на эффективность и контроль над процессами разработки. Проект возник как альтернатива монолитным веб-платформам и позиционируется как средство, минимизирующее избыточную функциональность и отвлекающие элементы интерфейса.
Исторически SourceHut развивался вокруг идеи простых, хорошо документированных сервисов, которые можно использовать по отдельности или вместе, при этом делая акцент на прозрачности и совместимости с классическими инструментами разработчиков. Архитектура поддерживает несколько систем контроля версий и стандартные форматы артефактов, предоставляет настраиваемые конвейеры для сборки и тестирования, а также средства для асинхронного взаимодействия команд через почтовые списки и простые веб-интерфейсы. Проект активно использует открытые лицензии и допускает самостоятельное развёртывание компонентов.
- Хостинг исходного кода: поддержка репозиториев с минималистичным веб-интерфейсом и возможностью управления проектами и их видимостью.
- Непрерывная интеграция (CI): лёгкие и настраиваемые конвейеры сборки, ориентированные на гибкость и возможность запуска в распределённых средах.
- Трекеры задач: модульные инструменты для ведения задач и планирования, интегрируемые с репозиториями и почтовыми рассылками.
- Почтовые списки: встроенная поддержка рассылок и обсуждений по электронной почте, используемая как основной канал коммуникации и обзора изменений.
- Статические сайты и страницы проектов: простые механизмы для публикации статического контента и документации с контролем версий.
- API и интеграции: программные интерфейсы для автоматизации задач и подключения внешних инструментов.
- Модульность и развёртывание: возможность раздельного использования и самостоятельного развёртывания отдельных компонентов на собственном оборудовании.
- Открытость и лицензии: код проекта распространяется под открытыми лицензиями, что позволяет аудит и адаптацию под собственные требования.
- Минималистичный интерфейс: упор на текстовые и консольные рабочие процессы, компенсирующие отказ от избыточных графических элементов.
- Конфиденциальность и контроль: ориентированность на контроль над данными и прозрачность операций, включая способы локального хранения и обработки артефактов.