No description
  • Go 98.3%
  • Dockerfile 1.3%
  • Makefile 0.4%
Find a file
zemdregon d7a5a93290
Some checks are pending
CI / lint (push) Waiting to run
CI / test (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
feat: fold local module work
2026-08-17 09:35:22 -05:00
.github/workflows chore(deps): bump docker/setup-buildx-action to v4 2026-08-10 18:15:16 -05:00
cmd/module feat: book library manager scaffold (v0.1.0) 2026-08-10 05:59:59 -05:00
internal feat: fold local module work 2026-08-17 09:35:22 -05:00
proto feat: book library manager scaffold (v0.1.0) 2026-08-10 05:59:59 -05:00
.gitignore feat: book library manager scaffold (v0.1.0) 2026-08-10 05:59:59 -05:00
CHANGELOG.md feat: fold local module work 2026-08-17 09:35:22 -05:00
COMPATIBILITY.md feat: fold local module work 2026-08-17 09:35:22 -05:00
Dockerfile feat: fold local module work 2026-08-17 09:35:22 -05:00
go.mod feat: fold local module work 2026-08-17 09:35:22 -05:00
go.sum feat: fold local module work 2026-08-17 09:35:22 -05:00
LICENSE feat: book library manager scaffold (v0.1.0) 2026-08-10 05:59:59 -05:00
Makefile feat: book library manager scaffold (v0.1.0) 2026-08-10 05:59:59 -05:00
muxcore.json feat: fold local module work 2026-08-17 09:35:22 -05:00
README.md feat: fold local module work 2026-08-17 09:35:22 -05:00

Media Books

Readarr-class book library manager for MuxCore.

Exposes muxcore.books.v1.BookManagementService (authors/books CRUD) with SQLite persistence under the data directory, plus SettingsProvider for library_dir / data_dir.

Library scanning walks the configured root for local ebook stubs (.epub, .pdf, …) and upserts authors/books/files from the path layout Author/Book Title/file.ext. Metadata is derived from filenames only — no paid or network metadata APIs.

Ports

Service Default
gRPC :9650
Health :9651 (/healthz, JSON stubs GET /api/authors, GET /api/authors/{id}, GET /api/books)

Data layout

Path Purpose
$BOOKS_DATA_DIR/books.db (default ./data/books.db) SQLite library
$BOOKS_LIBRARY_DIR (default ./data/books) Ebook files to scan

Build / test

export PATH=$HOME/.local/go/bin:$PATH
CGO_ENABLED=0 go test ./...
CGO_ENABLED=0 go build -o bin/media-books ./cmd/module

Offline tests use internal/testdata/library (empty .epub / .pdf stubs).

Status

v0.2.0 — SQLite persistence + library root scan fixtures. Metadata search and acquisition wiring remain follow-ups.