scott

scott

Omni Captcha - An Adaptable Captcha Client

Introducing Omni Captcha - a new package that provides a unified interface for working with popular captcha providers like reCAPTCHA v2, hCaptcha, and Cloudflare Turnstile. Omni Captcha is available on Hex and the documentation can be found at Omni Captcha v0.0.1 — Documentation. The package was forked from the hcaptcha package.

Omni Captcha aims to simplify the process of adding captcha functionality to your web applications. With just a few lines of code, you can get up and running with any of the supported captcha providers. The package abstracts away the provider-specific implementation details, allowing you to focus on the core functionality of your application.

Key Features:

  • Supports Multiple Providers: Out of the box, Omni Captcha supports reCAPTCHA, hCaptcha, and Cloudflare Turnstile. No need to learn the intricacies of each provider’s API.
  • Extensible Architecture: The package is designed to be easily extended to support additional captcha providers in the future. If your needs change, you can quickly integrate a new provider without rewriting your entire captcha integration.
  • Seamless Integration: Omni Captcha provides a consistent API across all supported providers, making it easy to swap between them as needed.
  • Sandbox Mode: Omni Captcha includes a sandbox mode for development and testing, allowing you to experiment with the different captcha providers without impacting your production environment.

Whether you’re building a new web application or maintaining an existing one, Omni Captcha can help streamline your captcha integration process. Give it a try today and see how it can simplify your captcha implementation!

Most Liked

arcanemachine

arcanemachine

Cool project.

Your HexDocs source code links aren’t working. Example:

https://gitlab.com/scott-codes-things/omni-captcha/blob/v0.0.1/README.md#L1

Where Next?

Popular in Libraries Top

marcuslankenau
I feel kind of stuck with the absence of a proper xml library for Elixir. Currently I use SweetXML which was ok for me more or less to pa...
New
treble37
Just looking for a little feedback on a tiny helper library I built - Sometimes I find the need to convert maps with atom keys to maps...
New
KronicDeth
Elixir plugin for JetBrain’s IntelliJ Platform (including Rubymine) This is a plugin that adds support for Elixir to JetBrains IntelliJ...
289 35421 110
New
mbuhot
Leverage Open Api 3.0 (Swagger) to document, test, validate and explore your Plug and Phoenix APIs. Generate and serve a JSON Open API ...
New
mcrumm
If you would like to migrate away from node/npm/webpack while still using sass, the dart_sass package provides a installer and runner for...
New
michalmuskala
Hello everybody. I have just released Jason - a new JSON library. You might be wondering, why do we need a new library? The primary foc...
New
wfgilman
I’ve cleaned up and open sourced three financial libraries I was using for my company. They are bindings for the APIs of these three comp...
New
tmbb
PhoenixWS - Websockets over Phoenix Channels Source code on Github here: https://github.com/tmbb/phoenix_ws Phoenix channels are a great...
New
gabrielpoca
Hello everyone! I want to share with you something that I’m really proud of: https://stillstatic.io/ Still is a static site builder for...
New
mtrudel
Bandit is an HTTP server for Plug and WebSock apps. Bandit is written entirely in Elixir and is built atop Thousand Island. It can serve...
New

Other popular topics Top

Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
sorentwo
Hello! tl;dr Announcing Oban, an Ecto based job processing library with a focus on reliability and historical observability. After spen...
977 41022 311
New
sergio
In Ruby, I can go: User.find_by(email: "foobar@email.com").update(email: "hello@email.com") How can I do something similar in Elixir? ...
New
bsollish-terakeet
Credo is smart enough to check for (something like) this: assert length(the_list) == 0 with this response: Checking if an enum is empt...
New
aalberti333
As the title describes, I’m trying to run Enum.map() over a list of key/value pairs, where the value is a map. My data looks like this: ...
New
Jim
As a follow up to my earlier question: I have the code compiling and running but not getting a successful login from the rest server. ...
New
lastday4you
I wanted to check elixir version in phoenix because i found that my elixir is 1.5 but when i use Enum.chunk_by it said the function is un...
New
fireproofsocks
Forgive me if this is obvious, but how does one delete a database record WITHOUT selecting it first? https://hexdocs.pm/ecto/Ecto.Repo.h...
New
Patoshizzle
After calling mix ecto.create I get this error: 17:00:32.162 [error] GenServer #PID<0.412.0> terminating ** (Postgrex.Error) FATAL...
New
magnetic
Hey :wave:t3: Elixir community, I’ve been learning Elixir, and working on some side projects. My editor of choice is VSCode, and althoug...
New

Sub Categories:

We're in Beta

About us Mission Statement