nowo-tech / auth-kit-bundle
Symfony bundle for configurable login and registration with overridable templates, registration modes, and i18n
Package info
github.com/nowo-tech/AuthKitBundle
Type:symfony-bundle
pkg:composer/nowo-tech/auth-kit-bundle
Fund package maintenance!
Requires
- php: >=8.2 <8.6
- doctrine/doctrine-bundle: ^2.10 || ^3.0
- doctrine/orm: ^2.15 || ^3.0
- symfony/asset: ^7.4 || ^8.0
- symfony/config: ^7.4 || ^8.0
- symfony/dependency-injection: ^7.4 || ^8.0
- symfony/form: ^7.4 || ^8.0
- symfony/framework-bundle: ^7.4 || ^8.0
- symfony/http-kernel: ^7.4 || ^8.0
- symfony/password-hasher: ^7.4 || ^8.0
- symfony/property-access: ^7.4 || ^8.0
- symfony/routing: ^7.4 || ^8.0
- symfony/security-bundle: ^7.4 || ^8.0
- symfony/translation: ^7.4 || ^8.0
- symfony/twig-bundle: ^7.4 || ^8.0
- symfony/validator: ^7.4 || ^8.0
- symfony/yaml: ^7.4 || ^8.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- nowo-tech/password-toggle-bundle: ^1.2.8
- phpstan/phpstan: ^2.0
- phpstan/phpstan-phpunit: ^2.0
- phpstan/phpstan-symfony: ^2.0
- phpunit/phpunit: ^10.0
- rector/rector: ^2.0
Suggests
- nowo-tech/password-toggle-bundle: Password fields with visibility toggle (^1.2.8)
- symfony/http-client: Required with symfony/ux-icons to fetch toggle icons on demand
- symfony/ux-icons: Required for password visibility toggle icons (^2.0 || ^3.0)
README
⭐ Found this useful? Install from Packagist and give the repo a star on GitHub.
Symfony bundle for configurable login, registration, and password reset: overridable Twig templates, registration modes (disabled, first_user_only, always), optional embeddable auth dropdown, locale-prefixed routes, assignable registration role, configurable user entity and form fields, built-in routes, and translations (en, es).
Works alongside Symfony Security — security.yaml remains required and is documented in INSTALLATION.md with optional CLI helper nowo:auth-kit:configure-security.
Features
- Login page compatible with Symfony
form_login - Registration with Doctrine persistence and password hashing
- Password reset (link, code, or both) with pluggable notifier
- Embedded auth dropdown (
auth_kit_dropdown()) for navbars and layouts - Locale in URL paths (
/en/login,/es/register, …) - Registration modes: disabled, first user only, always open
- Configurable
user_class, identifier field, login/register fields, role, routes, templates - Twig overrides via
templates/bundles/NowoAuthKitBundle/ - Translation domain
NowoAuthKitBundlewith app overrides
Installation
composer require nowo-tech/auth-kit-bundle
# config/packages/nowo_auth_kit.yaml nowo_auth_kit: user_class: App\Entity\User user_identifier_field: email registration_mode: first_user_only registration_role: ROLE_USER
php bin/console nowo:auth-kit:configure-security
Development
make up
make test
make release-check
Demo
make -C demo up-symfony7 # Symfony 7.4 — http://localhost:8009 make -C demo up-symfony8 # Symfony 8.1 — http://localhost:8010
Register the first user, then sign in. Demos include Bootstrap 5 UI overrides, en/es locale-prefixed URLs, embed dropdown, password reset, and FrankenPHP (Docker).
Screenshots
Welcome · Login · auth_kit_dropdown()
See demo/README.md for template override paths and docs/DEMO-FRANKENPHP.md for FrankenPHP setup.
Tests and coverage
- Tests: PHPUnit (unit)
- PHP: 100%
- TS/JS: N/A
- Python: N/A
License
MIT — see LICENSE.
Documentation
- Installation
- Configuration
- Usage
- Password reset
- Contributing
- Changelog
- Upgrading
- Release
- Security
- Engram
- Spec-driven development


