chadtmiller.com/hatk
AT Protocol app framework
1
0
---
title: Development
description: Run and manage your Hatk server during development.
---
## `hatk dev`
The primary development command. Starts the full development environment:
```bash
hatk dev
```
This runs three steps in sequence:
1. **Starts the local PDS** via Docker Compose (if `docker-compose.yml` exists)
2. **Seeds test data** by running `seeds/seed.ts`
3. **Starts the Hatk server** with file watching for hot reload
The PDS health is checked at `http://127.0.0.1:2583/xrpc/_health` before proceeding. If it doesn't start within 30 seconds, the command exits.
## `hatk start`
Start the Hatk server without the PDS or seeding. Use this in production.
```bash
hatk start
```
Loads `hatk.config.ts`, connects to the configured relay, and begins serving XRPC endpoints.
## `hatk seed`
Run your seed script against the local PDS.
```bash
hatk seed
```
Executes `seeds/seed.ts` to create test data. The PDS must be running first.
## `hatk reset`
Wipe the database and PDS for a clean development slate.
```bash
hatk reset
```
This removes the SQLite database file and resets the local PDS container, giving you a fresh start.