Jelu — Self-Hosted, Open-Source

Read and to-read list book tracker.

License: MIT. Built with: Kotlin, Vue, TypeScript, CSS, Dockerfile, JavaScript, Java, Shell, HTML. Website: https://bayang.github.io/jelu-web. Source: https://github.com/bayang/jelu.

Features

Installation

jelu: database: path: . ``` The automatic metadata online search is provided for the moment through a calibre tool called fetch-ebook-metadata (whether you like it or not). So if you want to use it with the java install, provide the path to the executable in the config, like so : ```yaml jelu: metadata: calibre: path: /usr/bin/fetch-ebook-metadata ``` If you run into a cors issue, update the config with the desired origins like so : ```yaml jelu: cors.allowed-origins: - https://jelu.myserver.org ``` Then open the web UI in your web browser at `localhost:11111` Concerning Cors, the default is to accept everything, which you might not not want to do. No config in the config file is equivalent to : ```yaml jelu: cors.allowed-origins: - "*" ``` ### Docker An image is available here : https://hub.docker.com/repository/docker/wabayang/jelu This one is the easiest if you are used to it. The docker image we provide embeds the fetch-ebook-metadata executable to automatically import books based on their title, authors or isbn. A sample docker compose would look like that : ```yaml services: jelu: image: wabayang/jelu container_name: jelu volumes: - ~/jelu/config:/config - ~/jelu/database:/database - ~/jelu/files/images:/files/images - ~/jelu/files/imports:/files/imports - /etc/timezone:/etc/timezone:ro ports: - 11111:11111 restart: unless-stopped

Why self-host Jelu

Self-hosting gives you three things SaaS can’t: data ownership (the files live on disks you control), cost predictability (a one-time setup vs. recurring per-seat fees that grow with your household or team), and longevity (open-source means the app keeps working even if the maintainers move on, since you can pin a working version). The trade-off is that you take on the operational work of running a server, applying updates, and handling backups.

What hardware do you need

Most self-hosted apps run comfortably on modest hardware — a Raspberry Pi 4, a mini PC, a NAS with Docker support, or a small VPS is usually enough for personal or family use. CPU and RAM requirements scale with how many simultaneous users or how much data you push through Jelu. Storage requirements depend on the kind of data you keep; check the README for guidance on data retention.

Where to go from here

Last verified: 2026-05-22