Overview
Epos (ἔπος, “epic story”; pronounced EH-poss) is a highly opinionated engine designed to simplify browser extension development. It supports all Chromium-based browsers, including Chrome, Edge, and Brave. Firefox and Safari are not supported.
While frameworks like WXT or Plasmo offer broad flexibility, Epos focuses on a zero-config experience, and provides a unique set of high-level features that "just work".
Installation
Epos is not provided as an NPM package. Instead, the engine itself is a browser extension that you install directly from the Chrome Web Store.
Workflow
Once installed, the workflow is simple:
- Connect: Link your local project directory to Epos via the engine interface. Epos uses the File System API to maintain direct access to your code.
- Develop: Epos executes your code directly within the browser environment. Any changes you make are picked up automatically.
- Export: When you are ready to ship, click the EXPORT button to generate a production-ready ZIP file, ready for submission to the Chrome Web Store.
Constraints
Epos is not a universal framework. It deliberately strips away the noise and doubles down on a specific tech stack to provide a developer experience that wouldn't be possible otherwise.
The engine prioritizes ease of use for the 95% of common use cases, even if that means sacrificing flexibility. Epos isn't for everyone — but if you embrace its constraints, you get an incredibly powerful toolset in return.
Core Limitations:
- React: Epos is built specifically for the React ecosystem.
- Chromium: Firefox and Safari browsers are not supported.
- Chrome APIs: Only essential APIs are available; niche APIs are not supported.
- Manifest V3: No support for the legacy Manifest V2.
- No HMR: Hot Module Replacement is not supported, though live-reload is available.
- No Source Maps: Since Epos injects your code with its own engine runtime, source maps do not function. The support may appear in future releases.
- Permissions: Certain manifest permissions are required for the engine to work and cannot be omitted.
These limitations are intentional trade-offs that enable the specialized features that Epos provides. You can learn more about these in the Features section.