emberrenewed/auth-manager

A complete Authentication Management Dashboard for Laravel — manage social auth providers, credentials, analytics and audit logs from a beautiful UI.

Maintainers

Package info

github.com/emberrenewed/auth

pkg:composer/emberrenewed/auth-manager

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.1 2026-06-25 14:56 UTC

This package is auto-updated.

Last update: 2026-06-25 15:07:44 UTC


README

A complete Authentication Management Dashboard for Laravel. Install the package, visit /authtechnobase, and manage every social-auth provider — credentials, enable/disable, health checks, analytics and audit logs — from a modern UI. Built on Laravel Socialite with a config-driven provider registry so new providers are added without touching core code.

Status: this repository is a production-ready foundation. The full architecture, the core flows (credential management, env mirroring, toggle, health, analytics, audit logging, OAuth callback) and the dashboard are implemented and tested. The remaining providers are registered in config and backed by the generic strategy — wiring a new one is a config entry, not code.

Features

  • 🔌 18 providers out of the box (Google, Facebook, GitHub, GitLab, Discord, Microsoft, Apple, LinkedIn, Twitter/X, Slack, Telegram, Spotify, Twitch, Amazon, Reddit, TikTok, Yahoo, Dropbox) — all config-registered.
  • 🎛 Dashboard at /authtechnobase: providers, users, analytics, audit logs, system health, settings.
  • 🔐 Encrypted credentials at rest + safe, atomic .env mirroring with automatic backups and restore.
  • 📦 Auto dependency detection — missing composer packages are detected and installable from the UI (queued).
  • 🩺 Health checks & connection testing per provider.
  • 📈 Analytics (logins over time, by provider) with cache tags.
  • 📝 Audit logging of every meaningful action via an event subscriber.
  • 🛡 spatie/laravel-permission roles & permissions, CSRF, rate limiting.
  • 🌙 Dark / light mode, TailwindCSS + Alpine.js + Chart.js.

Requirements

  • PHP 8.2+
  • Laravel 11 or 12
  • laravel/socialite, spatie/laravel-permission (installed as dependencies)

Installation

composer require emberrenewed/auth-manager
php artisan auth-manager:install --seed-roles

auth-manager:install publishes the config + migrations, optionally runs them, and (with --seed-roles) creates the default roles and permissions. Then open:

https://your-app.test/authtechnobase

Configuration

Publish and edit config/auth-manager.php:

php artisan vendor:publish --tag=auth-manager-config

Key options: dashboard route.prefix, authorization (permission/gate), encrypt_secrets, .env backup behaviour, cache, queue, rate_limit, and the providers registry.

Architecture

Controller (thin)  →  DTO  →  Action  →  Service / Repository  →  Model
                                   │
                                   └─ Events ──► Listeners (audit, cache, notify)
  • Action pattern — one class per use case, controllers only translate request → DTO → action → response.
  • Strategy + FactoryProviderInterface / AbstractProvider strategies resolved by ProviderManager (singleton) from the config registry.
  • Repository patternAuthProviderRepository, AuditLogRepository behind interfaces, cached via CacheManager.
  • DTO pattern — immutable readonly transfer objects at the HTTP boundary.
  • Event-drivenProviderEnabled/Disabled/Updated/Installed, EnvUpdated, UserAuthenticated with subscriber listeners.
  • FacadeAuthManager::providers(), ::isEnabled(), ::health().

See docs/ARCHITECTURE.md and docs/CUSTOM_PROVIDER.md.

Quality

composer test       # Pest
composer analyse    # PHPStan level max (with baseline)
composer format     # Laravel Pint
composer refactor   # Rector (dry by default)

License

MIT.