# Deploy and Host HeyForm on Sealos HeyForm is an open-source conversational form builder for surveys, questionnaires, quizzes, polls, and data collection workflows. This template deploys HeyForm Community Edition on Sealos with managed MongoDB, managed Redis, persistent upload storage, and public HTTPS access. ![HeyForm Screenshot](https://raw.githubusercontent.com/labring-actions/templates/kb-0.9/template/heyform/website-screenshot.webp) ## Features - Build conversational forms, surveys, quizzes, polls, and feedback pages. - Collect responses through public form links and manage them from a web dashboard. - Store application data in Sealos-managed MongoDB. - Use Sealos-managed Redis for cache, sessions, and background queues. - Persist uploaded files with a Sealos volume. - Optionally configure SMTP for verification, password reset, invitations, and notifications. ## Use Cases - Customer feedback and satisfaction surveys. - Lead capture and marketing questionnaires. - Event registration and intake forms. - Internal request, approval, and onboarding forms. - Quizzes, polls, and lightweight research forms. ## Included Components | Component | Description | | --- | --- | | HeyForm | `heyform/community-edition:v3.0.0-rc.7`, exposed on port `9157`. | | MongoDB | Stores users, teams, forms, projects, submissions, templates, and settings. | | Redis | Supports queues, cache, and runtime coordination. | | Persistent storage | Mounted for uploaded assets under `/app/packages/server/uploads` and `/app/packages/server/static/upload`. | | Ingress | Provides the public HTTPS URL generated by Sealos. | ## Deployment 1. Open the [HeyForm template](https://sealos.io/products/app-store/heyform) in the Sealos App Store and click **Deploy Now**. 2. Keep the default values for a quick deployment, or configure SMTP if you need email verification, password reset, invitations, or notification emails. 3. Click **Deploy Application**. 4. After the deployment is ready, open the App URL shown in Sealos. ## First Login and Registration HeyForm is a web application and requires an account before you can create forms. 1. Open the deployed HeyForm URL. 2. Click **Create an account** or open `/sign-up`. 3. Enter your name, email address, and password. 4. Use a password with at least 8 characters, including uppercase letters, lowercase letters, and a number. 5. After signing up, log in with the same email address and password. Registration is enabled by default in this template. If SMTP is not configured, the account can still be created, but email-based features such as verification messages, password reset emails, invitations, and notifications require valid SMTP settings. ## Configuration | Option | Description | Required | | --- | --- | --- | | SMTP From | Sender email address for verification and notification emails. | No | | SMTP Host | SMTP server host. | No | | SMTP Port | SMTP server port. Defaults to `587`. | No | | SMTP User | SMTP username. | No | | SMTP Password | SMTP password. | No | | SMTP Secure | Whether to use TLS for SMTP. | No | | SMTP Server Name | Optional TLS server name. | No | | SMTP Ignore Cert | Ignore SMTP certificate validation errors. | No | ## Resource Profile The template uses the smallest resource profile validated on Sealos for HeyForm Community Edition `v3.0.0-rc.7`: - HeyForm app: `80m` CPU / `192Mi` memory limits, `20m` CPU / `25Mi` memory requests. - MongoDB: Sealos-managed MongoDB with `500m` CPU / `512Mi` memory limits. - Redis: Sealos-managed Redis with `500m` CPU / `512Mi` memory limits. - Upload storage: one `1Gi` persistent volume mounted to both HeyForm upload paths. A `160Mi` app memory limit was tested and caused OOM during startup, so `192Mi` is the minimum validated memory limit for this template. ## Useful Links - [HeyForm Website](https://heyform.net/) - [HeyForm Documentation](https://docs.heyform.net/) - [HeyForm GitHub Repository](https://github.com/heyform/heyform) - [HeyForm Docker Image](https://hub.docker.com/r/heyform/community-edition)