🔒 Open Source & Self-Hosted

Your content.
Your server. Your rules.

ReadMine is a privacy-first bookmark and reading platform you deploy on your own infrastructure. Save articles, read distraction-free, highlight what matters, and own every byte of your data.

readmine.dev/bookmarks/a3f2c1/reader
THE ATLANTIC  ·  6 MIN READ  ·  SAVED TODAY
The Case for Owning Your Digital Life
For years, power users accepted a trade-off: convenience in exchange for control. But the calculus is shifting. Self-hosting has never been simpler, and the tools have never been more capable. The question is no longer whether you can run your own stack — it's why you haven't yet.

Everything a power reader needs

Built for technical users who refuse to compromise on privacy, performance, or ownership.

📥

Save From Anywhere

Capture articles via the browser extension, mobile share sheet, or manual URL entry. Content is archived instantly and available offline — even if the source disappears.

📖

Distraction-Free Reader

A clean reader mode strips ads, pop-ups, and clutter. Adjust font size, typeface, line spacing, and theme to suit your reading style. Pages load in under 300 ms.

✍️

Highlights & Notes

Select any text to highlight it in your favourite colour. Attach a note for context. Highlights sync across all your devices and persist through full-text search.

🗂️

Tags & Collections

Organise your library with freeform tags and nested collections. Full-text search, date filters, and status filters keep thousands of bookmarks immediately navigable.

🔄

Real-Time Sync

A two-way incremental sync engine keeps your web app, iOS app, and browser extension in lock-step. Offline changes queue automatically and push when connectivity returns.

🔒

Complete Data Ownership

Every byte lives on your server. No third-party telemetry, no vendor lock-in. Export everything at any time. Postgres + MinIO-compatible object storage — backup with standard tools.

📱

Native iOS & Android Apps

Take your reading list everywhere. Save via the native share sheet from Safari, Chrome, or any app, read distraction-free, highlight on the go, and stay in sync with your server — even offline, with content cached on-device.

Up and running in minutes

ReadMine ships as a Docker Compose stack. If you can run docker compose up, you're ready.

1

Prerequisites

Make sure the following are installed on your server.

  • Docker Engine 24+ & Docker Compose v2
  • 2 GB RAM minimum (4 GB recommended)
  • A domain or local hostname (optional)
2

Clone the repository

git clone https://github.com/your-org/readmine.git cd readmine
3

Configure your environment

Copy the example env file and set a strong JWT secret and admin password.

cp infra/.env.example infra/.env nano infra/.env # Required values to change: JWT_SECRET=your-random-secret-here POSTGRES_PASSWORD=your-db-password MINIO_SECRET_KEY=your-minio-secret
4

Launch the stack

docker compose -f infra/docker-compose.yml up -d # Services started: # ✓ api → http://localhost:8080 # ✓ worker (background parser) # ✓ postgres (port 5432) # ✓ redis (port 6379) # ✓ minio → http://localhost:9000
5

Open the web app

Navigate to http://localhost:3000 (or your domain), create an account, and start saving. Point the browser extension at your server URL and you're done.

What's included in the stack

# infra/docker-compose.yml services: api: Rust / Actix Web backend worker: Content parser & archiver postgres: PostgreSQL 16 redis: Job queue & cache minio: S3-compatible object store

Need production hardening?

Use the included docker-compose.prod.yml override for resource limits, restart policies, and health checks. Automated backup scripts for Postgres and MinIO are in infra/backup/.

Upgrade

git pull docker compose pull docker compose up -d
Live Demo

See it in action before you deploy

Try the fully-functional demo instance. No account required to browse — sign up with a demo account to explore the reader, highlights, and sync.

www.readmine.dev
Open Demo Site →
Download on the App Store
Get it on Google Play