privacy-browser is a top-of-the-line privacy browser: a web browser whose defining promise is that strong privacy protections are built in and active by default, so that users browse the web without being tracked or profiled and without having to configure anything to be protected. The product is for people who treat their digital safety like expedition gear — security-literate everyday users who expect protection to work silently and correctly, and a settings manager who tunes protection strength and per-site exceptions to match a chosen privacy posture.
This document is the System Requirements Document for the product. It specifies the current delivery: an anonymous public entry that explains the browser and its built-in protections, the primary browsing destination where protections are active by default, and a recurring settings destination for reviewing and adjusting tracking, cookie, and fingerprinting protections and per-site exceptions.
Success criteria. A user can open the browser, navigate to any site, and be protected by tracking, cookie, and fingerprinting defenses without taking any configuration action; the browser's protection state is legible at all times; and a settings manager can review and change protection strength and per-site exceptions, with the resulting browsing behavior matching the chosen posture.
privacy-browser is delivered as a first-party web application with three destinations: Landing (anonymous public entry), Browser (primary browsing surface with built-in privacy protections active by default), and Privacy Settings (recurring surface for reviewing and adjusting tracking, cookie, and fingerprinting protections and per-site exceptions). All three are anonymously reachable; no account, sign-in, or identity establishment is required or provided.
The application runs on a React frontend, a shared FastAPI backend process that hosts all application APIs and domain modules, and a MariaDB database for application-owned persistent data. The backend is the single service for feature APIs; no additional services are required for the current scope.
Active human actors are the Privacy-focused browser user, who browses with protections on by default, and the Privacy settings manager, who reviews and tunes protection strength and per-site exceptions. Web pages the user visits are external destinations rendered inside the Browser; the browser itself is the first-party owner of the browsing chrome, protection state, and settings.
Removed from scope: none. No concept from the requirement thread has been removed.
The product is a browser, not a privacy dashboard bolted onto a browser. Its delivery boundary is first-party: the application owns the browsing surface, the protection engine's user-visible state, and the settings that govern protection strength and per-site exceptions. Third-party websites are external destinations — the browser renders them and applies protections to them, but does not own their content.
Access is anonymous throughout. The source establishes no accounts, no sign-in, and no per-user continuity requirement; protections and settings are properties of the browser installation and its current session, not of an authenticated identity. Accordingly, no identity establishment, verification, or account-management capability is specified, and none of the three destinations is protected.
Current scope covers: anonymous entry and explanation of the browser and its protections; browsing with tracking, cookie, and fingerprinting protections active by default; legible protection state during browsing; and review/adjustment of protection strength and per-site exceptions. Future ideas are not part of current acceptance and are not represented in any page.
FR-1 — Browse with built-in privacy protections active by default (explicit) As a Privacy-focused browser user, I should navigate to any web address and have tracking, cookie, and fingerprinting protections active without configuring anything, so that my browsing is private from the first page.
FR-2 — See protection state while browsing (explicit) As a Privacy-focused browser user, I should see, for the page I am on, which protections are active and how many trackers were blocked, so that I can trust the browser is protecting me.
FR-3 — Understand the browser and its protections before browsing (explicit) As a Privacy-focused browser user, I should read, on an anonymous landing surface, what the browser is, who it is for, and which protections are built in and on by default, so that I can decide to use it.
FR-4 — Review and adjust protection strength (explicit) As a Privacy settings manager, I should review the current strength of tracking, cookie, and fingerprinting protections and adjust each to my comfort level, so that browsing matches my chosen privacy posture.
FR-5 — Manage per-site exceptions (explicit) As a Privacy settings manager, I should add, edit, and remove per-site exceptions for specific protection layers, so that sites I trust or sites that break under protection behave as I intend while everything else stays protected.
FR-6 — Reset a protection layer to default (required_inference) As a Privacy settings manager, I should reset a layer to its default posture, so that I can recover from a configuration I no longer want.
Flow A — First visit and entry (Privacy-focused browser user)
Flow B — Private browsing with default protections (Privacy-focused browser user)
Flow C — Review and adjust protection strength (Privacy settings manager)
Flow D — Manage a per-site exception (Privacy settings manager)
Flow E — Reset a layer to default (Privacy settings manager)
The creative direction is authoritative: a precision luxury instrument after MARQ by Garmin — instrument-grade trust, quiet capability, a sealed engineered object. Dark mode only.
Color tokens (dark mode):
#0E1012 (graphite titanium, dominant ~70%)#171A1D#F2EFE9 (warm off-white, ~16:1 on background)#C9A227 (champagne amber — primary actions, active dial arcs, protection needle)#3FB8AF (teal — protected/verified states, data ticks)#8A8F94 (labels and secondary metadata only, never body copy; 12px+ bold)#2A2E33Typography:
clamp(44px, 9vw, 112px); section heads clamp(28px, 4.2vw, 56px); instrument numerals clamp(32px, 5vw, 64px) in tabular Saira Condensed.Shape language: circular gauges and bezels as the recurring form; near-square panels with 2px radii and 1px brushed-steel borders (never soft cards); machined rectangular buttons with a 1px inset top highlight like a bezel chamfer; topographic contour lines as texture behind dark sections.
Layout: edge-to-edge dark instrument chassis; fixed top rail with wordmark, live protection status, and settings entry; hero split 7/5 with macro dial right and oversized type left; full-width ruled data bands separated by hairline rules rather than cards; Privacy Settings uses aligned label/value rows with physical bezel toggles. Single column at 375px with the dial scaling down and data rows stacking into labelled pairs.
Imagery: no stock people; macro material studies (brushed titanium, sapphire-glass bezel rings, engraved topographic lines) and a crafted CSS/SVG instrument dial; product screens shown as inset glass panels with real privacy data.
The public entry is a dark instrument chassis filling the first screen. On the left, an oversized mixed-case Saira Condensed headline — "Privacy, engineered like an instrument" — sits above a single amber rule, with the primary CTA as a machined amber-edged button. On the right, a large circular protection dial (min 320px, up to 520px) with concentric titanium rings, an amber needle at 94%, and live teal readouts ("trackers blocked today", "fingerprint noise active") in tabular numerals inside the bezel. A thin topographic contour layer drifts behind both at 0.02 opacity. No centred stack, no gradient blob, no blue button. Below the hero, full-width ruled data bands present tracking, cookie, and fingerprinting protections as gauge values with amber tick marks, not cards. The concept recomposes only accepted content — product identity, protection layers, protection readout, and the entry CTA.
Interaction Model: Animated Motion Tempo: restrained Hero Dimensionality: layered_2d
Landing Hero Motion Brief
#C9A227. No bounce, no particles, no parallax excess.prefers-reduced-motion, the dial renders at final value and counters are static.
Built-in · Always on
For people who treat digital safety like expedition gear — protection on by default, nothing to configure.
Tracking · Cookie · Fingerprinting
Every layer is on the moment the browser opens. Nothing to configure, nothing to switch on.
Blocks trackers and profiling scripts before they load, on every site, with no configuration.
Clears and isolates third-party cookies so cross-site profiles cannot form.
Adds noise to device signals so your browser cannot be uniquely identified.
Built for
Built for people who expect protection to work silently and correctly, and for the settings manager who tunes it per site.

Built-in · Always on
For people who treat digital safety like expedition gear — protection on by default, nothing to configure.
Tracking · Cookie · Fingerprinting
Every layer is on the moment the browser opens. Nothing to configure, nothing to switch on.
Blocks trackers and profiling scripts before they load, on every site, with no configuration.
Clears and isolates third-party cookies so cross-site profiles cannot form.
Adds noise to device signals so your browser cannot be uniquely identified.
Built for
Built for people who expect protection to work silently and correctly, and for the settings manager who tunes it per site.
No comments yet. Be the first!