title: Development description: Run and manage your Hatk server during development.#
hatk dev#
The primary development command. Starts the full development environment:
hatk dev
This runs three steps in sequence:
- Starts the local PDS via Docker Compose (if
docker-compose.ymlexists) - Seeds test data by running
seeds/seed.ts - 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.
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.
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.
hatk reset
This removes the SQLite database file and resets the local PDS container, giving you a fresh start.
hatk schema#
Print the SQLite table schema derived from your lexicon definitions.
hatk schema
Shows the SQL CREATE TABLE statements that would be generated from your record lexicons. Useful for understanding how lexicon fields map to database columns.