Skip to content

Repository files navigation

Privasea

Privasea

Local-first data-broker removal.
Scan exposure · pick what to remove · automate email & browser workflows · keep evidence on-device.

MIT Go React SQLite Playwright

Install guides Quick start Contribute Architecture

Privasea Exposure — scan findings and choose Remove, Guided, or Not me


Why Privasea

Commercial removal tools work — but your identity data and evidence leave your machine. Privasea is the open-source alternative: scan yourself, pick what to remove, automate the rest, with broker plugins and everything stored locally (SQLite + encrypted vault).


Product

Onboarding datasheet   Removal pipeline

Needs you — human review before send   Settings in light mode

Surface What you see
Exposure Scan brokers, confirm matches, Remove / Guided / Not me
Pipeline Queued removals — preview, send, verify
Needs you CAPTCHA, confirm links, playbook review before sensitive email
Onboarding Local datasheet — identity stays on your machine

Install guides

Pick your host. Full steps, service install, and LAN notes live in the guides:

Host Guide Best for
Any OS Setup index Quick path + what lives where
Linux linux.md systemd, NAS, VPS, reverse proxy
Raspberry Pi raspberry-pi.md ARM64 home server, low-RAM tips
macOS macos.md Homebrew + LaunchAgent
Windows windows.md Native PowerShell or WSL2
Docker docker.md One-command stack + Playwright

Installers (after clone):

# Linux / Pi — user systemd service
./scripts/install-linux.sh    # or ./scripts/install-pi.sh

# Windows PowerShell
.\scripts\install-windows.ps1
# Docker
docker compose -f deploy/docker-compose.yml up --build

Quick start

Requirements: Go 1.22+, Node.js 20+, Git.

git clone https://github.com/heza-ru/Privasea.git
cd Privasea

# Terminal 1 — API (run from repo root so plugins/ resolves)
go run ./cmd/privasea

# Terminal 2 — UI
cd web && npm install && npm run dev

Open http://127.0.0.1:5173. Token: data/auth.token.

  1. Complete onboarding.
  2. Exposure → Scan (needs packs under plugins/).
  3. Choose Remove, Guided, or Not me per finding.
Single binary (UI embedded)
cd web && npm install && npm run build && cd ..
go build -o privasea ./cmd/privasea
./privasea -web web/dist

Then open the address printed by the server (default http://127.0.0.1:8787).

Optional: Playwright live browser
cd worker/playwright
npm install
npx playwright install chromium

In the app: Settings → Live browser scans. Full host notes: docs/setup.


Architecture

flowchart LR
  UI["React / Vite SPA"] --> API["Go API :8787"]
  API --> DB[(SQLite)]
  API --> Plugins["plugins/"]
  API --> Email["SMTP / IMAP"]
  API --> Worker["Playwright worker"]
  Worker --> Brokers["Data brokers"]
  Email --> Brokers
Loading

Modular monolith: removal engine, browser automation, legal packs, risk scoring, evidence, and scheduler — all in-process. Details in docs/architecture.md.


Highlights

  • Scan-first Exposure — Remove / Guided / Not me; monitoring & rescan
  • Broker pluginsplugins/ + community install bundles
  • Email + browser — SMTP/mailto, IMAP, Playwright verify/remove
  • Local evidence — screenshots, digests, redacted reports; no phone-home
  • Privacy toolkit — aliases, DROP tracker, HIBP, legal packs

Docs

Local setup guides Linux, Pi, macOS, Windows, Docker
Contributing How to help
Architecture Stack, modules, status enums
Design system Brand, palettes, motion
UX parity Commercial feature baseline
Feature matrix Capability checklist
Plugin SDK Build a broker plugin
OpenAPI HTTP API

Contributing

PRs welcome — especially broker plugins, docs, and UI polish.

See CONTRIBUTING.md for setup, tests, plugin guidelines, and the PR checklist.

go test ./...
cd web && npm install && npm run lint && npm run build

License

MIT

About

A local-first privacy toolkit for broker opt-outs, legal request automation, exposure scanning, and evidence tracking.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages