https://github.com/willuhmjs/bible-web
A self-hosted Bible reader with modern styling
https://github.com/willuhmjs/bible-web
Last synced: 17 days ago
JSON representation
A self-hosted Bible reader with modern styling
- Host: GitHub
- URL: https://github.com/willuhmjs/bible-web
- Owner: willuhmjs
- Created: 2026-05-04T04:53:34.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2026-05-12T10:47:06.000Z (about 1 month ago)
- Last Synced: 2026-05-12T12:31:37.521Z (about 1 month ago)
- Language: TypeScript
- Size: 39.2 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Bible
A self-hosted Bible reader with modern styling inspired by bible.com. Built with SvelteKit.
All translations are stored locally on the server — no external API calls at runtime. Users can choose which translations to download from 35+ available options across 10 languages.
## Features
- Clean, distraction-free reading experience with serif typography
- 35+ Bible translations (public domain / freely licensed)
- Full-text search across any installed translation
- Verse selection and copy with formatted output
- Parallel translation comparison (side-by-side)
- Reader settings — font size, font family, line spacing
- Book/chapter picker with Old/New Testament tabs
- Keyboard navigation (arrow keys for chapters, Escape to close)
- Dark mode
- Responsive design (mobile + desktop)
- Translations grouped by language (English, French, German, Spanish, etc.)
## Quick Start
```bash
docker run -d \
-p 3000:3000 \
-v bible-data:/app/data \
ghcr.io/willuhmjs/bible-web:latest
```
Open [http://localhost:3000](http://localhost:3000), go to **Translations**, and download at least one translation to start reading.
## Docker Compose
```yaml
services:
bible:
image: ghcr.io/willuhmjs/bible-web:latest
ports:
- "3000:3000"
volumes:
- bible-data:/app/data
restart: unless-stopped
volumes:
bible-data:
```
## Environment Variables
| Variable | Default | Description |
|----------|---------|-------------|
| `PORT` | `3000` | Port the server listens on |
| `NODE_ENV` | `production` | Node environment |
## Development
```bash
git clone https://github.com/willuhmjs/bible-web.git
cd bible-web
pnpm install
pnpm dev
```
Or with Docker:
```bash
docker compose up
```
## Tech Stack
- [SvelteKit 5](https://svelte.dev) with Svelte 5 runes
- [Node.js](https://nodejs.org) with adapter-node
- Plain CSS with custom properties
- TypeScript
## Data Sources
Bible translation data is bundled in the `bibles/` directory of this repository and downloaded by users on-demand from GitHub. All included translations are public domain or freely licensed.
## License
MIT