# Development

`benson serve --development` has reloaded a site from disk since version 0.9.0. The flag turns on the file watcher, shows drafts, disables the render cache, and logs form mail instead of sending it. `--no-auth` is valid only together with `--development`.

```bash
benson serve --development --port 3000 --site-dir .
```

A content or template change rebuilds the in-memory store. A parse error is rendered as an HTML page while the flag is on. Production loads content once at startup and does not watch files.

Since version 0.14.0 the server logs an INFO line, `resource usage`, at startup and every five minutes. The fields are `rss_mb`, `cpu_user_ms`, and `cpu_system_ms`. The interval is fixed. A failed reading is logged once at DEBUG and the server keeps running. The task stops on SIGINT or SIGTERM.

`--pid-file .benson.pid` writes the process id after bind and removes the file on exit. The scaffolded preview command uses that flag.

