/laravel-admin-starter

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

Primary LanguagePHPMIT LicenseMIT

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

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)

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

Thank you

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 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.