Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Captcha Laravel Package

mobicms/captcha

Mobicms Captcha is a lightweight CAPTCHA package for Laravel that generates customizable image challenges to protect forms from bots. It offers a simple API for rendering and validating codes, with configurable options for easy integration into login, registration, and contact forms.

Deep Wiki
Context7

A simple PHP CAPTCHA library

Frequently asked questions about Captcha
Is mobicms/captcha a Laravel package or a framework-agnostic library?
mobicms/captcha is a framework-agnostic PHP library, not a Laravel package. It ships no service provider, facade, config publishing, Blade component, or validation rule, so Laravel integration must be wrapped by your team. The underlying API is small, so a wrapper of roughly 100 to 200 lines is realistic.
How do I install mobicms/captcha in a Laravel application?
Install it with composer require mobicms/captcha and confirm the GD extension is available in your runtime. Because there is no Laravel package discovery, you will add your own service provider, config file, and image route. Container binding and a Blade component are your responsibility.
Does mobicms/captcha work with Laravel sessions like Redis or database drivers?
This is the biggest integration unknown: if the library reads and writes native $_SESSION directly, it will not interoperate cleanly with Laravel's Redis, database, or encrypted cookie sessions. You would need a small session bridge on the CAPTCHA routes or an adapter that maps the expected answer into Laravel's session store. Confirm the session mechanism before committing.
How do I validate a mobicms/captcha code in a Laravel form request?
Wrap the library's comparison in a custom validation rule so errors surface through Laravel's native validation flow. The rule should read the submitted code, compare it to the stored expected answer, and invalidate the challenge immediately after the check. Pair it with Laravel's RateLimiter to slow brute-force attempts.
Which PHP versions and image extensions does mobicms/captcha require?
The library generates images with GD, so the GD extension becomes a runtime platform requirement for Docker images, Lambda layers, and shared hosting. The exact supported PHP version matrix is not documented in the evaluation, so verify composer constraints against your Laravel 10, 11, or 12 stack. Imagick support, if any, is unconfirmed.
Is mobicms/captcha accessible and WCAG compliant?
Image-based CAPTCHAs are inherently hostile to screen readers and low-vision users unless an audio alternative exists. No audio fallback is documented for this package, which is a compliance concern under ADA, EAA, and WCAG in many jurisdictions. If accessibility is a requirement, invisible options like Cloudflare Turnstile or hCaptcha are safer choices.
Is the mobicms/captcha challenge single-use and replay resistant?
The package advertises session-based validation with one-time codes, which is sound only if the challenge is consumed on the first check and cannot be reused after a failed attempt. Replay and brute-force resistance depend on implementation details you must verify in source. Add Laravel's RateLimiter regardless.
Is mobicms/captcha safe and maintained enough for production?
Adoption risk is high: around 26 GitHub stars and a single apparent maintainer mean a low bus factor and little independent security review. CAPTCHA code is security-adjacent, so abandonment or a defect is not cosmetic. Contain it behind your own CaptchaService interface so it can be replaced in one file.
What are the best alternatives to mobicms/captcha for Laravel?
For self-hosted image CAPTCHAs, mews/captcha is Laravel-native and gregwar/captcha is a mature framework-agnostic option. For invisible and accessible verification, Cloudflare Turnstile and hCaptcha require no image rendering and offer stronger network-effect protection. Choosing a 26-star package needs a clear justification over these.
Does mobicms/captcha support multi-node deployments without sticky sessions?
It is unclear whether the challenge store is pluggable to Redis or Laravel's cache. If the library depends on native PHP sessions, multi-node deployments will need sticky sessions or a shared session bridge. Verify this before scaling horizontally.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core
nodisrupt/laravel-agent
sierratecnologia/media-manager