Margin exists to provide a trustworthy, open-source bilingual webpage translation experience. The project is intentionally scoped to webpage reading so the privacy model, source code, and product behavior remain understandable.
Margin must keep the original webpage text visible. Translations are assistive context, not replacements for the source.
The source code, build process, and core translation flow must be inspectable. A contributor should be able to build the extension locally and understand how text moves through the system.
Core functionality must not require a proprietary official backend. Users configure their own provider endpoint and API key.
Margin sends only selected text segments to the configured provider. It does not send full page HTML by default, does not require accounts, and does not include telemetry by default.
The MVP is only bilingual webpage translation. PDF, EPUB, subtitles, OCR, input box translation, cloud sync, and social features are outside the MVP.
OpenAI, Anthropic Claude, and Google Gemini are first-class MVP provider targets. The architecture should remain open to DeepL, LibreTranslate, Ollama, local models, and self-hosted endpoints.
New features should be evaluated against the PRD and roadmap. Features listed as non-goals should not enter the MVP without an explicit documentation update.
Extension permissions should be documented and tied to user-facing behavior. Broad permissions require clear justification.
Margin should not force login, hide provider behavior, enable telemetry by default, or steer users into an official quota system.