LaravelAdmin dashboardStarter

laravel-admin-starter — Laravel Admin dashboard Template

By anhtu03286

A Laravel and AdminLTE admin panel starter project with members, page builder, blog, roles and permissions, activity log, and Google Analytics reports, used to build CRUD admin backends.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

2 previews
Desktop homepage1 / 2
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 2

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-12View source

What stands out

A quick read of the recorded project description.

01

Uses the AdminLTE admin theme, with skins switchable via webpack.mix.js and layout files

02

Includes member management, role assignment, and role-based navigation item exclusion

03

Provides a website page builder composed of three component types: page content, photos, and documents

04

Records website activity and administrator create, update, and delete operations, and supports Laravel notifications

05

Includes built-in Google Analytics reports with charts and a customer impersonation feature

06

Bundles the author's own packages such as generators, notify, alert, impersonate, and sluggable

Template Details

This is a Laravel starter project for admin panel scenarios, with the frontend using the AdminLTE theme. The repository provides a master branch and historical branches for Laravel 5.5, 5.4, and 5.2. The README states that master has been upgraded to Laravel 5.6 and that the App\User model has been migrated to App\Models\User.

Functionally, it covers common admin panel needs: members (site users and administrators), roles and navigation permissions, impersonating any customer, content management for blogs, banners, FAQs, and photos, and a website page builder composed of three component types: page content, photos, and documents. It also records website activity (such as contact form submissions) and administrator actions (creating, editing, and deleting resources), and provides Laravel notifications, Bootstrap alerts and form error messages, and flash notifications after CRUD operations. It includes built-in Google Analytics reports with charts and bundles the author's own packages such as generators, notify, alert, impersonate, and sluggable.

The project is positioned as a CRUD admin starting point for the author's personal workflow. The README explicitly states that it is not a complete project or a best practice and may not suit all needs. The demo site uses the is_preview configuration in config/app.php to prevent visitors from deleting pages and users. The installation process involves composer create-project, configuring .env, creating a database, running migrate and db:seed, and manually checking the TRUNCATE statements and App\Models\User references in TableSeeder. Advanced configuration requires obtaining external service credentials for Facebook apps, Mailgun, Google reCAPTCHA, Google Analytics, and Google Maps.

LaravelAdmin panelStarter

Is it right for your project?

Use Cases

  • Building a CRUD-centric admin management portal
  • Providing content management for website pages, blogs, banners, FAQs, and photos
  • Admin backends that need role permissions, operation logs, and administrator activity tracking
  • Management systems that need to integrate Google Analytics reports or impersonate customers

Suitable For

  • Developers familiar with Laravel who want to quickly start an admin project
  • Teams that need an AdminLTE-style management interface and role permissions
  • Projects that accept using the existing code as a starting point and adjusting it themselves

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Create the project with composer create-project bpocallaghan/laravel-admin-starter:dev-master

  2. 2

    Configure the app information and database connection in .env, then run php artisan migrate and php artisan db:seed

  3. 3

    Check the TRUNCATE statements in the TableSeeder file and comment them out if necessary to avoid database errors

  4. 4

    Confirm that the code references App\Models\User rather than the old App\User model

  5. 5

    Advanced features require obtaining external service credentials for Facebook, Mailgun, reCAPTCHA, Google Analytics, Google Maps, and others

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version in the public repository under the MIT license; the free scope is that version's code and does not mean external services or third-party assets are free.

Must comply with when using

  • Allows free use, modification, commercial use, and distribution of that version's code.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur separate charges.
  • The author states that the project is aimed at their personal workflow and may not suit other users' needs, which is a limitation on its intended use.
  • The README explicitly states that this is not a complete project and does not represent best practices; users should not treat it as a production-ready finished product.
  • Advanced configuration requires registering a Mailgun account and setting up a custom domain, which is an external service dependency.
  • Advanced configuration requires creating a Facebook website app, involving third-party accounts and credentials.
  • Advanced configuration requires applying for Google reCAPTCHA, depending on an external service and keys.
  • The Google Analytics reporting feature requires registering a Google Analytics account and configuring credentials.
  • Using Google Maps requires applying for a JS API key, which is an external service dependency.
  • The demo site uses the is_preview configuration to restrict visitors from deleting pages and users, which is an operational limitation of the demo environment.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

Please keep in mind this is for my personal workflow and might not fit your need.

Original README

This is not a complete project or best practises, just trying to help the community :).

Original README

create a mailgun account and set custom domain

Original README

create FB Website App https://developers.facebook.com/

Original README

google captcha https://www.google.com/recaptcha/admin#list

Original README

google analytics account https://analytics.google.com/analytics/web

Original README

