# AGENTS.md - Developer Guide for Insertr

## Build/Test Commands
Let me handle running and building the server. I run just dev in a different terminal, so you can just test the api directly, without spinning up an instance.
- `just dev` - Full-stack development (recommended)
- `just build` - Build entire project (Go binary + JS library)
- `just build-lib` - Build JS library only
- `just test` - Run tests (placeholder, no actual tests yet)
- `just lint` - Run linting (placeholder, no actual linting yet)
- `just air` - Hot reload Go backend only
- `go test ./...` - Run Go tests (when available)

## Code Style Guidelines

### Go (Backend)
- Use standard Go formatting (`gofmt`)
- Package imports: stdlib → third-party → internal
- Error handling: always check and handle errors
- Naming: camelCase for local vars, PascalCase for exported
- Comments: package-level comments, exported functions documented

### JavaScript (Frontend)
- ES6+ modules, no CommonJS
- camelCase for variables/functions, PascalCase for classes
- Use `const`/`let`, avoid `var`
- Prefer template literals over string concatenation
- Export classes/functions explicitly, avoid default exports when multiple exports exist

### Database
- Use `sqlc` for Go database code generation
- SQL files in `db/queries/`, schemas in `db/{sqlite,postgresql}/schema.sql`
- Run `just sqlc` after schema changes
