LibrePortal/README.md
librelad a48a241fbe docs: add docs/USER.md + docs/DEVELOPMENT.md (+ README pointer)
Two guides covering what wasn't written down:
- USER.md: install (the install.sh one-liner), placing the three roots on separate
  disks/external drives, channels, updating, backups (REQUIRE_MOUNT), uninstall.
- DEVELOPMENT.md: the install-mode/roots/users model + key files; running a dev copy
  (local/git); cutting stable/edge releases (bump VERSION -> make_release.sh ->
  dist/<channel>/{tarball,.sha256,latest.json} -> publish); testing a release
  locally via LP_RELEASE_BASE_URL + python3 -m http.server (incl. checksum-refusal);
  how release updates work; conventions.

README Quick start updated to the release flow + a docs pointer. docs/ is
export-ignored so it doesn't bloat release tarballs.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Signed-off-by: librelad <librelad@digitalangels.vip>
2026-05-25 18:27:59 +01:00

80 lines
3.1 KiB
Markdown
Executable File

# LibrePortal
**Your own private corner of the internet — free, open, and yours.**
LibrePortal is a self-hosted platform for running the apps you rely on, on
your own server: one-click installs, a reverse proxy with automatic SSL,
rootless Docker, optional VPN routing, and a clean web dashboard to manage
it all.
> ⚠️ **v0.1.0 — early days.** Expect rough edges while things settle.
## Why LibrePortal
Too many services today treat your data as theirs to take — quietly
overstepping boundaries that should never have been crossed. LibrePortal grew
out of frustration with that: it's a way to run the apps you depend on on
your own server, where your data stays yours. Privacy here isn't a feature to
toggle — it's the whole point.
## Free & open — forever
The entire platform is **free software under the [GNU AGPLv3](LICENSE)**.
Self-host it and you get **everything** — every feature, no paywalls, no
telemetry. See [our Promise](PROMISE.md) for exactly what that means.
## What you get
- 📦 One-click self-hosted apps (Nextcloud, Vaultwarden, Jellyfin, Gitea, …)
- 🔀 Traefik reverse proxy + automatic Let's Encrypt SSL
- 🔒 Rootless Docker, CrowdSec, sane security defaults
- 🛡️ Optional VPN routing (gluetun) for any app
- 🖥️ A web dashboard to install, configure, back up, and monitor everything
## Quick start
```bash
curl -fsSL https://get.libreportal.org/install.sh | sudo bash
```
This installs a versioned, checksum-verified release (Debian/Ubuntu, root). Put
data on separate disks with `--system-dir=` / `--containers-dir=` / `--backups-dir=`.
> The `get.libreportal.org` host is still being set up — until it's live, build a
> release and install from it locally (see the docs below).
## Documentation
- **[docs/USER.md](docs/USER.md)** — install, place data on separate disks/drives,
update, back up, uninstall.
- **[docs/DEVELOPMENT.md](docs/DEVELOPMENT.md)** — run a dev copy, cut stable/edge
releases, and test them before publishing.
## LibrePortal Connect (optional)
Self-hosting is free and complete. If you'd rather not fiddle with the tricky
parts — like reaching your server from your phone, or keeping off-site backups
— LibrePortal Connect will handle them for you. Here's the catch that makes us
different: we work like a **courier carrying a sealed box.** We move your data
between your devices and store backup copies, but it stays locked and *you*
hold the only key — we can't open it, and we never run your apps for you.
**Everything we offer, you can also set up yourself for free.**
[Our Promise](PROMISE.md) spells out exactly where that line sits.
## Contributing
PRs welcome — see [CONTRIBUTING.md](CONTRIBUTING.md). We use a lightweight
DCO sign-off (`git commit -s`), no CLA.
## Acknowledgments
LibrePortal has been built from scratch since 2023. Its spark of inspiration
was a small installer script from Brian McGonagill (`OpenSourceIsAwesome`):
[gitlab.com/bmcgonag/docker_installs](https://gitlab.com/bmcgonag/docker_installs).
From that seed it grew start to finish — refined, extended, and refactored
into the platform it is today.
## License
[GNU AGPLv3](LICENSE). What's open stays open.