z-song/laravel-admin
37.1
Weak · 26 September 2026
40.8k
lines of production code
PHP
with JavaScript
4
measurements over time
What this system is
This release delivers a comprehensive architectural overhaul of the admin panel, introducing a modular class hierarchy for Forms, Grids, and Actions while removing legacy Blade templates in favor of a new, extensible component system. It significantly expands localization support with new language packs for Arabic, Azerbaijani, Bangla, German, French, Hebrew, Indonesian, Japanese, Korean, Malaysian, Dutch, Portuguese, Russian, Turkish, Ukrainian, Urdu, and both Simplified and Traditional Chinese. The update also integrates modern UI libraries including Bootstrap Slider, Flatpickr, jQuery pjax, and SweetAlert2, alongside a robust CLI toolset for scaffolding and configuration management.
Features
Add Chinese (Simplified) admin interface translations
A new \resources/lang/zh-CN/admin.php\ file has been added, providing comprehensive Chinese (Simplified) translations for the admin panel's UI elements, including login, user settings, CRUD operations, pagination, and error messages. This enables the application to display the administrative interface in Chinese for users.
resources/lang/zh-CN · high confidence
Add Dutch (nl) language translations
The Dutch language file (resources/lang/nl/admin.php) has been added, providing translations for the admin panel's UI elements, including login, menu titles, and various action labels.
resources/lang/nl · high confidence
Add Traditional Chinese (zh-TW) admin interface translations
A new Traditional Chinese (zh-TW) language file has been added for the admin panel, providing translations for core UI elements such as login, logout, settings, CRUD actions (create, edit, delete), and system messages. This enables the admin interface to be fully localized for Traditional Chinese users, including pagination ranges, file upload labels, and permission denial alerts.
resources/lang/zh-TW · high confidence
Add column filtering and inline editing capabilities to the Grid
Users can now filter grid columns using new filter components (CheckFilter, InputFilter, RangeFilter) that render in the column header, allowing for search, date, and range-based queries. Additionally, the Grid now supports inline editing for columns, enabling users to edit values directly within the grid view using various input types such as text, date, time, and select lists.
src/Grid/Column · high confidence
Add context menu and dropdown actions for grid rows
Users can now interact with grid rows via a right-click context menu and a dropdown menu for actions. The new context menu allows selecting row actions via a right-click on table rows, while the dropdown menu provides a standard dropdown interface for default and custom grid actions, including support for dividers and custom action rendering.
resources/views/grid/actions · high confidence
Add custom tools support for ModelTree
A new \Tools\ class has been introduced in \src/Tree/Tools.php\ to enable the addition of custom tools for the ModelTree. This class manages a collection of tools, allowing them to be added and rendered as an HTML header bar, supporting both \Renderable\ and \Htmlable\ interfaces as well as plain strings.
src/Tree · high confidence
Add database migration for admin tables
The database migration file 2016\_01\_04\_173148\_create\_admin\_tables.php has been added to the codebase. This migration defines the schema for the admin panel's core tables, including users, roles, permissions, menus, and their associated relationship tables (e.g., role\_users, role\_permissions). This change establishes the necessary database structure for the admin system.
database · high confidence
Add form field and hook management traits
The form builder now includes new traits to manage form fields and lifecycle hooks. The \HasFields\ trait introduces a registry of available form fields (such as text, checkbox, select, date, and relationship fields like \belongsTo\ and \belongsToMany\) and methods to extend, alias, or forget them. The \HandleCascadeFields\ trait adds support for cascading form groups. The \HasHooks\ trait provides a hook system for form events including \editing\, \submitted\, \saving\, \saved\, \deleting\, and \deleted\, allowing developers to register callbacks for these specific form lifecycle stages.
src/Form/Concerns · high confidence
Add form field templates for admin actions
New Blade templates are introduced for rendering form fields within admin actions, including checkbox, date, file, hidden, modal, multiple file, multiple select, radio, select, text, and textarea inputs. These templates standardize the UI for action forms, enabling users to configure and submit data through structured input fields in the admin panel.
resources/views/actions · high confidence
Add new UI and form widgets
Added new widget classes to the \src/Widgets\ directory, including Alert, Box, Callout, Carousel, Collapse, ContainsForms, Form, InfoBox, MultipleSteps, Navbar, StepForm, Tab, and Table. These classes provide new UI components for displaying alerts, collapsible boxes, carousels, and tabbed forms, as well as a base Widget class and a ContainsForms trait to support multi-step and tabbed form interactions.
src/Widgets · high confidence
Added Arabic translations for the admin interface
The application now supports Arabic localization for the admin panel. A new translation file (resources/lang/ar/admin.php) has been added, providing Arabic text for common UI elements such as login, logout, menu titles, and various action buttons (e.g., create, delete, edit). This allows users interacting with the admin interface to see the interface in Arabic.
resources/lang/ar · high confidence
Added Azerbaijani (az) language translations
The application now supports the Azerbaijani language. A new translation file at resources/lang/az/admin.php provides localized strings for the admin interface, including labels for login, user settings, actions, and system messages.
resources/lang/az · high confidence
Added Bangla (bn) language support for the admin panel
Users can now interact with the admin panel in Bangla. A new translation file (resources/lang/bn/admin.php) has been added, providing Bangla translations for all admin interface elements, including login, user settings, CRUD actions, and system messages.
resources/lang/bn · high confidence
Added Bootstrap Slider, Colorpicker, and iCheck plugins
The AdminLTE assets now include the Bootstrap Slider, Bootstrap Colorpicker, and iCheck plugins. This adds support for interactive range sliders, color selection, and enhanced checkbox/radio button styling to the interface.
(repo-wide) · high confidence
Added Delete, Edit, and Show row actions for the Grid
New row actions are now available in the Grid component: Delete, Edit, and Show. The Delete action performs model deletion within a database transaction to ensure consistency, while Edit and Show provide direct links to the respective resource pages.
src/Grid/Actions · high confidence
Added English and Polish admin interface translations
The admin interface now supports English and Polish localization. New language files (resources/lang/en/admin.php and resources/lang/pl/admin.php) have been added, providing translations for common UI elements such as login, logout, create, delete, and menu titles. This allows users to interact with the admin panel in their preferred language.
resources/lang/en · high confidence
Added Flatpickr v4.6.13 datepicker assets
Added the Flatpickr v4.6.13 JavaScript and CSS assets to the project, enabling the use of the Flatpickr datepicker component in the application.
resources/assets/flatpickr · high confidence
Added Hebrew (he) language file for the admin panel
A new Hebrew translation file (resources/lang/he/admin.php) has been added, providing Hebrew labels for the admin interface, including menu titles, form fields, and system messages.
resources/lang/he · high confidence
Added Indonesian (id) language support
The Indonesian language pack has been added to the application, providing translations for the admin panel interface. This includes standard UI elements such as login, logout, settings, and common actions like create, delete, and save, enabling users to interact with the system in Indonesian.
resources/lang/id · high confidence
Added Malaysian (Bahasa Melayu) language support for the admin panel
A new language file for Malaysian (ms) has been added to the application's localization resources. This introduces translations for over 100 key-value pairs covering the admin panel interface, including navigation, user settings, form inputs, and system messages. Users can now interact with the admin dashboard in Bahasa Melayu.
resources/lang/ms · high confidence
Added NProgress integration and 'Scroll to Top' button to the admin interface
The admin interface now includes a visual loading indicator (NProgress) that displays a progress bar during page transitions and AJAX requests, improving the perceived performance of the admin panel. Additionally, a 'Scroll to Top' button has been added to the layout, which appears when the user scrolls down the page, allowing for quick navigation back to the top. These changes are supported by new CSS styles for the progress bar and the floating button, as well as JavaScript logic to trigger the progress bar and handle the button's visibility and click events.
resources/assets/laravel-admin · high confidence
Added Persian (Farsi) language support for the admin panel
A new Persian (Farsi) translation file (resources/lang/fa/admin.php) has been added to the project. This provides the first complete localization for the admin interface, covering core UI elements such as login, user settings, menu titles, and action messages, enabling the application to display the admin panel in Persian.
resources/lang/fa · high confidence
Added Ukrainian language support for the admin panel
Users can now interact with the admin interface in Ukrainian. This change introduces a new translation file (resources/lang/uk/admin.php) containing 106 key-value pairs for common UI elements such as login, logout, save, delete, and various status messages, enabling full localization of the administrative dashboard for Ukrainian-speaking users.
resources/lang/uk · high confidence
Added Urdu language support for the admin interface
Users can now interact with the admin panel in Urdu. This change introduces a new translation file (resources/lang/ur/admin.php) that maps English UI strings to their Urdu equivalents, covering core navigation, forms, and status messages.
resources/lang/ur · high confidence
Added inline-edit popover and submit logic for grid rows
New Blade templates for the inline-edit feature have been introduced: a popover component that handles the display and positioning of the edit interface, and a submit handler that processes the AJAX request to update the grid row. The submit logic includes validation error handling and success feedback, enabling users to edit and save changes directly within the grid view.
resources/views/grid/inline-edit/partials · high confidence
Added jQuery pjax library
The project now includes the jquery-pjax library, enabling partial page loads via AJAX to update the DOM and update the browser's history state. This allows for faster, smoother navigation experiences where only specific container elements are updated without a full page reload.
resources/assets/jquery-pjax · high confidence
Added new UI components for grid interactions and interface controls
Introduced several new Blade components to enhance the user interface: a column expandable row for dynamic content loading, a modal-based column viewer, a file picker for asset selection, a fullscreen toggle for the main container, a column selector for grid visibility, and a refresh button for the container. These components provide the frontend templates and JavaScript logic required for these specific UI features.
resources/views/components · high confidence
Added new widget view templates for the UI
Introduced Blade templates for a suite of UI widgets, including alert, box, callout, carousel, collapse, form, info-box, tab, and table. These views define the HTML structure for rendering these components, with the box widget now supporting a footer and the form widget including submit and reset buttons.
resources/views/widgets · high confidence
Added quick-create form templates for grid fields
Introduced new Blade view templates for the grid's quick-create feature, enabling inline data entry directly within the grid interface. The update adds specific rendering templates for different field types: text inputs, single and multiple select dropdowns, and date fields. These templates define the HTML structure and styling for the quick-create form, including a header row with a 'Create' button that toggles the form's visibility, and individual field renderers that support placeholder text, CSRF protection, and standard form submission.
resources/views/grid/quick-create · high confidence
Added table displayer for grid columns
A new Blade template for rendering grid columns as an HTML table has been added at resources/views/grid/displayer/table.blade.php. This template iterates over column titles and data rows to generate a styled table with headers and body rows, providing an alternative visual representation for grid data.
resources/views/grid/displayer · high confidence
Added template files for the admin:extend command
New stub files have been added to the src/Console/stubs/extension directory, providing the default structure for a new admin extension. These templates include a .gitignore, LICENSE, README, composer.json, controller, extension class, routes, service provider, and a basic view, which are used by the admin:extend command to scaffold a new extension.
src/Console/stubs/extension · high confidence
Admin facade now exposes methods for CSS, JS, and style management
The Admin facade now exposes methods for managing CSS, JavaScript, and styles, including new \css()\, \js()\, \headerJs()\, \script()\, and \style()\ methods. This allows users to inject custom styles and scripts into the admin interface directly through the facade.
src/Facades · high confidence
Dashboard now displays environment, dependencies, and extension information
The dashboard view has been updated to include new sections for displaying environment variables, project dependencies with their versions, and a list of available extensions with their installation status. These new Blade templates render data about the application's configuration, third-party packages, and installed extensions directly on the main dashboard page.
resources/views/dashboard · high confidence
French language pack added for the admin interface
A new French translation file (resources/lang/fr/admin.php) has been introduced, providing French labels for core admin UI elements such as login, logout, save, delete, and menu titles. This enables the application to display these interface strings in French for users.
resources/lang/fr · high confidence
German language support added for the admin interface
Users can now interact with the admin panel in German. A new translation file (resources/lang/de/admin.php) has been introduced, providing German equivalents for all administrative UI strings, including login, user settings, menu items, and common actions like save, delete, and filter.
resources/lang/de · high confidence
Grid component refactoring and feature enhancements
The Grid component has been refactored by extracting its various capabilities into dedicated traits within the src/Grid/Concerns directory. This change introduces new features including double-click to edit rows, fixed headers and columns, column hiding/selection, quick search, quick create, hotkeys, and a total row. It also includes an exporter for grid data and a selector for filtering. These changes provide users with more interactive and functional grid tables.
src/Grid/Concerns · high confidence
Grid filter layout system with column-based organization
The Grid filter now supports a structured layout where filters can be organized into columns with specific widths. This introduces new \Column\ and \Layout\ classes that allow users to define how filter fields are arranged in the grid's filter section, enabling multi-column filter layouts instead of a single linear list. Additionally, the default ID filter is removed from the first column by default.
src/Grid/Filter/Layout · high confidence
Introduce column-based form layout structure
Added new \Column\ and \Layout\ classes in \src/Form/Layout\ to support multi-column form layouts. The \Layout\ class manages a collection of \Column\ objects, each holding a set of form fields, enabling developers to define structured, grid-like arrangements for form elements.
src/Form/Layout · high confidence
Introduce database models and seeder for admin authentication and authorization
The \src/Auth/Database\ directory now contains new Eloquent models (\Administrator\, \Role\, \Permission\, \Menu\, \OperationLog\) and a \HasPermissions\ trait that enable a built-in RBAC system. A new \AdminTablesSeeder\ is provided to automatically create a default admin user, an 'Administrator' role, and a set of default permissions and menu items upon database seeding. This change adds the foundational database schema and seeding logic for the admin panel's user and permission management features.
src/Auth/Database · high confidence
Introduce extensible grid export system with CSV and Excel support
The Grid component now includes a new, extensible export architecture. A new \AbstractExporter\ base class and \ExporterInterface\ define the contract for all exporters. Specific implementations for CSV (\CsvExporter\) and Excel (\ExcelExporter\) are provided, allowing users to customize headers, select specific columns, apply callbacks for title and column formatting, and handle BOM headers for CSV files. This refactoring enables developers to create custom export formats by extending the abstract base class.
src/Grid/Exporters · high confidence
Introduce inline editing for Grid columns
Adds a new inline-editing interface for the Grid component, allowing users to edit values directly within the grid view. The change introduces a set of Blade templates (comm, input, textarea, select, radio, checkbox, datetime, upload, switch, switch-group, and belongsto) that render editable fields in popovers or modals. This enables users to update records without navigating away from the list view, with immediate feedback via toasts and visual updates to the grid cells.
resources/views/grid/inline-edit · high confidence
Introduce new Blade templates for the Show page layout and fields
The Show page rendering has been refactored into dedicated Blade templates. A new \panel.blade.php\ template now renders the main container, title, tools, and iterates over fields, while a new \field.blade.php\ template handles the rendering of individual fields with configurable label and field widths. This change introduces a new structural component for the Show page, allowing for more flexible field rendering and layout control.
resources/views/show · high confidence
Introduce new admin controllers for resource management and authentication
The \src/Controllers\ directory now includes a suite of new controllers that define the backend management interfaces for the application. \AdminController\ provides a base class for resource CRUD operations, while \AuthController\ handles user login, logout, and profile settings. \MenuController\ manages the navigation tree, \PermissionController\ and \RoleController\ handle access control, and \UserController\ manages administrator accounts. Additionally, \LogController\ provides an interface for viewing operation logs, and \HandleController\ processes dynamic form and action submissions.
src/Controllers · high confidence
Introduce new default Blade templates for the admin interface
The project now ships with a new set of default Blade templates for the admin panel, including views for the main layout (index), content, forms, login, pagination, tree structures, and relation displays. These templates define the standard HTML structure, including the header, sidebar, and content areas, as well as specific components like the login form with 'Remember me' support and a configurable breadcrumb navigation system.
resources/views · high confidence
Japanese language support added to admin panel
Added Japanese translations for the admin interface, including common UI labels, form fields, and system messages. This allows users to view the admin panel in Japanese.
resources/lang/ja · high confidence
Korean language support added to the admin interface
Users can now see the admin panel in Korean. This change adds a new translation file (resources/lang/ko/admin.php) containing Korean strings for common UI elements such as login, logout, settings, and various action buttons, enabling a localized experience for Korean-speaking administrators.
resources/lang/ko · high confidence
New Blade templates for grid filter components
Added new Blade view templates for various grid filter types, including between, betweenDatetime, button, checkbox, container, datetime, gt, lt, modal, multipleselect, radio, select, text, and where. These templates define the HTML structure for rendering different filter inputs in the admin interface, supporting features like date ranges, dropdowns, checkboxes, and modal-based filtering.
resources/views/filter · high confidence
New Permission class for access control
A new Permission class has been added to the authentication module, providing static methods (check, allow, deny, free) to verify user permissions and roles. The class includes logic to return a 403 Forbidden status for AJAX requests that lack the required permissions, while handling standard and Pjax responses for other requests.
src/Auth · high confidence
New action interactor classes for dialogs and forms
Added new PHP classes in the \src/Actions/Interactor\ directory to handle action interactions. \Dialog.php\ provides methods for displaying success, error, warning, info, and confirmation dialogs. \Form.php\ introduces a fluent interface for building action forms with various input fields (text, email, integer, ip, url, password, mobile, textarea, select, multipleSelect, etc.) and supports table-based forms. \Interactor.php\ serves as the abstract base class for these interactors.
src/Actions/Interactor · high confidence
New admin builder and model tree traits
The src/Traits directory now includes several new traits that expand the admin interface capabilities. AdminBuilder provides static factory methods to instantiate Grid, Form, and Tree components. ModelTree adds hierarchical tree structure support to Eloquent models with configurable parent, title, and order columns. Resizable introduces thumbnail generation for image attributes. ShouldSnakeAttributes controls whether model attributes are converted to snake\_case in arrays. DefaultDatetimeFormat ensures consistent date serialization across Laravel versions. HasAssets manages CSS/JS asset loading and minification.
src/Traits · high confidence
New admin:action command for generating admin actions
A new \admin:action\ console command has been added to the \src/Console\ directory, allowing users to generate admin action classes with support for grid batch, grid row, form, and dialog variants. Alongside this, several other new commands were introduced in the same directory: \admin:config\ to compare configuration differences, \admin:controller\ to generate controllers from models, \admin:create-user\ for creating admin users, \admin:export-seed\ to export database tables as seeds, \admin:extend\ to scaffold extensions, \admin:form\ for form widgets, \admin:generate-menu\ to create menu items from routes, \admin:import\ to import extensions, \admin:install\ for initial setup, \admin:make\ for generating controllers, \admin:menu\ to display the menu, \admin:minify\ for CSS/JS minification, \admin:permissions\ to generate permissions from tables, \admin:publish\ to re-publish assets, \admin:reset-password\ to reset user passwords, and \admin:uninstall\ to remove the package. These commands collectively expand the CLI toolset for managing and scaffolding Laravel Admin features.
src/Console · high confidence
New console stubs for admin scaffolding
Added a comprehensive set of new stub templates in src/Console/stubs to support code generation for the admin panel. This includes templates for controllers (ExampleController, HomeController, AuthController), form builders (Form, StepForm), actions (Action, RowAction, BatchAction), and other scaffolding files (routes, bootstrap, blank). These stubs enable developers to quickly generate boilerplate code for common admin tasks like managing tables, creating multi-step forms, and defining grid actions.
src/Console/stubs · high confidence
New exception handler for rendering and flashing errors
A new \Handler\ class has been added to \src/Exception\ to centralize exception rendering and error flashing. The \renderException\ method now formats exception details (type, message, file, line, and trace) into a \MessageBag\ and renders them via the \admin::partials.exception\ view, while the \error\ method flashes error messages to the session.
src/Exception · high confidence
New form fields and cascading logic
The form field component area introduces several new field types including BelongsTo, BelongsToMany, Button, Captcha, CheckboxButton, CheckboxCard, Currency, DateMultiple, Decimal, Divider, Embeds, Fieldset, File, HasMany, HasValuePicker, Html, and Icon. Additionally, a new cascading field mechanism is added via the CanCascadeFields trait and CascadeGroup class, allowing form fields to dynamically show or hide based on conditions set on other fields.
src/Form/Field · high confidence
New fullscreen and refresh button widgets for the navbar
The navbar now supports two new interactive components: a fullscreen toggle and a page refresh button. These are implemented as new PHP widget classes (Fullscreen and RefreshButton) that render corresponding frontend components, allowing users to expand the application to full-screen mode or reload the current page directly from the header bar.
src/Widgets/Navbar · high confidence
New layout components and content methods
The layout system introduces new \Buildable\ interface and \Column\, \Row\, and \Content\ classes to structure page content. \Content\ now supports setting a title, description, and breadcrumb navigation. A new \view\ method allows rendering custom views as content, while \dump\ provides a convenient way to display variable values. \Row\ and \Column\ classes enable flexible grid-based layouts with configurable widths and CSS classes.
src/Layout · high confidence
New middleware classes for authentication, bootstrapping, logging, permissions, PJAX, and session management
The src/Middleware directory now contains six new middleware classes: Authenticate, Bootstrap, LogOperation, Permission, Pjax, and Session. These introduce core request handling logic for the admin panel, including enforcing admin authentication, initializing the admin facade, logging user operations (with path truncation to 255 characters), checking route and menu permissions, handling PJAX responses, and configuring session paths and domains.
src/Middleware · high confidence
Portuguese (PT) admin interface translations added
A new Portuguese (pt) language file for the admin panel has been added, providing translations for core UI elements such as login, logout, user settings, and form actions. This enables the admin interface to be fully localized for Portuguese-speaking users.
resources/lang/pt · high confidence
Refactor Grid components into dedicated classes
The Grid module has been refactored to improve modularity and extensibility. The previous \Grid/Action\ and \Grid/Cell\ classes were removed. New dedicated classes were introduced: \Grid/Exporter\ for handling data exports, \Grid/Filter\ for managing grid filters, \Grid/Selectable\ for row selection, \Grid/Simple\ for simplified grid views, and \Grid/Tools\ for managing grid header tools. The \Grid/Column\ class was significantly expanded with new methods for header, inline editing, and display extension, while \Grid/Model\ and \Grid/Row\ were updated to support these new structures.
src/Grid · high confidence
Refactored form architecture with new Builder, Footer, and Tab components
The form system has been refactored to improve structure and extensibility. A new \Builder\ class now manages the form's state, tools, and footer, while a dedicated \Footer\ class handles submit, reset, and redirect options (view, continue editing, continue creating). A \Tab\ class enables grouping fields into tabbed sections, and a \Row\ class allows flexible row-based layouts. The \NestedForm\ and \EmbeddedForm\ classes provide structured support for nested and embedded form data. These changes streamline how forms are constructed, validated, and rendered, offering more control over form behavior and appearance.
src/Form · high confidence
Repository initialization with project scaffolding
The repository was initialized with essential project files, including a .gitignore configuration, a .travis.yml build script for PHP 7.2–8.0, a PHPUnit configuration, a MIT license, a CHANGELOG placeholder, a CONTRIBUTING guide, and a comprehensive README detailing installation, configuration, and supported extensions.
(repo-wide) · high confidence
Russian language pack for the admin interface
A new Russian translation file (resources/lang/ru/admin.php) has been added, providing Russian labels for the admin panel. This includes standard UI strings (login, logout, save, delete, etc.), pagination ranges, HTTP method/path labels, and a new 'menu\_titles' key to support translating menu titles from language files.
resources/lang/ru · high confidence
Spanish language pack for admin interface
Added a new Spanish translation file (resources/lang/es/admin.php) containing 90+ key-value pairs for the admin panel, covering UI elements such as login, settings, CRUD actions, and pagination. This enables the admin interface to be fully localized in Spanish.
resources/lang/es · high confidence
Turkish (tr) language pack added
The Turkish translation file (resources/lang/tr/admin.php) has been added to the project. This provides the Turkish language pack for the admin interface, enabling users to interact with the application in Turkish. The file includes translations for common administrative actions, messages, and UI elements.
resources/lang/tr · high confidence
Removals
Removal of legacy Blade view templates
The legacy Blade templates for the admin interface have been removed. This includes the main layout (\admin.blade.php\), as well as specific views for forms, grids, the index page, login, and tree structures. Users will no longer see these specific HTML structures, which were previously used to render the administrative dashboard and data tables.
views · high confidence
Removed AdminServiceProvider
The AdminServiceProvider class has been removed from the application's provider registration. This eliminates the automatic registration of the 'Admin' facade alias and the loading of the 'admin' view namespace, which may affect how the admin interface is rendered or accessed.
src/Providers · high confidence
Architecture
Major architectural refactor of core admin classes
The core classes for the admin panel have been refactored to improve structure and maintainability. The \Admin\ class now uses the \HasAssets\ trait and exposes a \Tree\ builder, while \Form\ and \Grid\ classes have been significantly expanded with new traits (e.g., \HasHooks\, \HasFields\, \HasActions\) and internal builders. Additionally, legacy or unused components such as \AdminController\, \Api\, and \AdminThreePresenter\ have been removed, and new selectable components (\BrowserBtn\, \Checkbox\, \Radio\) were added to the Grid namespace.
src · high confidence
Behavioural changes
Added Portuguese (Brazil) translations for the admin interface
The application now supports Portuguese (Brazil) for the admin panel, providing translations for common UI elements such as login, logout, save, delete, and menu titles. This allows users in the Brazilian Portuguese locale to interact with the admin interface in their native language.
resources/lang/pt-BR · high confidence
Complete refactoring of the grid filter system
The grid filter implementation has been completely refactored to support a more modular and extensible architecture. A new \AbstractFilter\ base class and a \Group\ filter for complex queries have been introduced. The system now supports multiple new filter types including \Between\ (for date ranges), \Group\ (for combining multiple conditions), \Ilike\ (case-insensitive search), \In\/\NotIn\ (array matching), and specific date filters (\Date\, \Year\, \Month\, \Day\). Additionally, the \Scope\ class now allows filters to be set as the default selection.
src/Grid/Filter · high confidence
Grid tools refactored into dedicated classes
The Grid's toolbar components have been restructured into individual, dedicated classes (e.g., \BatchActions\, \ColumnSelector\, \Paginator\, \QuickSearch\) that extend a new \AbstractTool\ base. This change introduces a \disable()\ method to all tools, allowing users to programmatically hide or show specific grid tools. The \BatchActions\ tool now supports disabling the default delete action or hiding the select-all checkbox via new configuration methods.
src/Grid/Tools · high confidence
Grid view templates refactored and expanded
The grid component's Blade templates have been restructured and expanded to support new capabilities. A new fixed-column layout (fixed-table.blade.php) enables horizontal scrolling with sticky left and right columns. Batch actions are now rendered via a dedicated template (batch-actions.blade.php) that dynamically shows/hides based on selection state. An empty state template (empty-grid.blade.php) provides a customizable placeholder when no rows are present. Additionally, new templates for image grids (image.blade.php), quick search (quick-search.blade.php), and column selectors (selector.blade.php) have been introduced to support these features.
resources/views/grid · medium confidence
Introduce centralized configuration for Laravel-admin
A new \config/admin.php\ file has been added to the project, providing a single source of truth for the admin panel's settings. This includes configurable options for the application name, logo, route prefix, authentication guards, and database table mappings. Users can now customize the admin interface and behavior through this configuration file rather than hardcoding values in controllers or views.
config · high confidence
Introduce dedicated presenter classes for grid filter types
The grid filter system now uses specific presenter classes (Checkbox, DateTime, MultipleSelect, Radio, Select, Text) to handle rendering and configuration for each filter type. This refactoring allows each filter to manage its own JavaScript initialization (e.g., iCheck for checkboxes/radios, datetimepicker for dates, Select2 for selects) and template variables, making the filter components more modular and easier to configure.
src/Grid/Filter/Presenter · high confidence
Refactor Grid column displayers into a unified AbstractDisplayer base class
The Grid column displayers (e.g., Button, Image, Link, Editable, etc.) have been refactored to extend a new \AbstractDisplayer\ base class. This introduces a consistent interface for rendering grid columns, standardizing how column values are accessed and rendered. The abstract class provides common methods for retrieving grid, column, and row data, ensuring all specific displayer implementations (like \Badge\, \Select\, \SwitchDisplay\, etc.) share a common foundation, which simplifies maintenance and future extensions.
src/Grid/Displayers · high confidence
Refactor Show module into new class hierarchy
The Show module has been refactored to use a new class structure, introducing AbstractField, Field, Panel, Relation, and Tools classes. This change reorganizes how the Show interface renders and manages fields, panels, and tools, potentially affecting how developers extend or customize the display of model details.
src/Show · high confidence
Refactor admin layout and add sidebar search
The admin layout is restructured by moving and renaming partials (css, footer, sidebar) into the resources/views/partials directory, with the CSS partial updated to use admin\_asset. The sidebar now includes a configurable search feature (enabled by the new enable\_menu\_search config) that displays menu links in a dropdown. The footer displays the environment and version when configured, and the sidebar user panel now correctly displays the authenticated user's name and avatar.
resources/views/partials · high confidence
Refactor and expand the Actions system with new response and authorization capabilities
The Actions component has been refactored into a new class hierarchy (Action, GridAction, RowAction, BatchAction) with a dedicated Response class that supports Toastr and SweetAlert2 notifications, as well as redirect, open, location, and download actions. A new Authorizable trait adds a passesAuthorization method that checks for an authorize() method on the action or an actionAuthorize() method on the model, allowing developers to control access to actions. Additionally, BatchAction now supports adding CSS classes to the batch action button.
src/Actions · high confidence
Refactored form field templates into dedicated Blade views
The form rendering logic has been restructured by extracting each form field type into its own dedicated Blade template (e.g., \belongsto.blade.php\, \checkbox.blade.php\, \hasmany.blade.php\). This change separates the presentation layer for all form inputs—including inputs, selects, checkboxes, date ranges, and complex nested forms—into individual view files, improving maintainability and allowing for more granular customization of the form layout.
resources/views/form · high confidence
Removed legacy form field view templates
The legacy Blade view templates for form fields (including checkbox, color, date, datetime, editor, email, hidden, id, ip, markdown, mobile, multipleSelect, password, radio, select, text, textarea, time, and their range variants) have been removed from the views/form directory. This cleanup removes the old rendering logic for these fields, likely as part of a broader refactoring of the form builder's UI layer.
views/form · high confidence
Removed shared layout partials
The shared layout components—control-sidebar, header, js, and script—are no longer rendered as separate Blade partials. This removes the default sidebar, header, and script injection points, meaning the application will no longer use these specific UI elements or their associated JavaScript/CSS assets unless they are re-implemented elsewhere.
views/partials · high confidence
Updated Bootstrap CSS assets
The project has updated the Bootstrap CSS assets, specifically adding or replacing the minified CSS file for Bootstrap v3.3.5. This includes the full set of Bootstrap styles and the associated Glyphicon font definitions, ensuring the admin interface uses the latest styling and iconography from this version of the framework.
resources/assets/AdminLTE · high confidence
Updated Font Awesome assets to version 4.7.0
The Font Awesome icon library has been updated to version 4.7.0, introducing a broader range of icons and updated font files. This update ensures that users have access to the latest icon set and improved rendering for all icon-based UI elements.
resources/assets/font-awesome · high confidence
Updated Font Awesome icon picker to support more icons at FA 5
The Font Awesome icon picker component has been updated to support a significantly larger set of icons, specifically targeting compatibility with Font Awesome 5. This update includes new CSS styles for the icon picker's popover and a JavaScript library that manages the expanded icon list, allowing users to select from a broader range of icons in the UI.
resources/assets/fontawesome-iconpicker · high confidence
Updated bootstrap-fileinput plugin to v4.5.2
The bootstrap-fileinput plugin has been updated to version 4.5.2. This update refreshes the JavaScript and CSS assets for the file upload component, which may include bug fixes, performance improvements, and styling updates for the file input interface.
resources/assets/bootstrap-fileinput · high confidence
Updated scroll and number input components
The slimScroll plugin for AdminLTE has been updated to version 1.3.8, which fixes console errors and scrolling issues in the sidebar. Additionally, the bootstrap-number-input component has been added to prevent non-numeric input in number fields.
resources/assets/AdminLTE/plugins/slimScroll, resources/assets/number-input · medium confidence
Upgrade to SweetAlert2
The project has replaced the original SweetAlert library with SweetAlert2. This is a significant behavioral change for users, as the new library offers improved animations, better mobile support, and a different API. The CSS and JavaScript assets for SweetAlert2 have been added to the project's frontend build.
resources/assets/sweetalert2 · high confidence
Test coverage
Added comprehensive test suite for admin panel features; Added controller tests for file, image, and user forms; Added test configuration files for admin and filesystems; Added test data factories and seeder for user, profile, and tag models; Added test model fixtures for unit testing.
Dependencies
Package renamed and modernized with explicit dependencies
The package has been renamed from 'encore/admin' to 'encore/laravel-admin' and now declares explicit dependencies on PHP 7.0+, Laravel 5.5+, and specific versions of Symfony DOM Crawler, Doctrine DBAL, and other libraries. The composer.json has been significantly expanded to include autoloading for helpers, test configurations, scripts, and suggested packages, reflecting a shift towards a more standard, modern Laravel package structure.
(dependencies) · medium confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 38 → 37 (-0.5)
- Rubric changed (rubric-2026.08.15 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 42 → 29 (-12.9)
- Architecture 97 → 98 (+1.8)
- Maturity 56 → 48 (-8.0)
- Readiness 16 → 34 (+18.7)
- Security 90 → 93 (+3.4)
- Accessibility 36 (new)
Resolved (36)
- (anonymous) (cognitive 21) (resources/assets/bootstrap-fileinput/js/plugins/canvas-to-blob.js)
- (anonymous) (cognitive 35) (resources/assets/bootstrap-fileinput/js/plugins/sortable.js)
- (anonymous) (cyclomatic 18) (resources/assets/bootstrap-fileinput/js/plugins/sortable.js)
- (anonymous) (cyclomatic 20) (resources/assets/bootstrap-fileinput/js/plugins/canvas-to-blob.js)
- Coverage not measured — test suite did not build
- Dimension evaluation failed
- Duplicated block (10 lines × 2) (database/migrations/2016_01_04_173148_create_admin_tables.php)
- Duplicated block (11 lines × 2) (src/Form.php)
- Duplicated block (19 lines × 2) (src/Controllers/Dashboard.php)
- Duplicated block (20 lines × 2) (src/Auth/Database/AdminTablesSeeder.php)
- Duplicated block (6 lines × 2) (src/Console/ExportSeedCommand.php)
- Duplicated block (7 lines × 2) (database/migrations/2016_01_04_173148_create_admin_tables.php)
- Duplicated block (8 lines × 2) (src/Traits/HasAssets.php)
- No exposed public API
- No tests found
- Test reliability not included
- _css (cognitive 17) (resources/assets/bootstrap-fileinput/js/plugins/sortable.js)
- _emulateDragOver (cognitive 28) (resources/assets/bootstrap-fileinput/js/plugins/sortable.js)
- _onDragOver (cognitive 103) (resources/assets/bootstrap-fileinput/js/plugins/sortable.js)
- _onDragOver (cyclomatic 58) (resources/assets/bootstrap-fileinput/js/plugins/sortable.js)
- …and 16 more
New (139)
- (anonymous) (cognitive 16) (resources/assets/number-input/bootstrap-number-input.js)
- (anonymous) (cognitive 28) (resources/assets/bootstrap-fileinput/js/plugins/canvas-to-blob.js)
- (anonymous) (cognitive 61) (resources/assets/nprogress/nprogress.js)
- (anonymous) (cyclomatic 18) (resources/assets/number-input/bootstrap-number-input.js)
- (anonymous) (cyclomatic 29) (resources/assets/bootstrap-fileinput/js/plugins/canvas-to-blob.js)
- (anonymous) (cyclomatic 51) (resources/assets/nprogress/nprogress.js)
- (anonymous)::(anonymous)::_layout (cognitive 24) (resources/assets/AdminLTE/plugins/bootstrap-slider/bootstrap-slider.js)
- (anonymous)::(anonymous)::createNewSlider (cognitive 33) (resources/assets/AdminLTE/plugins/bootstrap-slider/bootstrap-slider.js)
- (anonymous)::(anonymous)::createNewSlider (cyclomatic 26) (resources/assets/AdminLTE/plugins/bootstrap-slider/bootstrap-slider.js)
- (anonymous)::_value_to_bytes (cognitive 34) (resources/assets/bootstrap-fileinput/js/plugins/piexif.js)
- (anonymous)::_value_to_bytes (cyclomatic 17) (resources/assets/bootstrap-fileinput/js/plugins/piexif.js)
- (anonymous)::convert_value (cognitive 38) (resources/assets/bootstrap-fileinput/js/plugins/piexif.js)
- (anonymous)::convert_value (cyclomatic 19) (resources/assets/bootstrap-fileinput/js/plugins/piexif.js)
- (anonymous)::createDOMPurify::_isValidAttribute (cognitive 21) (resources/assets/bootstrap-fileinput/js/plugins/purify.js)
- (anonymous)::createDOMPurify::_isValidAttribute (cyclomatic 22) (resources/assets/bootstrap-fileinput/js/plugins/purify.js)
- (anonymous)::createDOMPurify::_parseConfig (cognitive 41) (resources/assets/bootstrap-fileinput/js/plugins/purify.js)
- (anonymous)::createDOMPurify::_parseConfig (cyclomatic 35) (resources/assets/bootstrap-fileinput/js/plugins/purify.js)
- (anonymous)::createDOMPurify::_sanitizeAttributes (cognitive 21) (resources/assets/bootstrap-fileinput/js/plugins/purify.js)
- (anonymous)::createDOMPurify::_sanitizeAttributes (cyclomatic 16) (resources/assets/bootstrap-fileinput/js/plugins/purify.js)
- (anonymous)::createDOMPurify::_sanitizeElements (cognitive 20) (resources/assets/bootstrap-fileinput/js/plugins/purify.js)
- …and 119 more
Architecture
- Containers 0 added · 0 removed · contexts 1 added · 0 removed · edges 0 added · 0 removed
Added bounded contexts (1)
- encore/laravel-admin
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
z-song/laravel-admin was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 26 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 67c441eb78ecc5437e59775d89770cd9c2cb1e05 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-a15879f6f801.