Most settings are configured via the admin UI (Settings panel). This document covers environment variables, API key setup, and optional integrations.
Copy .env.example to .env and customize for your deployment:
cp .env.example .env
# Edit .env with your settings| Variable | Description | Default |
|---|---|---|
MUSIC_LIBRARY_PATH |
Host path to your music folder (mounted at /music) |
/data/music |
DATABASE_URL |
PostgreSQL connection string | postgresql+asyncpg://... |
REDIS_URL |
Redis connection string | redis://localhost:6379/0 |
FRONTEND_URL |
Base URL for OAuth callbacks | http://localhost:4400 |
S3_BACKUP_ACCESS_KEY_ID |
AWS access key for S3 backup | (none) |
S3_BACKUP_SECRET_ACCESS_KEY |
AWS secret key for S3 backup | (none) |
S3_BACKUP_BUCKET |
S3 bucket name for backups | (none) |
S3_BACKUP_REGION |
AWS region for S3 bucket | us-east-1 |
S3_BACKUP_PREFIX |
Key prefix for backup objects in bucket | (none) |
Important: If accessing Familiar from a remote machine (not localhost), update FRONTEND_URL to use your server's hostname or IP address:
FRONTEND_URL=http://myserver:4400
All other settings (API keys, community cache) are configured via the Admin UI at /admin.
The Anthropic API powers the AI chat feature, allowing you to ask questions about your music library and get intelligent recommendations.
- Go to console.anthropic.com
- Sign up or log in to your account
- Navigate to Settings → API Keys
- Click Create Key and give it a name (e.g., "Familiar")
- Copy the key (starts with
sk-ant-...) - Add it in Familiar's Admin UI at
/admin
Pricing note: Anthropic charges per token. Typical music library queries cost fractions of a cent. See anthropic.com/pricing for current rates.
- Go to https://developer.spotify.com/dashboard
- Create a new app
- Set redirect URI to
{FRONTEND_URL}/api/v1/spotify/callback(e.g.,http://localhost:4400/api/v1/spotify/callback) - Copy Client ID and Client Secret
- Add them in Familiar's Admin UI at
/admin
- Go to https://www.last.fm/api/account/create
- Create a new application
- Copy API Key and API Secret
- Add them in Familiar's Admin UI at
/admin
If you access Familiar over Tailscale, you can enable HTTPS for full PWA support (install prompts, background sync, etc.).
-
Enable HTTPS certificates in your Tailscale admin console:
- Go to DNS settings
- Enable "HTTPS Certificates"
-
Use
tailscale serveon your server (easiest method):# Proxy HTTPS to Familiar on port 4400 tailscale serve --bg https / http://localhost:4400 -
Access via HTTPS:
https://your-server.<tailnet-name>.ts.net
This automatically provisions a Let's Encrypt certificate and handles renewal.
Alternative: Manual certificates
If you need cert files for nginx/caddy:
tailscale cert your-server.<tailnet-name>.ts.netThis creates .crt and .key files (you're responsible for renewal every 90 days).
See Tailscale HTTPS docs for more details.
Familiar includes an optional community cache that shares pre-computed audio analysis between users.
How it works:
- When you scan a track, Familiar generates an AcoustID fingerprint
- The fingerprint is hashed (SHA256) - one-way, anonymous, not reversible
- The hash is used to look up pre-computed CLAP embeddings and audio features
- If found, analysis is instant. If not, Familiar computes locally and optionally contributes back
Privacy guarantees:
- Only hashed fingerprints are transmitted - no track names, artists, or file paths
- Fingerprint hashes are one-way - your library contents cannot be determined
- Contribution is opt-in (lookup is enabled by default)
Benefits:
- New installations can skip hours of audio analysis
- Popular tracks are analyzed once across the community
- Your processing helps future users
Configure in Admin (/admin) under Community Cache.
Familiar can back up your entire music library and configuration to Amazon S3 Glacier Deep Archive for long-term archival storage at ~$1/TB/month.
What gets backed up:
- Audio files from all configured library paths
- Database (tracks, playlists, analysis data)
- Settings and configuration
- Album artwork and music videos
- User profiles and favorites
Setup:
-
Set S3 credentials in your
docker/.envfile:S3_BACKUP_ACCESS_KEY_ID=your-access-key S3_BACKUP_SECRET_ACCESS_KEY=your-secret-key S3_BACKUP_BUCKET=your-bucket-name S3_BACKUP_REGION=us-east-1 S3_BACKUP_PREFIX=familiar/ # optional, organizes files in bucket -
Enable and configure in Settings > Cloud Backup:
- Click "Validate Credentials" to verify your S3 access
- Enable scheduled backups (daily/weekly/monthly)
- Or run a manual backup immediately
-
Restore from the same Settings panel - select a backup snapshot and restore specific components (database, settings, audio files, etc.)
Note: Glacier Deep Archive has a 12-hour retrieval time for restores. Standard retrieval fees apply (~$0.02/GB).