novela/README.md

50 lines
1.7 KiB
Markdown

# Novela
Novela is a self-hosted web application for managing and reading a personal digital library.
It supports EPUB, PDF, and CBR/CBZ, with metadata editing, reading progress tracking, and Dropbox backups.
## What Novela Provides
- Library import and indexing for EPUB/PDF/CBR/CBZ
- Home dashboard with continue reading and unread/read sections
- Reader support for EPUB, PDF, and comics (CBR/CBZ)
- Metadata editing (title, author, publisher, series, volume, tags, genres)
- `New` review workflow with list/grid view, column toggles, and bulk actions
- Reading analytics/statistics dashboard
- Dropbox backup with:
- versioned snapshots
- object deduplication
- retention policy
- scheduled background runs
## Tech Stack
- FastAPI
- Jinja2 templates + vanilla JavaScript
- PostgreSQL 16
- Docker / Docker Compose style deployment
## Repository Layout
- `containers/novela/` - application code (routers, templates, static assets, migrations)
- `stack/` - deployment stack files and environment configuration
- `docs/` - technical status and changelog documentation
- `build-and-push.sh` - helper script for container build/push
## Quick Start (Development)
1. Configure environment values in `stack/novela.env`.
2. Start the stack using your preferred Docker workflow (Compose/Portainer stack).
3. Open the app and complete backup credential setup on `/backup` if needed.
## Key Environment Variables
- `POSTGRES_DB`
- `POSTGRES_USER`
- `POSTGRES_PASSWORD`
- `NOVELA_MASTER_KEY`
- `CONFIG_DIR`
- `LIBRARY_DIR` (optional override)
## Documentation
- Technical status: `docs/TECHNICAL.md`
- Develop changelog: `docs/changelog-develop.md`
## Status
This repository is actively evolving. The develop documentation reflects implemented behavior in the current codebase.