# Project pack: OpnForm @ 769496b Facts about **OpnForm** for an AI following the [BespokeAI handover guide](https://handoff.bespokeai.software/guide/v4.md). Pinned to one version; never changes after publication. > OpnForm is an open-source form builder, a Typeform alternative. You drag in questions, add logic, branding and notifications, and share a link or embed the form on your site. Responses land in a dashboard and can go to email, Slack, Google Sheets or webhooks. ## Setup path (checked 2026-11-03) - **Needs Docker.** Tell the person before any setup work; no light non-Docker route is documented upstream. Docker Desktop on Windows may need a computer restart and an admin-only Windows feature (virtualisation); say so and let the person decide. - Verdict source: https://docs.opnform.com - You may be unable to download source archives or run commands in this session. The person downloads and runs things; if you cannot fetch something, give any changed file in full in chat with its path. ## Version and source - Repository: https://github.com/OpnForm/OpnForm - Pinned commit: `769496b684ff8da2892b1a8d457ff9208ae87932`. Use exactly this version. - Zip the person can download in a browser: https://github.com/OpnForm/OpnForm/archive/769496b684ff8da2892b1a8d457ff9208ae87932.zip - Fresh checkout (only if you have a shell and git): use the commands below in an empty folder. If this exact source is already checked out, keep your branch and use the development command; do not clone again or reset local changes. - Official docs: https://docs.opnform.com - Live demo: https://opnform.com/forms/create/guest. Try the form builder as a guest on the official site. - Licence: **AGPL-3.0-only**. Free to use and change. If other people use your changed version, including over a network (for example a website you host for them), you must offer them your source code under the same licence. Using it privately for yourself or your household has no extra obligations. The api/app/Enterprise folder is under a separate licence. ## Commands from the pinned source - Developer commands (they may use Docker): ```sh git clone https://github.com/OpnForm/OpnForm bespoke-opnform cd bespoke-opnform git checkout --detach 769496b684ff8da2892b1a8d457ff9208ae87932 # Prepare development requirements and local configuration first. cp api/.env.example api/.env cp client/.env.example client/.env docker compose up -d ``` - Separate trial of the current upstream release (not your changes; sample data and a separate data directory only): ```sh Follow the Docker deployment guide at https://docs.opnform.com/deployment/docker, which provides the compose file and env templates. ``` - Tools these commands use: Docker; PHP 8.3, Composer and Node 22 for local development - Develop: `docker compose up -d` - Stack: php, javascript, vue (Laravel, Nuxt, Vue, Tailwind). Difficulty for a non-developer with an AI: **moderate**. A Laravel API plus a Nuxt front end. Forms are built in the visual editor; new field types and integrations touch both sides. - The project's own AI instructions, in the repository: `AGENTS.md`. Personal data: **yes**. Stored in: A Postgres database plus a storage folder or bucket. Secrets are entered by the person, never in chat. --- Later, only when a step needs it: [reference.md](https://handoff.bespokeai.software/p/opnform/769496b/r3/reference.md) (customisation points, must-keep-working, data and costs, coding conventions) · [hosting.md](https://handoff.bespokeai.software/p/opnform/769496b/r3/hosting.md) (long-term hosting; hosts are paid third parties) · [bespoke.yaml](https://handoff.bespokeai.software/p/opnform/769496b/r3/bespoke.yaml) · [SKILL.md](https://handoff.bespokeai.software/p/opnform/769496b/r3/SKILL.md)