···2929- An ATProto account that Frontpage can read.
3030- An app password for that account (create one at <https://bsky.app/settings/app-passwords> or via your own PDS).
31313232-### Load the add-on in Firefox
3232+### Development install (temporary)
333334341. Open `about:debugging#/runtime/this-firefox`.
35352. Click **Load Temporary Add-on…** and choose `manifest.json` inside the `extension/` directory.
36363. Pin the “Frontpage” toolbar button if you want quick access.
3737+3838+> This method is ideal while iterating; Firefox forgets the add-on on restart.
3939+4040+### Install a packaged build
4141+4242+After the GitHub Action finishes:
4343+4444+1. Download the `frontpage-extension-unsigned` (or `frontpage-extension-signed` if signing is enabled) artifact from the workflow run.
4545+2. If unsigned, extract the ZIP that `web-ext` produced and re-zip it as needed, or use the ZIP as-is for self-hosting.
4646+3. In Firefox, open `about:addons` → click the gear icon → **Install Add-on From File…**, then select the `.zip` or `.xpi`.
4747+4. Firefox will install the add-on; confirm the permissions dialog to finish.
4848+4949+For ongoing self-distribution, host the resulting `.zip`/`.xpi` on your own site and point Firefox users there, following Mozilla’s [self-distribution guide](https://extensionworkshop.com/documentation/publish/self-distribution/).
37503851### Configure credentials
3952