Three pre-built roles. OTP password reset. Force-change on first login. RoleMiddleware out of the box. Stop rebuilding auth from scratch.
| User | Role | Status |
|---|---|---|
| Maria Santos | admin | active |
| Juan dela Cruz | staff | active |
| Ana Reyes | client | pending |
| Task | Client | Status |
|---|---|---|
| Process Request #42 | Ana Reyes | done |
| Review Document | Bob Cruz | in progress |
| Request | Submitted | Status |
|---|---|---|
| Document Request | Jun 1, 2024 | complete |
| Certificate Copy | Jun 3, 2024 | pending |
Each role gets its own middleware guard, dashboard, and permission scope. Extend to more roles in minutes.
Full system access. Manages users, roles, settings, and has visibility across all data.
Employee-level access. Extended StaffInfo profile with job title, department, emergency contact.
Public-facing user. Submits requests, tracks status, limited to their own data only.
role:admin, role:staff,admin โ protect any route with any role combination.
Email OTP โ no insecure link tokens that expire. 3-step flow: send โ verify โ reset.
Set must_change_password=true on any user. Middleware handles the redirect with infinite-loop protection.
Extended employee profile: employee ID, job title, employment status, gender, emergency contact, office location.
Tracks last_login_at and last_password_change_at automatically on every auth event.
One command โ php artisan db:seed --class=AdminUserSeeder โ and your default admin is ready.
Users are never hard-deleted. Restore any account without data loss.
Login, Register, ForcePasswordChange, SendOtp, VerifyOtp, ResetPasswordOtp โ all validated.
Copy src/ into your app, migrate, seed, register middleware โ done. No Composer package needed.
User submits email. 6-digit code sent.
User enters the code from email.
New password set. Old hash replaced.
One-time purchase. Use in unlimited projects with Extended License.