> ## Documentation Index
> Fetch the complete documentation index at: https://hyperlocalise.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Development

> Develop and validate the hyperlocalise CLI in Go.

## Prerequisites

* Go 1.26+
* `git`
* `make` available in your shell

## Clone repository

```bash theme={null}
git clone https://github.com/hyperlocalise/hyperlocalise.git
cd hyperlocalise
```

## Bootstrap tools and modules

```bash theme={null}
make bootstrap
```

This downloads Go modules and installs the pinned lint toolchain.

## Daily development loop

```bash theme={null}
make fmt
make lint
make test
make check-build
```

## Run the CLI locally

```bash theme={null}
make run
# or
go run -ldflags "-X main.version=dev" ./apps/cli
```

## Install local binary

```bash theme={null}
make install
hyperlocalise version
```

## Key code locations

* `apps/cli/cmd/`: Cobra commands, flags, and CLI output behavior
* `pkg/i18nconfig/`: `i18n.yml` and `i18n.jsonc` parsing and validation
* `apps/cli/internal/i18n/runsvc/`: `run` planning and execution flow
* `apps/cli/internal/i18n/syncsvc/`: sync orchestration and conflict logic
* `internal/i18n/storage/`: adapter contracts and provider integrations

## Before opening a PR

```bash theme={null}
make precommit
```

This runs formatting, linting, tests, and build checks in the same flow used by contributors.
