Forma
Experience management — surveys, responses and workflows.
About
Forma is a survey and experience-management platform. Collect feedback with in-app, website, link and email surveys, read the results in each survey's own summary and response views, and act on them with Workflows.
This repository is mid-rewrite. Forma is moving from a Next.js monolith (yldm-tech/forma2, whose history continues here) to a Go server and a TanStack single-page app. Modules land one at a time; until a module is here, forma2 is the running product and the reference for its behaviour. The feature list below describes the product, not what this branch already serves.
The tags v1.0.0 to v3.1.0 belong to a different, earlier project that used this repository name; they are unrelated to Forma.
Features
- Build surveys in a no-code editor with a range of question types, or start from a template.
- Target surveys at specific user groups without shipping application code.
- Share link surveys, or embed them in your website or app.
- Invite your organization to collaborate, with teams and per-workspace roles.
- Automate follow-ups with Workflows.
- Integrate with Slack, Notion, Zapier, n8n and others.
- Drive it programmatically over the v3 REST API or the built-in MCP server.
Built on
Go · Gin · GORM · PostgreSQL · SpiceDB · React · TanStack Router and Query · Tailwind CSS · Vite+ · Preact (survey runtime)
Development
You need Go (see apps/server/go.mod), Node.js (see .node-version), pnpm and Docker.
pnpm install
cp .env.example .env
make deps-up # PostgreSQL in Docker
make dev-server # Go server on :3000
make dev-web # Vite dev server, the app at http://localhost:5173/app/, proxying the API to :3000
| Command | What it does |
| ------------ | -------------------------------------------------------------- |
| make build | Build the SPA and SDK bundles, embed them, compile bin/forma |
| make test | go test -race and the Vitest suites |
| make lint | golangci-lint and vp check (Oxfmt, Oxlint, type-check) |
| make check | Everything CI runs |
AGENTS.md is the working reference for this repository: layout, conventions, the API contracts that must not change, and testing policy. Read it before your first change.
Security
Report vulnerabilities to [email protected] rather than opening a public issue. See
SECURITY.md.
License
Private. All rights reserved.