seafonic darkmode

1. Extract this ZIP to a permanent folder.
2. Open chrome://extensions in Chrome.
3. Turn on Developer mode.
4. Click Load unpacked and select the extracted folder containing manifest.json.
5. Refresh your supported website tabs and pin the extension.
6. Use the extension popup to switch it off, choose a palette.

This preview release is not yet listed in the Chrome Web Store.

The palette comes from seafonic-site. Neutral charcoal surfaces provide a mild dark mode. Accent: #91b4cd. Text: #e8eaed.

Settings stay in local browser storage. No analytics, remote code, HubSpot API calls, or external requests are included. Styling runs on HubSpot app domains and Commerce7 tenant admin domains under admin.platform.commerce7.com. Commerce7, Facebook, Instagram, and SoundCloud support is experimental. Facebook access covers facebook.com, www.facebook.com, and m.facebook.com. Instagram access covers instagram.com and www.instagram.com. SoundCloud access covers soundcloud.com and www.soundcloud.com. Commerce7 storefronts are excluded. The extension reads computed page colors locally to adjust appearance. It does not extract, save, or transmit customer content.

Colored indicators, photos, audio players, SVG graphics, canvases, embedded frames, and rich text editors are excluded from direct recoloring. Some inherited colors can still change. Shadow DOM and embedded apps are not covered. Inline style updates without class changes may require refresh. Turn the theme off to check customer facing email and page designs.

Homepage: https://darkmode.seafonic.com/
Privacy: https://darkmode.seafonic.com/privacy.html
Source and support: https://github.com/brinecr/seafonic-darkmode

Manifest, JavaScript syntax, and simulated behavior checks have passed. Testing against signed in HubSpot, Commerce7, Facebook, Instagram, and SoundCloud pages is still required before a store submission.

Version 1.2.8 adds independent palettes and switches for each supported site. Choose a site in Settings for. Sites inherit your default palette until you customize them. Use default settings removes that site override. Preferences remain local; automatic customer account syncing is prepared separately and is not active.

Version 1.2.9 adds Recently used sites above the selector. This records only a supported site identifier and last use timestamp locally. The list is not sent to an account API and does not record page URLs or content. Remove the extension to delete this local list.

Why Chrome asks for site access: Chrome uses the broad permission label “read and change data on sites” for extensions that alter a page. seafonic uses this access to read existing colors and apply theme styling locally. It does not collect or upload page text, messages, passwords, or customer records.
