## Local dev setup

`npm run setup`

This will generate the required `.env` file, `apache` configs, commands and php extensions to install and enable on the server (if needed).

## Local dev workflow

1. `npm start`
2. Open `http://localhost:8080`

To debug and develop php components, run `npm run php`. This will start the PHP server on `http://localhost:8000` and inject required environment variables from `.env`. It will also serve the static 11ty files from `dist`, so you can test the full site locally while leaving 11ty running to generate updates to files it watches.

## Commands

- `npm run start`: starts 11ty.
- `npm run start:quick`: starts 11ty a bit quicker (provided it's already been built).
- `npm run build`: builds static site output.
- `npm run debug`: runs 11ty with additional debug output.
- `npm run php`: starts a PHP server for local development.
- `npm run update:deps`: checks for dependency updates and updates 11ty.
- `npm run setup`: populates `.env` from 1Password and installs dependencies using `npm` and `composer`.
- `npm run clean`: removes the `dist` and `.cache` folders.
- `npm run clean:cache`: removes the `.cache` folder.
- `npm run clean:dist`: removes the `dist` folder.

## Required environment variables

```plaintext
POSTGREST_URL              # client + server
POSTGREST_API_KEY          # client + server
MASTODON_ACCESS_TOKEN      # server
MASTODON_SYNDICATION_TOKEN # server
FORWARDEMAIL_API_KEY       # server
BOOK_IMPORT_TOKEN          # server
WATCHING_IMPORT_TOKEN      # server
TMDB_API_KEY               # server
NAVIDROME_SCROBBLE_TOKEN   # server
NAVIDROME_API_URL          # server
NAVIDROME_API_TOKEN        # server
ARTIST_IMPORT_TOKEN        # server
```