--- icon: material/application-brackets-outline tags: ["iptvc", "разработка"] --- # :material-application-brackets-outline: Среда разработки ## Быстрый старт Для локальной разработки `iptvc` достаточно установить [Go 1.23.6+][1] и клонировать репозиторий: ```bash git clone https://git.axenov.dev/IPTV/iptvc.git cd iptvc go run . serve -i playlists.ini -p 8080 --check ``` Веб-интерфейс будет доступен по адресу . ## Требования | ПО | Версия | Назначение | | ----------- | --------------------- | ------------------------------------- | | [Go][1] | 1.23.6+ | Компиляция и запуск | | [Make][2] | любая | Сборка через `Makefile` (опционально) | | [Docker][3] | с `docker compose` v2 | Полное окружение (опционально) | [1]: https://go.dev/dl/ [2]: https://www.gnu.org/software/make [3]: https://docs.docker.com/engine/install ## Команды для разработки ```bash # Запуск веб-сервера с фоновой проверкой go run . serve -i playlists.ini -p 8080 --check # Запуск проверки без веб-сервера go run . check -i playlists.ini --repeat 1 # Сборка бинарника go build -o iptvc . # Проверка кода go vet ./... # Сборка под все платформы make release ``` ## Файлы конфигурации Для работы `iptvc` нужны два файла рядом с бинарником: - `playlists.ini` — список плейлистов. Формат описан в [справочнике форматов](../../common/formats/playlists.md). - `channels.json` — правила тегов каналов. Формат описан в [справочнике форматов](../../common/formats/channels.md). - `config.yml` — конфигурация программы. Описание — в [разделе config.yml](../../common/config/config.md). ## Полное Docker-окружение Полная инфраструктура проекта (nginx, KeyDB, checker, docs) развёртывается через Docker. Подробнее — в разделе [Развёртывание](../site/deploy.md). ## Дополнительные материалы - [Компиляция из исходного кода](compile.md) - [Построение Docker-образа](docker.md) - [Архитектура iptvc](arch.md) - [Развёртывание и доставка обновлений](../site/deploy.md)