Skip to content
Security

How Forma keeps your key and your work safe.

Forma has no server of its own in the path of your work: your browser talks to the AI you chose, and, if you sign in, to Google’s database. What follows is how the code is built to keep it that way, and how to tell us if it does not.

Bring your own key

Forma ships with no API key and has no quota of its own. You supply your Gemini key, and your browser calls Google directly with it. It is held in your open Forma tabs, never written to disk in readable form, and gone when the last tab closes. An encrypted copy is kept in your account only if you ask, encrypted in your browser under a passphrase that never leaves it, so not even the operator can read it.

Where the page may send anything

Every page carries a Content Security Policy whose connect-src lists the only places it may talk to: Google’s Gemini, sign-in and database, the contact form’s relay, OpenRouter, a local AI on your own computer and the designer companion on it. So even a script that got into the page could not send your key anywhere else. Scripts load only from this site and Google’s sign-in helper; nothing can frame the page; and the browser is told to keep it isolated from other sites’ windows.

Your saved work

The database’s rules let an account read and write only its own projects, revisions and key. A shared report is a copy, readable by the people you add once they sign in with that address verified, or by anyone with the link if you choose it; making one needs a verified address and a project of your own, and an account can share up to 100. The rules are tested against Google’s emulator on every change.

No tracking

No analytics, no advertising, no tracking pixels and no cookies. The privacy policy lists everything that is stored and everything that is sent, and where.

Reporting a vulnerability

Please report it privately: by email with “Forma security” in the subject (the address is on the contact page), or through GitHub’s private vulnerability reporting. Do not open a public issue for anything that could expose someone’s key or saved reports. An acknowledgement comes within a few days; the full policy is SECURITY.md, and the machine-readable one is security.txt.