-
-
Notifications
You must be signed in to change notification settings - Fork 2
Configuration
deucebucket edited this page Dec 12, 2025
·
2 revisions
All settings are configured through the web UI at Settings.
| Setting | Default | Description |
|---|---|---|
| Library Paths | [] |
Folders to scan (one per line) |
| Naming Format | author/title |
Folder structure for renames |
| Series Grouping | false |
Enable Author/Series/# - Title format |
| Auto-Fix | false |
Automatically apply safe fixes |
| Protect Author Changes | true |
Require approval for drastic author changes |
| Scan Interval | 6 hours |
How often to auto-scan |
| Setting | Description |
|---|---|
| AI Provider | Gemini (recommended) or OpenRouter |
| API Key | Your API key from the provider |
| Model | Which AI model to use |
- Danger Zone (reset database, clear history)
- Bug report generator
- Live logs
Build your own folder structure using tags:
| Tag | Description | Example |
|---|---|---|
{author} |
Author name | Brandon Sanderson |
{title} |
Book title | The Final Empire |
{series} |
Series name | Mistborn |
{series_num} |
Book number | 1 |
{narrator} |
Narrator name | Michael Kramer |
{year} |
Publication year | 2006 |
{edition} |
Edition info | 30th Anniversary |
{variant} |
Format variant | Graphic Audio |
Example templates:
{author}/{title} → Brandon Sanderson/The Final Empire/
{author}/{series}/{series_num} - {title} → Brandon Sanderson/Mistborn/1 - The Final Empire/
{author} - {title} ({narrator}) → Brandon Sanderson - The Final Empire (Michael Kramer)/
Missing data is automatically cleaned up - empty tags disappear.
When enabled (or using {series} in template), books get organized as:
Author/Series Name/1 - Book Title/
Author/Series Name/2 - Book Title/
Standalone books stay as Author/Title/.
Found in Settings → Advanced:
- Download backup - Creates .zip with settings, groups, database
- Restore backup - Upload previous backup
- Current state backed up before restore (just in case)
| Provider | Free Tier |
|---|---|
| Gemini | 14,400 calls/day |
| OpenRouter | Varies by model |
The app defaults to 2000 calls/hour to stay well under limits.
Settings are stored in:
-
config.json- General settings -
secrets.json- API keys (gitignored) -
library.db- Database
For Docker, these are stored in the /data volume.