Files
ReadMeABook/documentation
kikootwo 09e1a0db3a Use .gl for Anna's Archive; add manual-import test
Replace default Anna's Archive base URL from https://annas-archive.li to https://annas-archive.gl across docs, UI components, API routes, processors, services, and tests. Add comprehensive tests for the admin manual-import API route and enhance the manual-import route to fetch missing ASIN details from Audnexus and create audiobook records with proper error handling and logging. Update related test expectations and FlareSolverr test usages to reflect the new default URL.
2026-03-05 12:20:00 -05:00
..

ReadMeABook - Audiobook Library Management

Status: MVP Complete (Phases 1-4 ) | Docker deployment pending

Stack

  • Frontend: Next.js 14+, TypeScript, Tailwind CSS
  • Backend: Node.js/Express via Next.js API routes
  • Database: PostgreSQL (Docker embedded)
  • Queue: Bull + Redis (Docker embedded)
  • Deployment: Single Docker image

Architecture

Docker Container
├── Next.js App (Frontend + Backend)
├── PostgreSQL (users, audiobooks, requests, config, jobs)
├── Bull Queue + Redis (background jobs)
└── Volumes: /config, /downloads, /media

External integrations: Plex (auth + library), Prowlarr/Jackett (indexers), qBittorrent/Transmission (downloads), Audible (metadata scraping)

Core Features (Implemented)

  • Plex OAuth authentication
  • Setup wizard (8 steps: admin, Plex, Prowlarr, download client, paths)
  • Audiobook discovery (popular, new releases via Audible scraping)
  • Request management with status tracking
  • Automation pipeline: search → download → organize → Plex scan
  • Admin dashboard with metrics, active downloads, recent requests
  • Settings pages (Plex, Prowlarr, download client, paths)
  • Scheduled jobs (Plex scan, Audible refresh, retry logic, cleanup)
  • User/admin RBAC

User Flow

  1. Login with Plex → 2. Search/browse audiobooks → 3. Request → 4. Auto: search indexers → download torrent → organize files → scan Plex → 5. Available in Plex library

Documentation Map

Backend:

Integrations:

Automation (Phase 3):

Frontend:

Admin:

Deployment:

Testing:

Development Phases

Phase 1: Foundation (auth, database, setup wizard) Phase 2: User features (discovery, requests, dashboard) Phase 3: Automation (search, download, organize, Plex integration) Phase 4: Admin tools (dashboard, settings, monitoring, scheduled jobs) Phase 5: Enhanced features (WebSockets, advanced search) Phase 6: Advanced admin (analytics, notifications, quality profiles)

Standards

  • Files ≤400 lines
  • File headers link to documentation
  • Update docs before/after code changes
  • Type-safe TypeScript throughout
  • Encrypted sensitive config (AES-256)