The application does not rely heavily on environment variables for runtime logic, but the following are respected:
| Variable | Required | Default | Description |
|---|---|---|---|
NODE_ENV |
No | development |
Affects logging verbosity and some build optimizations. |
CI |
No | false |
If true, disables interactive prompts and progress bars. |
UV_THREADPOOL_SIZE |
No | Auto | Controls libuv threadpool, relevant for sharp concurrency. |
The project uses strict TypeScript configuration.
tsconfig.base.json: Shared base config.tsconfig.json: Root reference config.vitest.config.ts: Test configuration.
The apo CLI mostly uses command-line flags, but it generates a manifest file (manifest.json) in the output directory.
This file maps source images to their optimized variations.
Location: [output-dir]/manifest.json
Usage: Consumed by the Web Runtime (@aitools-photo-optimizer/web) to resolve assets.
As detailed in Security, this tool does not handle application secrets (API keys, DB passwords).
- Do not commit
.envfiles. - Do not embed secrets in source image metadata.