* feat(api): add Book and Audiobook lookup and editor controllers Adds search and bulk edit functionality for Books and Audiobooks: - BookLookupController: search by ISBN, ISBN13, ASIN, ForeignId, title - AudiobookLookupController: search by ISBN, ASIN, narrator, title - BookEditorController: bulk update/delete books - AudiobookEditorController: bulk update/delete audiobooks - Editor validators and resources for both entity types * feat(core): add AddBookService and AddAudiobookService Adds services for adding new books and audiobooks with validation: - AddBookService: handles book creation with path generation - AddAudiobookService: handles audiobook creation with narrator-aware paths - AddBookValidator: validates book additions - AddAudiobookValidator: validates audiobook additions * feat(core): add BookFile and AudiobookFile entities and repositories Adds file tracking infrastructure for books and audiobooks: - BookFile entity with format tracking - AudiobookFile entity with audio metadata (duration, bitrate, etc.) - BookFileRepository for book file queries - AudiobookFileRepository for audiobook file queries - Database migration for new tables - Table mappings for new entities * feat(metadata): add Book and Audiobook metadata provider interfaces Adds metadata provider infrastructure for books and audiobooks: - IProvideBookInfo: interface for book metadata lookups - IProvideAudiobookInfo: interface for audiobook metadata lookups - BookMetadata: model for book metadata from external sources - AudiobookMetadata: model for audiobook metadata with narrator info - BookInfoProxy: stub implementation (to be replaced with Goodreads, etc.) - AudiobookInfoProxy: stub implementation (to be replaced with Audible, etc.) * feat(api): add Author and Series repositories, services, and API controllers * feat(ui): add Book and Audiobook Redux store and index pages --------- Co-authored-by: admin <admin@ardentleatherworks.com> |
||
|---|---|---|
| .devcontainer | ||
| .github | ||
| .husky | ||
| .vscode | ||
| distribution | ||
| docker | ||
| docs | ||
| frontend | ||
| Logo | ||
| research | ||
| schemas | ||
| scripts | ||
| src | ||
| .editorconfig | ||
| .gitattributes | ||
| .gitignore | ||
| .secretlintrc.json | ||
| .yarnrc | ||
| azure-pipelines.yml | ||
| build.sh | ||
| CHANGELOG.md | ||
| CLA.md | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| docs.sh | ||
| global.json | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| SECURITY.md | ||
| sonar-project.properties | ||
| test.sh | ||
| tsconfig.json | ||
| yarn.lock | ||
Aletheia
All-in-one media manager for movies, books, and audiobooks.
Overview
Aletheia (from Greek ἀλήθεια - "truth, disclosure") is a unified media management system forked from Radarr. It provides automated monitoring, downloading, and library management for multiple media types through a single interface. It's an ambitious attemp to merge much of the functionality of the arr apps. This, in addition to many personal feature requests, QoL improvements, and privacy/security updates.
Current Status: Active development. Movie functionality inherited from Radarr is working. Multi-media foundation being implemented.
Features
Movies (working):
- Automated monitoring and quality upgrades
- Metadata and artwork management
- Integration with download clients and indexers
Books (in development):
- EPUB, MOBI, PDF quality tracking
- Author and series hierarchy
- Goodreads/Hardcover metadata
Audiobooks (in development):
- M4B, MP3, etc. support
- Narrator tracking
- Duration metadata and Audible integration
General:
- Usenet and BitTorrent support
- SABnzbd, NZBGet, qBittorrent, Deluge, rTorrent, Transmission integration
- Plex and Kodi integration
- Built-in archive extraction (Unpackerr functionality)
Privacy
Telemetry and analytics are disabled by default:
- No usage analytics or behavior tracking
- No machine fingerprinting or unique identifiers
- Error reporting (Sentry) is opt-in
- Update checks only send version and platform info (no personal data)
To enable error reporting for troubleshooting, toggle Analytics in Settings → General.
What data is collected if you opt-in:
- Anonymous error reports via Sentry (stack traces, OS version, app version)
- No personally identifiable information is ever collected
Quick Start
docker run -d \
--name=aletheia \
-e PUID=1000 \
-e PGID=1000 \
-p 7878:7878 \
-v /path/to/config:/config \
-v /path/to/media:/media \
--restart unless-stopped \
ghcr.io/cheir-mneme/aletheia:latest
Web interface: http://localhost:7878
Building from Source
Requirements: .NET 8.0 SDK, Node.js 20+, Yarn
git clone https://github.com/cheir-mneme/aletheia.git
cd aletheia
./build.sh --backend --frontend
dotnet run --project src/Radarr
Roadmap
See ROADMAP.md for detailed phase planning.
Completed:
- Phase 0-1: Privacy & security fixes
- Phase 2: Foundation (fork, CI/CD, branding)
- Phase 2.5: Community standards, quality gates, Unpackerr absorption
Current:
- Phase 3: Multi-media foundation (database generalization, indexer management)
Planned:
- Phase 4: Books & audiobooks support
- Phase 5: TV shows
- Phase 6: Music (with fingerprinting and quality analysis)
- Phase 7: Subtitles (Bazarr replacement), podcasts, comics
Contributing
See CONTRIBUTING.md for development setup, code guidelines, and PR process.
Development standards:
- Conventional commits (
feat:,fix:,docs:, etc.) - Feature branches + PRs to
develop - Pre-commit hooks for linting
License
Aletheia is a derivative of Radarr. Copyright 2010-2025.