Files
chitai/README.md
T
patrick b70ed5cb51 feat: build and publish release images from version tags
Tagging v* builds both images on Gitea Actions and pushes them to the instance
registry, then smoke-tests the published stack. The frontend read its backend
URL through import.meta.env, which Vite resolves at build time, so an image
could only point at whatever the build host had; it now reads it at runtime.
2026-08-17 15:05:18 -04:00

52 lines
1.9 KiB
Markdown

# Chitai - eBook Library Management
eBook library management application.
- Backend built with Python and Litestar
- Frontend built with Svelte 5 and SvelteKit
<img src="docs/screenshots/library-home.png" width="80%" alt="Library Home Page">
## 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 `.env` file.
### Installation (Production Deployment)
1. Clone the repository: `git clone https://git.jaroszew.ski/patrick/chitai.git`
2. Navigate to the project root: `cd chitai`
3. Copy the example environment file: `cp .env.prod-example .env`
4. Edit `.env`. At minimum set `CHITAI_TOKEN_SECRET` to something random, and set
`CHITAI_ORIGIN` to the URL you will reach the app on — logging in fails with a 403 if it
does not match. Pin `CHITAI_VERSION` to a release tag if you would rather not track `latest`.
5. Pull the released images: `docker compose pull`
6. Run the Docker containers in detached mode: `docker compose up -d`
7. Access the frontend at: `http://localhost:3000/`
To build the images from source instead of pulling them, run `docker compose build` in place of
step 5.
## Development
### NixOS Development Environment
To utilize the NixOS development environment:
1. Navigate to the project root in your terminal: `cd chitai`
2. Enter the Nix shell: `nix-shell`
Docker development containers are planned for a future release.