Documentation Index
Fetch the complete documentation index at: https://engineering.unkey.com/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
Some of this can be automatically installed via make install-brew-tools
Initial setup
Clone the repository and install dependencies:
git clone https://github.com/unkeyed/unkey
cd unkey
make install
We use depot as build runner and right now that is not optional.
cp ./dev/.env.depot.example ./dev/.env.depot
# Edit ./dev/.env.depot with your Depot credentials
Run dev mode
Start the full development setup:
You get:
- Tilt UI at
http://localhost:10350
- Various services port-forwarded
- Dashboard at
http://localhost:3000
Local HTTPS with Frontline (optional)
Set up local TLS for *.unkey.local:
- Configure local DNS:
./dev/setup-wildcard-dns.sh
- Start the minikube tunnel in another terminal:
- Open the local domain:
open https://app.unkey.local
Tilt generates trusted TLS certificates using mkcert and Frontline terminates TLS on port 443.
Stop the development environment
Environment configuration
Local authentication
Set local auth mode in your .env file:
Optional services
WorkOS authentication:
AUTH_PROVIDER="workos"
WORKOS_CLIENT_ID=<your client ID>
WORKOS_API_KEY=<your API key>
WORKOS_COOKIE_PASSWORD=<your base64 password>
Stripe billing:
STRIPE_SECRET_KEY=<your Stripe secret key>
Seed local data
make unkey dev seed local
Test locally
Run Go tests with Bazel:
Run a single Go test:
bazel test //pkg/cache:cache_test --test_filter=TestCacheName
Run TypeScript tests with pnpm:
Code quality
Troubleshooting
Failure: resource_exhausted: too many requests
If you receive an error message similar to below, make sure you authenticate your terminal with buf, you can sign up for a free account at: https://buf.build/home
Failure: resource_exhausted: too many requestssh
Please see https://buf.build/docs/bsr/rate-limits/ for details about BSR rate limiting.
svc/sentinel/proto/generate.go:4: running "go": exit status 1
Failure: resource_exhausted: too many requests
Please see https://buf.build/docs/bsr/rate-limits/ for details about BSR rate limiting.
svc/vault/proto/generate.go:3: running "go": exit status 1
make: *** [generate] Error 1