28 lines
1.4 KiB
Markdown
28 lines
1.4 KiB
Markdown
# KeePassGO Browser Extension
|
|
|
|
Shared extension assets for Firefox and Chromium-based browsers live here.
|
|
|
|
The Arch package installs this directory under `/usr/share/keepassgo/browser-extension/`. On Linux desktop builds, launching KeePassGO refreshes the user-scoped native messaging manifests for Firefox and for any installed Chrome or Chromium `KeePassGO Browser` extension ids it can discover from browser profiles.
|
|
|
|
- `manifest.firefox.json` uses the fixed Firefox extension id `browser@keepassgo.com`
|
|
- `manifest.chromium.json` is the Chromium/Chrome manifest template
|
|
- `background.js` caches per-tab match state, updates the toolbar badge, keeps token-scoped approval state visible, and talks to the native messaging host `com.keepassgo.browser`
|
|
- `content.js` fills username and password fields on the current page, keeps fills tied to the focused form when possible, and shows inline KeePassGO field affordances when matches exist
|
|
- `options.html` stores the API token in browser extension storage
|
|
|
|
The extension sends the API token to the native host on each request. The bridge does not store the token on disk.
|
|
|
|
Quick extension-side checks:
|
|
|
|
```bash
|
|
node --test browser/extension/background.test.cjs browser/extension/content.test.cjs
|
|
```
|
|
|
|
Reproducible Chromium validation:
|
|
|
|
```bash
|
|
make browser-extension-validate
|
|
```
|
|
|
|
That command validates Firefox by default. Use `make browser-extension-validate BROWSER=chromium` for the Chromium harness.
|