Shelfmark

Search and download books and audiobooks from multiple sources. Features a unified queue, multi-user support, and seamless integration with digital libraries.

This self-hosted web interface provides a centralized platform for searching and downloading books and audiobooks. Designed to work alongside existing digital library tools, it requires no external dependencies and offers automatic imports.

Key features:

  • Multiple Sources: Access archive websites, Torrents, Usenet, and IRC from a single interface.
  • Dual Search Modes: Use Direct mode for immediate results, or Universal mode to aggregate releases via metadata providers.
  • Multi-User Requests: Share access with others. Users can browse and submit download requests for admin approval.
  • Advanced Authentication: Secure your instance with OIDC single sign-on, proxy authentication, or a Calibre-Web database.
  • Network Resilience: Ensure reliable access with built-in Cloudflare bypassing, automatic DNS rotation, and optional Tor routing.

Directory Structure

shelfmark
db-data
.env
docker-compose.yml

docker-compose.yml

services:
  shelfmark:
    image: ghcr.io/calibrain/shelfmark:latest
    container_name: shelfmark
    restart: unless-stopped
    ports:
      - 3000:3000
    environment:
      - DATABASE_URL=postgresql://shelfmark:${POSTGRES_PASSWORD}@db:5432/shelfmark
      - NEXTAUTH_URL=http://localhost:3000
      - NEXTAUTH_SECRET=${NEXTAUTH_SECRET}
    depends_on:
      - db

  db:
    image: postgres:15-alpine
    container_name: shelfmark_db
    restart: unless-stopped
    volumes:
      - ./db-data:/var/lib/postgresql/data
    environment:
      - POSTGRES_USER=shelfmark
      - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
      - POSTGRES_DB=shelfmark

.env

POSTGRES_PASSWORD=your_secure_database_password
NEXTAUTH_SECRET=your_random_generated_secret_string
Categories:

Share:

Ad
Favicon

 

  
 

Similar to Shelfmark

Favicon

 

  
  
Favicon

 

  
  
Favicon