Formularios y servicios web

Form Forge

Una plataforma de formularios autoalojada con entregas que se pueden inspeccionar. Ejecuta tu propio servicio de formularios: publica formularios con versiones, guarda respuestas en PostgreSQL y envíalas a webhooks firmados.

Versión
v0.2.0, 18 oct 2026
Funciona en
Autoalojado: Node.js, PostgreSQL, Inngest; Docker Compose o Netlify
Licencia
Apache-2.0

Abrir la instancia pública: Requiere iniciar sesión con GitHub, Google o GitLab. No hay un nivel de servicio publicado.

La descripción del proyecto que sigue está en inglés.

Cómo se ve

Form Forge public deployment start page: the heading “Forms with an inspectable delivery pipeline”, buttons to open the workspace and view source, and three short feature panels.
Start page of the public deployment linked from the repository, before sign-in. Captured for this catalog. Ver a tamaño completo captura de Form Forge
pnpm install
cp apps/web/.env.example apps/web/.env
pnpm db:migrate
pnpm dev
Local development setup from the project’s getting-started guide. Requires PostgreSQL and a GitHub OAuth app; then open localhost:3000, sign in and publish a form.

Qué hace

Define a form as a schema, publish an immutable version, and collect responses through a hosted page, an embedded iframe or the public API. Every webhook delivery is signed and recorded with its attempts and errors, so you can see what happened to each response. Data stays in your PostgreSQL database.

Para quién es

  • Teams that want forms on their own infrastructure instead of a SaaS form builder.
  • Developers who need reliable webhook delivery with retries and diagnostics.

Limitaciones

  • Not a hosted SaaS: you operate PostgreSQL, the web app and the background-job server.
  • Sign-in uses GitHub, Google or GitLab OAuth; there are no email and password accounts.
  • Unfinished responses are not collected, and workspace packages are not published to npm.

Usos habituales

Collect sign-ups on your site

Embed a published form with automatic height, or post to the idempotent submission API from your own frontend.

Feed another system

Each response goes to a signed webhook through a transactional outbox with automatic retries and manual recovery.

Close intake on time

Pause a form, set a closing time or an acceptance limit, and show a custom closed message.

Descargar

Última versión estable v0.2.0, publicada el 18 oct 2026. Notas de la versión de v0.2.0. Datos de versiones consultados el 31 oct 2026 en GitHub Releases.

Cualquier plataforma

Archivos disponibles (1)

Los pasos de instalación están en inglés.

Verificar una descarga

SHA256SUMS contiene los hashes SHA-256 de los archivos de la versión. Si el hash coincide, tu archivo es idéntico al publicado. Es una suma de verificación, no una firma del autor: no demuestra quién compiló el archivo.

shasum -a 256 -c --ignore-missing SHA256SUMS

Primer uso

  1. Install Node.js (22.22.2+, 24.15.0+ or 26+), pnpm 12.10.1 and PostgreSQL, and create a GitHub OAuth app.

  2. Clone the repository, configure apps/web/.env, run the migrations and start the app:

    pnpm install
    pnpm db:migrate
    pnpm dev
  3. Start the local background-job server in another terminal:

    npx --ignore-scripts=false inngest-cli@latest dev -u http://localhost:3000/api/inngest
  4. Open localhost:3000, create a form, publish it and submit a test response.

Plataformas y cómo se comprobaron

  • Self-hosted with Docker ComposeCompatibilidad declarada, sin ejecución comprobada

    Production guide in deploy/README.md.

  • NetlifyComprobado en funcionamiento

    The public deployment linked from the repository runs on Netlify.

  • RespondentsCompatibilidad declarada, sin ejecución comprobada

    Hosted and embedded forms open in a modern web browser.

Las preguntas y los informes de errores van al gestor de incidencias del proyecto. Informa de problemas de seguridad como se describe en su política de seguridad.