90's fashion might be back in style, but 90's development practices are not. Our detailed installation guide painlessly introduces you to the modern developer's toolkit.
New in version 4, the Sprinkle system lets you implement your application without ever modifying UF's core codebase. Sprinkles can also be used to implement themes, plugins and more - see what our community has to offer!
No spaghetti code in here! Give the gift of maintainability to your future self.
Just about every component can be optimized for production. Define and compile asset bundles with Node.js, leverage caching for template rendering and route resolution, or use Laravel's caching service to cache arbitrary resources. All of this is automatically supported by UF's core!
Clear, jargon-free guides for every aspect of the framework. More than just the "how" and "what" - we explain the "why", too.
Stop writing tedious queries for basic database operations. Spin simple one-liners with Laravel's active record implementation, Eloquent.
UserFrosting supports sophisticated pluralization rules and nested subkeys for seamless multi-language applications.
The throttler lets you define custom rules for limiting request rates by IP or username. Protect your company from the risk of DOS and bruteforce attacks.
Easily implement sortable, searchable, paginated JSON APIs for your data collections with our customizable Sprunje system.
Fortress is a unified interface for data validation and transformation. Validate user input on both client- and server-side with a single JSON schema!
Throw an exception, then use a custom exception handler to send detailed error information to logs and/or present a useful message for users.
UserFrosting uses Monolog, which can send detailed logging information to the database, log files, or even to email!
Works out of the box.
A built-in user management page lets you view, search, and sort your users, create new user accounts, and edit existing ones. Also provides tools to disable or delete users, manage permissions, and issue password resets.
Powerful role-based access control (RBAC) allows you to define fine-grained, programmatic rules for user access, then manage those permissions through the role management page.
Build beautiful dashboards for your users with the default AdminLTE theme.
Self-service password reset tools - for when the inevitable happens!
Optionally, open your site for public account registration. Captcha and email verification can be enabled to cut down on spammy accounts.
Let users modify various properties of their account - or not! Everything you need is already in place.
The root account lets you, the developer, bypass access control during testing.
Log user activities and IP addresses to the database or another service of your choice, then view them through the admin interface.
Assign users to groups and customize their experience of your site.