Skip to content
Self-hosting

Run your own Forma.

Forma is open source, so you can run it yourself: on your own computer, or on your own Firebase project for a team. It needs no server of its own, and nothing of ours.

On your computer

Node 20, 22 or 24 and later (not 21 or 23), then:

git clone https://github.com/waqarsyd/forma.git
cd forma
npm ci
npm run dev

Open http://localhost:3000 and add your Gemini key in Settings. Signed out, projects are kept in your browser, and everything works; Open in designer works too, from here.

With your own Firebase project

For sign-in, saved projects and sharing, on Firebase’s free plan:

  1. Create a project in the Firebase console and register a web app.
  2. Authentication: Get started, then enable Google (and email, if you want it).
  3. Create a Firestore database in production mode.
  4. Put your web app’s config into firebase-applet-config.json, and set your project in .firebaserc.
  5. Restrict the browser API key to your sites by HTTP referrer, including your authDomain.
  6. Deploy the rules and the site with Firebase Hosting.
npx firebase deploy --only firestore:rules
npm run build
npx firebase deploy --only hosting

The README’s own walkthrough has the details and the two traps (an authDomain missing from the key’s referrers, and a database id that does not match).

What you take on

  • Your own users’ data, under your own privacy policy: the one here describes this site.
  • The headers: firebase.json carries the security headers, generated from the code; keep them when you change anything.
  • Updates: pull from the repository and deploy again. The changelog says what changed.