A Laravel Admin Starter project with Page Builder, Roles, Impersonation, Analytics, Blog, News, Banners, FAQ, Testimonials and more
Clone or download


Laravel CMS Starter Project

A Laravel CMS Starter project with AdminLTE theme and core features.

  • version 1 (The preview project link below)
  • version 2 (master branch)

Preview project here

Version 1 vs Version 2 Version 2 (master) is a completely refactored project. All the files were moved from your application to a package (titan). This should help keeping the 'core features' up to date as you only have to update the package and not manually copying files anymore. Please check titan out as the setup is really quick. The install command does almost everything for you.

What is New?

  • Titan Setup and Install command updates
  • Added UsersTableSeeder to application
  • Refactored all files to titan

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. bpocallaghan/alert
  • Flash a Notification after a CRUD resource action. bpocallaghan/notify
  • Generate crud resource, individual files. bpocallaghan/generators
  • Impersonate any of your customers. bpocallaghan/impersonate
  • Roles, Assign roles to the user and navigation to exlude navigation for a user.
  • Manage Blog, Banners, FAQ, Photos.
  • Reports with Chartjs

Setup (Basic)

  • composer create-project bpocallaghan/laravel-admin-starter:dev-master laravel-admin-starter
  • create your database
  • setup your virtual host (example: http://titan.local)
  • open .env and add database name and user
  • open database\seeds\UsersTableSeeder.php and set your admin user credentials
  • php titan:install` and complete the answers (setup app_name, app_author, app_url, etc)
  • The above command will set .env values, but you can manually edit it before running titan:install

Setup (Advanced)


Thank you


  • I am busy refactoring the project to titan (titan will get some version updates)
  • I am starting with a new website where I will put it in use and probably do lots of updates to titan.

This is my starter project for most crud admin portals. I try to keep it clean, flexibly and friendly to use and to help the community. Please let me know about any issues or if you have any suggestions.

Change log

Please see the CHANGELOG for more information about changes.

My Packages Included

  • File Generators Laravel 5 File Generators with config and publishable stubs
  • Notify Laravel 5 Flash Notifications with icons and animations and with a timeout
  • Alert A helper package to flash a bootstrap alert to the browser via a Facade or a helper function.
  • Impersonate User This allows you to authenticate as any of your customers.
  • Sluggable Provides a HasSlug trait that will generate a unique slug when saving your Laravel Eloquent model.