# Разработка ## Локальный запуск ### Бэкенд (Go) Из корня репозитория: ```bash go build -o hnh-map ./cmd/hnh-map ./hnh-map -grids=./grids -port=8080 ``` Или без сборки: ```bash go run ./cmd/hnh-map -grids=./grids -port=8080 ``` Сервер будет отдавать статику из каталога `frontend/` (нужно предварительно собрать фронт, см. ниже). ### Фронтенд (Nuxt) ```bash cd frontend-nuxt npm install npm run dev ``` В dev-режиме приложение доступно по корню (например `http://localhost:3000/`). Бэкенд должен быть доступен; при необходимости настройте прокси в `nuxt.config.ts` (например на `http://localhost:8080`). ### Docker Compose (разработка) ```bash docker compose -f docker-compose.dev.yml up ``` Dev-композ поднимает два сервиса: - `backend` — Go API на порту `3080` (без сборки/раздачи фронтенд-статики в dev-режиме). - `frontend` — Nuxt dev-сервер на порту `3000` с live-reload; запросы к `/map/api`, `/map/updates`, `/map/grids` проксируются на бэкенд. Используйте [http://localhost:3000/](http://localhost:3000/) как основной URL для разработки интерфейса. Порт `3080` предназначен для API и backend-эндпоинтов; корень `/` может возвращать `404` в dev-режиме — это ожидаемо. ### Сборка образа и prod-композ ```bash docker build -t hnh-map . docker compose -f docker-compose.prod.yml up -d ``` В prod фронт собран в образ и отдаётся бэкендом из каталога `frontend/`; порт 8080.