- What is konekt/user used for in Laravel applications?
- Konekt User is a Laravel package for complete user management: authentication, registration, login, password reset, profiles, addresses, and user CRUD. It is designed for back-office, CRM, ERP, and multi-tenant admin platforms where identity (a Person) is deliberately separated from access (a User). It is not a drop-in replacement for Breeze, Fortify, or laravel/ui, because it assumes the Konekt/Concorde modular monolith ecosystem rather than a standalone app.
- Which Laravel and PHP versions does konekt/user support?
- Do not assume compatibility; check the latest tagged release's composer.json for the supported Laravel and PHP version constraints. The package is part of a module chain, so the Konekt/Concorde, konekt/person, and konekt/acl versions must all line up with your Laravel major. Version drift is a real concern here, so pin the entire chain and verify each Laravel upgrade against a throwaway proof of concept rather than upgrading one package in isolation.
- How do I install konekt/user with Composer?
- You run composer require for the full dependency chain, not just konekt/user: expect konekt/concorde, konekt/person, and konekt/acl to come along. Then register the Concord modules in the correct order (person, then user, then acl) and run the migrations in that sequence. Plan for days rather than hours even on a greenfield project, because the module bootstrapping and migration ordering are where most of the setup effort goes.
- Do I need the Concorde ecosystem to use konekt/user?
- Practically yes. Konekt User is a module within the Konekt/Concorde modular monolith, not a standalone library, and its value is inseparable from Concorde and its sibling modules. Standalone adoption means pulling in Concorde plus person and acl, then accepting Concord's conventions for service providers, migrations, and route and model resolution. If your app is API-first, uses an external identity provider, or wants minimal dependencies in the auth path, this package is a poor fit.
- How do I configure custom User and Person models in konekt/user?
- The package is built around configurable models, so you can point it at your own User and Person classes through the module configuration. The catch is that Concord's conventions still govern route and model resolution, so your custom classes must honor the expected interfaces and relationships. Change the configuration before running migrations, because the User model depends on a foreign key back to the Person model.
- How does the Person to User relationship work in konekt/user?
- A User is a login-capable extension of a Person from konekt/person, with roles and permissions delegated to konekt/acl. That separation means the same person can hold a customer, employee, or contact record while the User row carries the credentials and access rights. This is exactly what makes the package strong for CRM and back-office domains, but it also means your data model needs to answer the overlap question before you commit.
- How do I migrate an existing Laravel users table to konekt/user?
- Treat this as a genuine data migration rather than a package swap. Standard users rows must be split into persons and users with a foreign key between them, password hashes carried over unmodified, and existing role and permission logic remapped onto konekt/acl. Plan for dual-write or a read-only freeze window during cutover, and verify the mapping with a proof of concept before you commit to a date.
- Does konekt/user handle password resets, email verification, and API tokens?
- The authentication surface itself is conventional Laravel: guard, provider, password hashing, and remember tokens, so password reset flows follow standard Laravel behavior. Email verification, two-factor authentication, and API tokens are the areas to confirm against the current release docs rather than assume, because they may be built in, delegated to Laravel, or absent. Since authentication is a high-blast-radius component, audit each of these flows explicitly before going to production.
- How do I test konekt/user authentication in a Laravel application?
- Because the guard and provider are standard Laravel, you can usually exercise authentication with Laravel's normal testing helpers and fakes. The part that needs care is the module bootstrap: your test suite must register the Concord modules in the right order and run migrations in sequence, or user and person tables will not resolve. A small proof-of-concept app with a smoke test for registration, login, and password reset is the cheapest way to validate all of this early.
- Is konekt/user actively maintained, and what are the alternatives?
- The adoption signal is weak, with very few stars and dependents, and it is effectively maintained by a single primary author with no evident commercial support tier. That does not make it unusable, but it does mean fewer eyes on edge cases in a security-sensitive area, so budget time for your own review of session, reset, and token handling. If you want a mainstream path, Laravel's own Breeze, Fortify, or laravel/ui are the alternatives; konekt/user only makes sense when you have already committed to Concorde and need the Person plus User plus ACL separation.