Files
hnh-map/CONTRIBUTING.md
Nikolay Tatarinov 82cb8a13f5 Update project documentation and improve frontend functionality
- Updated the backend documentation in CONTRIBUTING.md and README.md to reflect changes in application structure and API endpoints.
- Enhanced the frontend components in MapView.vue for better handling of context menu actions.
- Added new types and interfaces in TypeScript for improved type safety in the frontend.
- Introduced new utility classes for managing characters and markers in the map.
- Updated .gitignore to include .vscode directory for better development environment management.
2026-02-24 23:32:50 +03:00

1.4 KiB

Contributing to hnh-map

Getting started

Clone the repository and run the project locally (see Development):

  • Option A: Docker Compose for development: docker compose -f docker-compose.dev.yml up (frontend on 3000, backend on 3080).
  • Option B: Run Go backend from the repo root (go run ./cmd/hnh-map -grids=./grids -port=8080) and Nuxt separately (cd frontend-nuxt && npm run dev). Ensure the frontend can reach the backend (proxy or same host).

Code layout

  • Backend: Entry point is cmd/hnh-map/main.go. All application logic lives in internal/app/ (package app): app.go, auth.go, api.go, handlers_redirects.go, client.go, client_grid.go, client_positions.go, client_markers.go, admin_*.go, map.go, tile.go, topic.go, migrations.go.
  • Frontend: Nuxt 3 app in frontend-nuxt/ (pages, components, composables, layouts, server, plugins, public/gfx). It is served by the Go backend under /map/ with baseURL /map/.

Formatting and tests

  • Go: run go fmt ./... before committing.
  • Add or update tests if you change behaviour; run go test ./... if tests exist.

Submitting changes

  • Open a pull request with a clear description of the change.
  • Mention compatibility with hnh-auto-mapper-server if relevant (e.g. client protocol or API).