bd8d68b9babde59fe21ee5fdb09ede6cf34d19bc
file.path is relative to book.path, so the archive matched nothing on disk and came out empty. Also namespace entries per book to stop filename collisions, and stream the zip instead of buffering it whole.
Chitai - eBook Library Management
eBook library management application.
- Backend built with Python and Litestar
- Frontend built with Svelte 5 and SvelteKit
Key Features
- Libraries: Organize your eBooks into customizable libraries.
- Book Upload: Easily upload eBook files in common formats, with automatic metadata extraction.
- Personalized Bookshelves: Create and manage custom bookshelves (lists) within your libraries to categorize your eBooks.
- Built-in Readers: Integrated readers for EPUB and PDF files.
- Progress Tracking: Monitor your reading progress within each book.
- Search Functionality: Quickly find books based on title.
Getting Started
Prerequisites
- Docker
- Docker Compose
- (Optional) A text editor for modifying the
.envfile.
Installation (Production Deployment)
- Clone the repository:
git clone <repository_url>(Replace<repository_url>with the actual URL) - Navigate to the project root:
cd chitai - Build the Docker images:
docker compose build - Copy the example environment file and configure:
cp .env.prod-example .env - Run the Docker containers in detached mode:
docker compose up -d - Access the frontend at:
http://localhost:3000/
Development
NixOS Development Environment
To utilize the NixOS development environment:
- Navigate to the project root in your terminal:
cd chitai - Enter the Nix shell:
nix-shell
Docker development containers are planned for a future release.
Languages
Python
52.7%
Svelte
33%
TypeScript
12.5%
Shell
0.5%
CSS
0.4%
Other
0.9%