Repository navigation
Getting Started
Welcome to Bindarr! This guide walks you through setting up your own Bindarr server, initializing your admin account, setting up card scanning models, and adding your first cards.
- Docker & Docker Compose (recommended) OR Node.js 18+ / Prebuilt Binary.
- A modern web browser with camera support (Chrome, Safari, Firefox, Edge).
- A smartphone on the same local network (if you plan to scan physical cards with your phone camera).
Create a directory on your host machine, create a docker-compose.yml file:
services:
bindarr:
image: ghcr.io/thenotoriousjeremy/bindarr:latest
container_name: bindarr
restart: unless-stopped
ports:
- "3001:3001" # HTTP: use behind a reverse proxy or local access
- "3443:3443" # HTTPS: use for direct LAN access (camera scanning requires HTTPS)
environment:
# Optional: set a custom session/admin configuration
- TRUST_PROXY=1
volumes:
- bindarr-data:/app/database
volumes:
bindarr-data:Start the container:
docker compose up -dWhich port should you use?
- If you are using a reverse proxy (Caddy, Nginx Proxy Manager, Traefik), point your proxy to
http://localhost:3001.- If you have no proxy and want to scan cards from your phone on your local network, navigate directly to
https://<YOUR-SERVER-IP>:3443. Modern browsers require HTTPS to grant camera access. Accept the self-signed certificate warning once.
- Open your browser and navigate to
http://localhost:3001(orhttps://<YOUR-SERVER-IP>:3443). - On first launch, Bindarr detects an uninitialized database and displays the Initial Admin Setup screen.
- Enter your desired password for the default
adminaccount and submit. - Log in with your new
admincredentials.
(Alternatively, you can set DEFAULT_ADMIN_PASSWORD=your_password in your environment variables to automatically initialize the admin account on startup).
Bindarr uses lightweight neural networks to detect card boundaries and identify artwork. Because the models are licensed under AGPL-3.0 and Bindarr is MIT, they are downloaded on demand rather than bundled.
Run the download script inside the running container:
docker exec bindarr node scripts/fetch-models.mjs(This downloads the cornelius.onnx corner detector (~4.2MB) and milo.onnx visual embedder (~5.4MB) into your persistent storage volume).
To identify cards, the visual embedder needs a catalog of cards to compare against:
-
Option A (Instant Fallback Catalogs):
Run the fetch script with the
--catalogsflag to download prebuilt English MTG and Pokémon catalogs:docker exec bindarr node scripts/fetch-models.mjs --catalogs -
Option B (Build Catalogs from Admin UI - Recommended):
- Go to Admin → Catalogs in the Bindarr web UI.
- Select your game (Pokémon or Magic: The Gathering) and language (e.g. English, Japanese, French).
- Click Build Catalog.
- The server will cache card metadata and generate high-resolution visual embeddings with live progress updates.
Navigate to Add Cards in the top navigation bar:
- Camera Scanner: Click Scan, hold a card in front of your camera. Bindarr's in-browser vision detector will highlight the card boundary with a green box, capture, dewarp, and match it against your catalog.
-
Text Search: Type the card name, set code, or collector number (e.g.
Charizard base1orBlack Lotus) to browse set card lists and add individual or bulk cards. - Language & Printing: Choose condition (Near Mint, Lightly Played, etc.), printing (Normal, Foil, Reverse Holofoil), and language.
- Go to Storage (or Containers).
- Click Add Container and choose between:
- Binder: Specify page count and pocket layout (e.g., 9-pocket 3x3 grids).
- Box: Specify number of rows and divider capacity.
- Choose a sorting order:
- Custom: Manually arrange cards with drag-and-drop or tap-to-file.
- Set & Number: Automatically sort cards by official set release order and collector number.
- Price, Name, Color/Type, or Language: Group cards according to your preferred taxonomy.
- Turn on Arrange Mode to drag cards between binder pockets or box rows.
- Configure production SSL certificates: Reverse Proxy & HTTPS
- Learn how to manage physical deck lists: Deck Builder & Checkout
- Track PSA and CGC graded slabs: Pricing & Graded Slabs
- Set up automatic off-site backups: Backup & Restore
Bindarr is licensed under the MIT License.
Need help? Check Troubleshooting & FAQ or open an issue on GitHub.