core icon indicating copy to clipboard operation
core copied to clipboard

enhancement: support for captcha

Open anantakumarghosh opened this issue 1 year ago • 2 comments

Please describe your feature. A captcha system for core forms. Where captcha will be run after form loads. Submit Action button will be disabled until positive value is received from captcha.

People should be able to use a key in formJson for CoreForm, like: captcha: true/false.

Describe the solution you'd like A generic function can be created that takes api_url, sitekey and secretKey.

These values will be read from wrappid.conf.json of app and service project.

  • in wrappid-app, api_url and sitekey will be read. sample wrappid.conf.json
        "captcha": {
            "enabled": true,
            "platforms": [
                {
                    "name": "",
                    "details": "",
                    "default": true,
                    "script_url": "",
                    "siteKey": ""
                }
                {
                    "name": "",
                    "details": "",
                    "enabled": true,
                    "script_url": "",
                    "siteKey": ""
                }
            ]
        }
  • in wrappid-service project, api_url and secretkey will be read. sample wrappid.conf.json
        "captcha": {
            "enabled": true,
            "platforms": [
                {
                    "name": "",
                    "details": "",
                    "default": true,
                    "api_url": "",
                    "secretkey": ""
                },
                {
                    "name": "",
                    "details": "",
                    "enabled": true,
                    "api_url": "",
                    "secretkey": ""
                }
            ]
        },

Few popular service APIs that are used commonly:

  • Cloudflare Turnstile - Free(with limitations) - OpenSource MIT. Allows only managed mode for free, unlimited volume
  • hCaptcha - Free(with limitations) - Free - proprietary. Free up to one million requests per month
  • reCaptcha - Free - proprietary.

anantakumarghosh avatar Aug 09 '24 12:08 anantakumarghosh

@anantakumarghosh please update in-terms of the MIT license violation for using third party API.

techoneel avatar Aug 11 '24 21:08 techoneel

@anantakumarghosh please update in-terms of the MIT license violation for using third party API.

Above mentioned are commonly used CAPTCHA APIs as per normal search, not detailed.

proprietary: It is recommended to not use proprietary licensed code, functions, APIs(this case) etc with MIT to avoid complexities.

If really needed, please go through the licence of the required to understand what they allow.

opensource: It is recommended to avoid GPL licensed code, functions, APIs(this case), as they require projects created using GPL code and projects using other GPL code to be GPL.

You can use the MIT code with MIT, and more.

I have a generative ai prompt response. You may go through it, but don't take it as a concrete answer. https://g.co/gemini/share/8e55395b5787

Detailed research contributions are welcomed ♥️.

anantakumarghosh avatar Aug 11 '24 21:08 anantakumarghosh