Go to file
Chirag Chhatrala 7365479c83
Email spam security (#641)
* Add hCaptcha on register page

* register page captcha test cases

* Refactor integration validation rules to include form context

- Updated the `getValidationRules` method in various integration handlers (Discord, Email, Google Sheets, Slack, Webhook, Zapier) to accept an optional `Form` parameter, allowing for context-aware validation.
- Enhanced the `EmailIntegration` handler to enforce restrictions based on user plans, ensuring free users can only create one email integration per form and can only send to a single email address.
- Added a new test suite for `EmailIntegration` to validate the new restrictions and ensure proper functionality for both free and pro users.
- Introduced loading state management in the `IntegrationModal` component to improve user experience during save operations.

These changes improve the flexibility and user experience of form integrations, particularly for email handling.

* for self-hosted ignore emil validation for spam

* fix pint

* ignore register throttle for testing env

* support new migration for mysql also

* Register page captcha enable if captcha key set

* fix test case

* fix test case

* fix test case

* fix pint

* Refactor RegisterController middleware and update TestCase setup

- Removed environment check for throttling middleware in RegisterController, ensuring consistent rate limiting for the registration endpoint.
- Updated TestCase to disable throttle middleware during tests, allowing for more flexible testing scenarios without rate limiting interference.

* Enhance hCaptcha integration in tests and configuration

- Added hCaptcha site and secret keys to phpunit.xml for testing purposes.
- Updated RegisterTest to configure hCaptcha secret key dynamically, ensuring proper token validation in production environment.

These changes improve the testing setup for hCaptcha, facilitating more accurate simulation of production conditions.

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-12-18 13:16:27 +01:00
.github Bump node & nuxt depencies 2024-11-20 18:41:56 +01:00
api Email spam security (#641) 2024-12-18 13:16:27 +01:00
client Email spam security (#641) 2024-12-18 13:16:27 +01:00
docker Bump node & nuxt depencies 2024-11-20 18:41:56 +01:00
docs Update Docker Compose commands in page documenting Docker Compose deployment (#644) 2024-12-12 14:21:16 +01:00
integrations/zapier Updated zapier integration version 2024-08-23 09:42:44 +02:00
scripts Separated laravel app to its own folder (#540) 2024-08-26 18:24:56 +02:00
.dockerignore Docker compose setup (#513) 2024-08-05 12:06:20 +02:00
.editorconfig Initial commit 2022-09-20 21:59:52 +02:00
.gitattributes Initial commit 2022-09-20 21:59:52 +02:00
.gitignore Separated laravel app to its own folder (#540) 2024-08-26 18:24:56 +02:00
LICENSE Changing license to AGPL 2022-09-20 22:03:59 +02:00
README.md Technical docs (#553) 2024-09-02 15:33:17 +02:00
amplify.yml Attempt to simplify build 2024-01-08 22:30:58 +01:00
docker-compose.yml Fix Docker api issues 2024-08-28 17:20:17 +02:00

README.md

OpnForm

Github Stars Commits per month License Report a bug Ask a question Ask a question Ask a question Open Bounties Rewarded Bounties

OpnForm is an open-source form builder.

Get Started

The easiest way to get started with OpnForm is to sign up for our managed service in the Cloud. You get support, backups, upgrades, and more. Your data is safe and secure, and you don't need to worry about maintenance or infrastructure. Check out our quick overview of cloud vs self-hosting.

Key Features

  • 🚀 No-code builder with unlimited forms & submissions
  • 📝 Various input types: Text, Date, URL, File uploads & much more
  • 🌐 Embed anywhere
  • 📧 Email notifications
  • 💬 Integrations (Slack, Webhooks, Discord)
  • 🧠 Form logic & customization
  • 🛡️ Captcha protection
  • 📊 Form analytics

For a complete list of features and detailed documentation, visit our Technical Documentation.

Quick Start

The easiest way to get started with OpnForm is through our official managed service in the Cloud.

For self-hosted installations, please refer to our Deployment Guides. For detailed instructions on setting up a local environment, check out our Local Deployment Documentation.

Support & Community

If you need help or have questions, please join our Discord community. For more information and assistance, check out the following resources:

License

OpnForm is open-source under the GNU Affero General Public License Version 3 (AGPLv3) or any later version. You can find it here.