get a Google Maps js API key (after you've created the project in google)

Original README

Add config/app.php - "is_preview". This is to prevent users to delete pages and users from the demo site.

Original README
https://github.com/anhtu03286/laravel-admin-starter/blob/master/LICENSEhttps://github.com/anhtu03286/laravel-admin-starter/blob/master/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-12. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
Partly documented · 62 / 100
Technologies
Laravel
Website type
Admin dashboard · Starter
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2018-08-31
Screenshot last checked
2026-10-12

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Laravel as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Review declaration: [email protected] · 2026-10-13

Inspect the recorded source material

SHA-256: 1e9b2ebfe945f2fd4eb81bd95f2aa285b3a1d9291e284af688157860cdead06e

2026-10-12T21:16:52.463Z

Source file / repository
# Laravel CMS Starter Project

A Laravel CMS Starter project with AdminLTE theme and core features.
- Laravel 5.6 (master)
- Laravel 5.5 (Branch Laravel 5.5)
- Laravel 5.4 (Branch Laravel 5.4)
- Laravel 5.2 (Branch Laravel 5.2)

[Preview project here](http://bpocallaghan.co.za)
- User: [email protected]
- Password: github

### What is New?
- Upgraded to Laravel 5.6'
- App\User model was changed to App\Models\User model
- Add config/app.php - "is_preview". This is to prevent users to delete pages and users from the demo site.
- Add admin/accounts. The clients index.blade.php is a good example when working with 1+K entries. It use Laravel Paginator via Ajax pages and filter.

## Features / What it includes
- Admin LTE admin theme
- Members (website and admin users)
- Google Analytics Reports (with charts)
- Website Page Builder with 3 components (page content, photos, documents)
- Log Website Activities (if contact us was submitted, etc)
- Notifications (Laravel notifications)
- Log Admin Activities (when admin create,edit,delete a resource)
- Bootstrap Alerts and Form Error messages. package; bpocallaghan/alert
- Flash a Notification after a CRUD resource action. package; bpocallaghan/notify
- Generate crud resource, individual files. package; bpocallaghan/generators
- Impersonate any of your customers
- Roles, Assign roles to the user and navigation to exlude navigation for a user.
- Manage Blog, Banners, FAQ, Photos and many more.

## Setup (Basic)
- ```composer create-project bpocallaghan/laravel-admin-starter:dev-master laravel-admin-starter```
- open .env and set the app info (url, title, description, etc)
- check the installation with file search by Notepad++ (App\Models\User the new place instead of the the App\User model)
- check ..TableSeeder.php files because the DB::delete('TRUNCATE.. lines will generate DB errors, comment out them
- create your database and set db name in .env
- ```php artisan migrate```
- ```php artisan db:seed```
	- open database\seeds\UserTableSeeder.php to enter your admin user
- open your browser (http://laravel-admin.local)
- log into the admin (http://laravel-admin.local/admin) with your admin user

## Setup (Advanced)
- complete 'basic' setup
- config\app.php -> set timezone
- create FB Website App https://developers.facebook.com/
- create a mailgun account and set custom domain
- google captcha https://www.google.com/recaptcha/admin#list
- google analytics account https://analytics.google.com/analytics/web
- google console developer account for google maps and google analytics API
    - https://console.developers.google.com
    - Enable the 'google analytics' API
	- Create api browser key for google maps
	- Get and Setup Laravel Analytics [Laravel Analytics (Spatie)](https://github.com/spatie/laravel-analytics/tree/3.1.0)
        - create NEW service account key
        - any name will work (I use google analytics)
        - key type is JSON
        - download and rename the json to 'service-account-credentials.json'
        - store the file under /storage/app/analytics
        - go to (google analytics)[https://analytics.google.com/analytics/]
        - go to admin - property - user management and add the service account's email as a user
        - go to admin - view - settings and copy the 'site id' to your .env
- get a Google Maps js API key (after you've created the project in google) https://developers.google.com/maps/documentation/javascript/get-api-key 
- have a look at Admin\NavigationController.php on how to use datatables and datatables with ajax if more than 150 entries

## Admin LTE
If you would like to change the default skin. 
Please have a look in `webpack.mix.js` Line ~110 and uncomment the desired skin.
Please also remember to update the skin's name in `'views\layouts\admin.blade.php'` - `<body class="skin-blue">`

## TODO
[Upcoming Changes and Features](https://github.com/bpocallaghan/laravel-admin-starter/blob/master/TODO.md)

## Thank you
- [ADMIN LTE](https://github.com/almasaeed2010/AdminLTE).
- Thank you [Taylor Ottwell](https://github.com/taylorotwell) for [Laravel](http://laravel.com/).
- Thank you [Jeffrey Way](https://github.com/JeffreyWay) for the awesome resources at [Laracasts](https://laracasts.com/).
- Thank you [Spatie](https://github.com/spatie) for all your packages.

## Note
Please keep in mind this is for my personal workflow and might not fit your need.
This is my starter project for most crud admin portals.
I try to keep it clean, flexibly and friendly to use. This is not a complete project or best practises, just trying to help the community :).
Please let me know about any issues or if you have any suggestions.

## Change log
Please see the [CHANGELOG](http://bpocallaghan.co.za/changelog) for more information about changes.

## My Packages Included
- [File Generators](https://github.com/bpocallaghan/generators) Laravel 5 File Generators with config and publishable stubs
- [Notify](https://github.com/bpocallaghan/notify) Laravel 5 Flash Notifications with icons and animations and with a timeout
- [Alert](https://github.com/bpocallaghan/alert) A helper package to flash a bootstrap alert to the browser via a Facade or a helper function.
- [Impersonate User](https://github.com/bpocallaghan/impersonate) This allows you to authenticate as any of your customers.
- [Sluggable](https://github.com/bpocallaghan/sluggable) Provides a HasSlug trait that will generate a unique slug when saving your Laravel Eloquent model.
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.