Сборщик JavaScript-модулей, который объединяет модули и ресурсы в несколько бандлов и поддерживает разделение кода и обработку не-JS-файлов с помощью loaders.
- Звёзды
- 3,329
- Форки
- 215
- Открытые issues
- 85
- Последний коммит
- 3 дня назад
Что это?
nob.h — библиотека C в одном файле для написания рецептов сборки на C вместо Make, CMake или shell-скриптов. Эта идея называется NoBuild: система сборки проекта запускается с помощью одного лишь компилятора C. Достаточно один раз скомпилировать небольшую программу nob.c, после чего она будет собирать остальную часть проекта.
Библиотеку предполагается копировать в проект как один заголовочный файл. Поскольку логика сборки написана на обычном C, скрипт сборки может напрямую использовать код самого проекта, а проект — пользоваться вспомогательными функциями, написанными для сборки. Автор называет библиотеку экспериментальной и рекомендует её для проектов на C и C++, которым нужна простая и переносимая сборка без сложных систем управления зависимостями.
Автор отмечает, что этот подход больше похож на написание shell-скриптов на C, чем на использование полноценного генератора сборки, поэтому он требует уверенного владения C и готовности самостоятельно писать некоторые утилиты. Существуют реализации той же идеи для C++, Java и Fortran.
Ключевые возможности
- 01Распространяется в виде одного заголовочного файла, который можно напрямую скопировать в проект.
- 02Нужен только компилятор C — без make, CMake или shell.
- 03Логика сборки пишется на C и может использовать общий с проектом код.
- 04Работает в Linux, macOS, Windows, FreeBSD и других системах, для которых доступен компилятор C.
Сценарии использования
- Сборка небольших и средних проектов на C/C++ без установки make или CMake.
- Написание переносимых скриптов сборки, одинаково работающих в разных операционных системах.
- Запуск системы сборки проекта на C с помощью одной команды компилятора.
Быстрый старт
- 1
Скачайте единственный заголовочный файл nob.h из репозитория
- 2
Скопируйте nob.h в свой проект и начните им пользоваться; примеры смотрите в папке how_to/
Что важно знать
- Автор описывает его как экспериментальный исследовательский проект и не заявляет о его пригодности для каких-либо целей.
- Он не подходит для проектов, которые зависят от модулей в стиле CMake и большого количества зависимостей.
- Чтобы писать скрипты сборки, нужно быть готовым самостоятельно реализовывать необходимые вещи на C.
- Он имеет смысл только для проектов на C и C++.
Темы
Частые вопросы
- Что такое nob.h?
- Библиотека C в одном заголовочном файле для написания скриптов сборки на C: для сборки нужен только компилятор C. nob.h — библиотека C в одном файле для написания рецептов сборки на C вместо Make, CMake или shell-скриптов. Эта идея называется NoBuild: система сборки проекта запускается с помощью одного лишь компилятора C. Достаточно один раз скомпилировать небольшую программу nob.c, после чего она будет собирать остальную часть проекта.
- nob.h можно использовать бесплатно? Какая у него лицензия?
- nob.h распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- nob.h всё ещё поддерживается?
- Активно поддерживается. Последний коммит в nob.h — 18 окт. 2026 г..
- Для чего можно использовать nob.h?
- Сборка небольших и средних проектов на C/C++ без установки make или CMake. Написание переносимых скриптов сборки, одинаково работающих в разных операционных системах. Запуск системы сборки проекта на C с помощью одной команды компилятора.
- Как установить nob.h?
- Скачайте единственный заголовочный файл nob.h из репозитория Скопируйте nob.h в свой проект и начните им пользоваться; примеры смотрите в папке how_to/
- Где скачать nob.h?
- Исходный код и инструкции по установке — на GitHub: https://github.com/tsoding/nob.h
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Инструмент для сборки веб-проектов без настройки: объединяет HTML, CSS, JavaScript и ресурсы без конфигурационного файла.
Очень быстрый сборщик JavaScript, TypeScript, JSX и CSS с CLI, API для JavaScript и Go.
Быстрый кроссплатформенный запускатель задач на Go, вдохновлённый Make и настраиваемый через YAML-файл Taskfile.
Быстрый микрофреймворк на C++ в стиле Flask для создания HTTP- и WebSocket-сервисов: header-only и простой в использовании.
Плагинный набор инструментов, который предоставляет Claude Code, Codex и другим агентам для программирования общие агенты, навыки, хуки, память и сканирование безопасности.