Slides supports two configuration modes: environment files for development, and a JSON config file for the standalone binary.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/rawr-ai/slides/llms.txt
Use this file to discover all available pages before exploring further.
Development configuration
In development, configuration is loaded from.env files in each app directory. Copy the example files before your first run:
- Frontend:
http://localhost:3001 - Backend:
http://localhost:3000
VITE_SERVER_URL in apps/web/.env points at the backend URL, and CORS_ORIGIN in apps/server/.env allows the frontend origin.
Standalone binary configuration
When running the standalone binary, configuration is resolved from three sources in priority order:- CLI flags — highest priority, override everything
- Environment variables — middle priority
- Saved config file — used as persistent defaults
- Built-in defaults — fallback values
Config file
The config file stores defaults that were saved with--init. The file location is platform-dependent:
| Platform | Path |
|---|---|
| macOS / Linux | ~/.config/slides/config.json |
| Windows | %APPDATA%\slides\config.json |
| Field | Type | Description |
|---|---|---|
port | number | Port to listen on |
dataDir | string | Absolute path to slideshow JSON directory |
apiKey | string | Anthropic API key for AI features |
open | boolean | Whether to open the browser on start |
Saving defaults
The easiest way to write the config file is with the--init flag:
slides (with no flags) will use those defaults.
You can also edit the config file directly with any text editor. The file is plain JSON.
Updating saved defaults
Re-run--init with updated values to overwrite the file:
Flags not passed to
--init do not carry over from a previous config — the entire file is rewritten on each --init run. Include all values you want to persist.Port configuration
- Standalone binary
- Development
Pass
--port at the command line or save it as a default:Data directory
By default the server loads slideshow JSON files from./data/slideshows (relative to the binary location or the working directory). To use a different directory:
- Standalone binary
- Development
--data-dirflag /DATA_DIRenv var- Saved config
dataDir CWD/data/slideshows- Bundled location inside the binary
CORS configuration
CORS is configured via theCORS_ORIGIN environment variable (development) or is automatically set to allow all origins in standalone binary mode.
Development: set CORS_ORIGIN in apps/server/.env to match the frontend origin:
*) automatically because the frontend and API are served from the same port, so the same-origin policy already applies.