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.
52 lines
1.9 KiB
Markdown
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.
|