Honua
// docs & quickstart

Run the server locally. Call it. Keep going.

Four shell blocks from nothing to an authenticated SDK call. No license, no signup, no phone-home. When the runtime is on your laptop, every other guide starts making sense.

Two ways in

Quickstart · go from zero to an authenticated request

1. Start PostGIS and Honua locally.

docker network create honua

docker run -d --name honua-postgis --network honua \
  -e POSTGRES_DB=honua \
  -e POSTGRES_USER=postgres \
  -e POSTGRES_PASSWORD=postgres \
  postgis/postgis:17-3.5-alpine

docker exec honua-postgis pg_isready -U postgres -d honua

docker run -d --name honua-server --network honua -p 8080:8080 \
  -e ConnectionStrings__DefaultConnection="Host=honua-postgis;Database=honua;Username=postgres;Password=postgres" \
  -e HONUA_ADMIN_PASSWORD="change-me-now" \
  -e Security__ConnectionEncryption__MasterKey="test-master-key-that-is-at-least-32-characters-long-for-security" \
  -e HostValidation__AllowedHosts__0="localhost" \
  -e HostValidation__AllowedHosts__1="127.0.0.1" \
  honuaio/honua-server:latest

curl http://localhost:8080/healthz/ready

This is the local path. Use managed secrets, real keys, and explicit host settings for production deployments.

2. Call an authenticated admin endpoint.

# Get an admin token using the password above.
TOKEN=$(curl -s -X POST http://localhost:8080/admin/login \
  -H 'Content-Type: application/json' \
  -d '{"password":"change-me-now"}' | jq -r .token)

curl http://localhost:8080/admin/services \
  -H "Authorization: Bearer $TOKEN"

3. Install an SDK and make a call.

pip install honua-sdk

python - <<'PY'
from honua_sdk import HonuaClient
client = HonuaClient(base_url="http://localhost:8080", token="$TOKEN")
print(client.services.list())
PY

4. Keep going.

From here:

Source

Everything ships on github.com/honua-io — server, SDKs, mobile, Terraform, benchmarks, MCP, and the marketplace listings.