Calcite is a small Chrome Manifest V3 extension for switching the current Chrome profile between saved HTTP, HTTPS, SOCKS4, and SOCKS5 proxy profiles.
It stores profiles locally, applies the selected proxy through Chrome's proxy API, and includes import/export tools for moving profile lists between browser profiles.
- Save multiple named proxy profiles.
- Switch between a proxy profile and Direct mode from the toolbar popup.
- Re-apply the active profile when Chrome starts.
- Import and export profile lists as local JSON files.
- Release proxy control back to Chrome, the system, or another extension.
Enter the project shell:
nix-shellLoad the extension locally:
- Open
chrome://extensions. - Enable Developer Mode.
- Choose "Load unpacked".
- Select the
src/directory.
There is no bundler or compile step. Chrome loads the files in src/ directly.
Inside the Nix shell, build the Chrome Web Store upload ZIP:
package_chrome_webstoreThe script validates src/manifest.json, checks manifest-referenced files, refuses private key material, and writes:
dist/calcite-chrome-webstore-v0.1.0.zipThe archive is shaped for Chrome Web Store upload, with manifest.json at the ZIP root.
src/manifest.json Extension metadata, permissions, popup, icons
src/background.js Proxy reconciliation, context menu actions, export
src/popup.* Toolbar popup UI and profile editor
src/import.* JSON import window
src/icons/ Extension and toolbar PNG icons
default.nix Nix shell and packaging script
Calcite does not collect analytics, inject content scripts, read page content, or transmit data to a developer server. Proxy profile data is stored in local Chrome extension storage. Export only runs when the user explicitly chooses it and writes a local JSON file.
User-selected proxy servers may receive browser traffic when active. Calcite itself does not inspect or log that traffic.