aph-browser/aph

Aph is a workspaces-first web browser built on Mozilla Firefox. It features native workspace switching, Multi-Account Container bindings, automatic domain routing, vertical tabs, and built-in tab archiving for Linux and Windows.

JavaScript

1

65 commits

updated Sep 22, 2026

See the code

See what people are saying (1)

README

Aph

Aph is a Firefox-based, workspaces-first web browser: it repackages upstream Firefox with native workspace management, a command palette, tab archiving, and hardened privacy defaults injected directly into the browser UI — no fork, no recompilation, just the stock binary with Aph overrides applied on every launch.

Beta: Aph 0.x is unsigned and has no auto-update yet. Each release is a manual re-download. Windows users will see a SmartScreen warning on first launch — this is expected for unsigned software.

Features

  • Workspaces 1–9 (Alt+Shift+1..9, ]/[ to cycle, Tab for last-used): exclusive model — one workspace renders in at most one window. Switching to a dormant workspace pulls its tabs to you; one that's live elsewhere focus-jumps instead.
  • Command palette with workspace actions, tab search, bookmarks/history, and archive search.
  • Tab archive with auto-sweep, container + workspace restore, and staleness tracking.
  • Tree tabs (automatic 2-level hierarchy), native tab groups inside workspaces, per-workspace container bindings, starred tabs, and tab unloading.
  • Privacy defaults: telemetry, health reports, Normandy, and activity-stream telemetry off (see config/user.js); your edits persist (seed-once, below).

Install

Download the latest release from GitHub Releases (mirrored as code-only to GitLab). Verify checksums against SHA256SUMS:

sha256sum -c SHA256SUMS

Linux — AppImage

chmod +x aph-x86_64.AppImage
./aph-x86_64.AppImage

Linux — Flatpak

flatpak install aph-x86_64.flatpak
flatpak run io.github.aph_browser.Aph

Windows — installer or portable ZIP

Run Aph-Setup-*.exe (per-user install, no admin rights needed), or extract aph-win64-portable.zip anywhere and run aph.bat. Nothing is written outside the install folder except your profile.

First run & profiles

  • Release builds (AppImage, Flatpak): profile lives under ~/.aph/profile (APH_PROFILE overrides the location).
  • Repo runs: ./profile (just dev), or ~/.config/aph/profile for the daily driver (just install-local, just daily).
  • Windows: profile lives under %APPDATA%\Aph\profile.
  • On first run Aph seeds user.js from its bundled defaults; your edits persist afterwards (seed-once). config/user.js in the repo is the source of those defaults. Menu accents seed the same way: branding/userChrome.cssprofile/chrome/userChrome.css.

Reporting bugs

File issues at GitHub Issues. For workspace bugs, include the output of these two Browser Console (Ctrl+Shift+J) commands, run before and after the problem:

Services.wm.getMostRecentWindow("navigator:browser").AphWorkspaces.debugSession()
Services.wm.getMostRecentWindow("navigator:browser").AphWorkspaces.debugExclusive()

License

Mozilla Public License 2.0. See SECURITY.md to report vulnerabilities.

browser
firefox
firefox-browser
firefox-css
privacy
workspace
workspaces

Contributors

slancj

64 commits

aph-browser/aph

Aph is a workspaces-first web browser built on Mozilla Firefox. It features native workspace switching, Multi-Account Container bindings, automatic domain routing, vertical tabs, and built-in tab archiving for Linux and Windows.

JavaScript

1

65 commits

updated Sep 22, 2026

See the code

See what people are saying (1)

README

Aph

Aph is a Firefox-based, workspaces-first web browser: it repackages upstream Firefox with native workspace management, a command palette, tab archiving, and hardened privacy defaults injected directly into the browser UI — no fork, no recompilation, just the stock binary with Aph overrides applied on every launch.

Beta: Aph 0.x is unsigned and has no auto-update yet. Each release is a manual re-download. Windows users will see a SmartScreen warning on first launch — this is expected for unsigned software.

Features

  • Workspaces 1–9 (Alt+Shift+1..9, ]/[ to cycle, Tab for last-used): exclusive model — one workspace renders in at most one window. Switching to a dormant workspace pulls its tabs to you; one that's live elsewhere focus-jumps instead.
  • Command palette with workspace actions, tab search, bookmarks/history, and archive search.
  • Tab archive with auto-sweep, container + workspace restore, and staleness tracking.
  • Tree tabs (automatic 2-level hierarchy), native tab groups inside workspaces, per-workspace container bindings, starred tabs, and tab unloading.
  • Privacy defaults: telemetry, health reports, Normandy, and activity-stream telemetry off (see config/user.js); your edits persist (seed-once, below).

Install

Download the latest release from GitHub Releases (mirrored as code-only to GitLab). Verify checksums against SHA256SUMS:

sha256sum -c SHA256SUMS

Linux — AppImage

chmod +x aph-x86_64.AppImage
./aph-x86_64.AppImage

Linux — Flatpak

flatpak install aph-x86_64.flatpak
flatpak run io.github.aph_browser.Aph

Windows — installer or portable ZIP

Run Aph-Setup-*.exe (per-user install, no admin rights needed), or extract aph-win64-portable.zip anywhere and run aph.bat. Nothing is written outside the install folder except your profile.

First run & profiles

  • Release builds (AppImage, Flatpak): profile lives under ~/.aph/profile (APH_PROFILE overrides the location).
  • Repo runs: ./profile (just dev), or ~/.config/aph/profile for the daily driver (just install-local, just daily).
  • Windows: profile lives under %APPDATA%\Aph\profile.
  • On first run Aph seeds user.js from its bundled defaults; your edits persist afterwards (seed-once). config/user.js in the repo is the source of those defaults. Menu accents seed the same way: branding/userChrome.cssprofile/chrome/userChrome.css.

Reporting bugs

File issues at GitHub Issues. For workspace bugs, include the output of these two Browser Console (Ctrl+Shift+J) commands, run before and after the problem:

Services.wm.getMostRecentWindow("navigator:browser").AphWorkspaces.debugSession()
Services.wm.getMostRecentWindow("navigator:browser").AphWorkspaces.debugExclusive()

License

Mozilla Public License 2.0. See SECURITY.md to report vulnerabilities.

browser
firefox
firefox-browser
firefox-css
privacy
workspace
workspaces

Contributors

slancj

64 commits

Languages

JavaScript

86.9%

Python

8.5%

CSS

3.4%