Files
ReadMeABook/documentation/TABLEOFCONTENTS.md
T
kikootwo a97979358f Implement file hash-based library matching and remove fuzzy ASIN matching
Adds file hash-based matching for Audiobookshelf library items to ensure 100% accurate ASIN assignment for RMAB-organized content. Removes fuzzy matching from library availability checks, making all matching ASIN-only to eliminate false positives and race conditions. Updates database schema, processors, and matcher utilities; adds new tests and documentation for the new matching strategy. Removes obsolete scripts, Dockerfile, and related tests; updates docker-compose for test environments.
2026-01-28 11:42:00 -05:00

11 KiB

Documentation Table of Contents

Purpose: Quick navigation for AI to locate relevant documentation without reading all files.

Authentication & Users

Configuration & Setup

Database & Data Models

Plex Integration

Audiobookshelf Integration (PRD - Not Implemented)

Audible Integration

E-book Sidecar

Automation Pipeline

Background Jobs

Logging

Notifications

Frontend Components

BookDate (AI Recommendations)

Admin Features

Fixes & Improvements

Deployment

Testing

Feature-Specific Lookups

"How do I add a new audiobook?"integrations/audible.md (scraping), phase3/README.md (automation) "How do torrent downloads work?"phase3/qbittorrent.md, backend/services/jobs.md "How do Usenet/NZB downloads work?"phase3/sabnzbd.md, backend/services/jobs.md "How does Plex matching work?"integrations/plex.md "How does e-book sidecar work?"integrations/ebook-sidecar.md "How do I enable e-book downloads?"integrations/ebook-sidecar.md, settings-pages.md "How do scheduled jobs work?"backend/services/scheduler.md "How do I configure external services?"setup-wizard.md, settings-pages.md "What's the database schema?"backend/database.md "How does authentication work?"backend/services/auth.md "How do I change my password?"backend/services/auth.md (local users only - accessed via user menu in header) "How do I delete requests?"admin-features/request-deletion.md "How do I approve/deny user requests?"admin-features/request-approval.md "How do I enable auto-approve for requests?"admin-features/request-approval.md "How do I customize audiobook folder organization?"settings-pages.md, phase3/file-organization.md "How do I deploy?"deployment/docker.md (multi-container), deployment/unified.md (all-in-one) "How do I use the unified container?"deployment/unified.md "OAuth redirects to localhost / PUBLIC_URL not working"backend/services/environment.md "What environment variables do I need?"backend/services/environment.md "How does chapter merging work?"features/chapter-merging.md "How does logging work?"backend/services/logging.md "How do BookDate card stack animations work?"features/bookdate-animations.md "How does Audiobookshelf integration work?"features/audiobookshelf-integration.md (PRD only, not implemented) "How do I use OIDC/Authentik/Keycloak?"features/audiobookshelf-integration.md (PRD only, not implemented) "How does manual user registration work?"features/audiobookshelf-integration.md (PRD only, not implemented) "How do I switch from Plex to Audiobookshelf?"features/audiobookshelf-integration.md (PRD only, not implemented) "How does library thumbnail caching work?"features/library-thumbnail-cache.md "Why do BookDate library books show placeholders?"features/library-thumbnail-cache.md "How does file hash matching work?"fixes/file-hash-matching.md "Why is ABS matching the wrong book?"fixes/file-hash-matching.md (file hash prevents false positives)