Home

Awesome

Larablog

A powerful open source Laravel Blog with WYSWYG and CRUD (Create Read Update Delete) built on Laravel 5.8 and Bootstrap 4

Build Status StyleCI Scrutinizer Code Quality Code Intelligence Status License: MIT

Table of contents

Features

Larablog Features
Built on Laravel 5.8
Built on Bootstrap 4
Front End Built on Start Bootstrap - Clean Blog
Admin Built on Paper Dashboard 2
Uses MySQL Database (can be changed)
Uses Artisan to manage database migration, schema creations, and create/publish page controller templates
Dependencies are managed with COMPOSER
Laravel Scaffolding User and Administrator Authentication.
CRUD (Create, Read, Update, Delete) User Management with Laravel Users Package
CRUD (Create, Read, Update, Delete) Blog Posts
CRUD (Create, Read, Update, Delete) Tags
Built in CKEditor WYSWYG Editor
Google reCaptcha Protection with Google API
Robust File Manager using UniSharp Laravel File Manager Package
Makes us of Laravel Mix to compile assets
Makes use of Language Localization Files
Active Nav states using Laravel Requests
User Roles/ACL Implementation
Admin PHP Information UI using Laravel PHP Info Package
Activity Logging using Laravel-logger
Uses Laravel built in mail services
Automatic sitemap generation with Spatie Laravel Sitemap Package
Automatic RSS Feed generation with Spatie Laravel Feed Package
Uses Laravel Debugbar Package for local debugging
Generate sitemap through the admin panel or the CLI with Artisan.
Front-end bootstrap themes with admin management panel

Installation Instructions

  1. Run git clone https://github.com/jeremykenedy/larablog.git larablog
  2. Create a MySQL database for the project
    • mysql -u root -p, if using Vagrant: mysql -u homestead -psecret
    • create database larablog;
    • \q
  3. From the projects root run cp .env.example .env
  4. Configure your .env file
  5. Run composer install from the projects root folder
  6. From the projects root folder run:
php artisan vendor:publish --tag=laravelroles
  1. From the projects root folder run php artisan key:generate
  2. From the projects root folder run php artisan migrate
  3. From the projects root folder run composer dump-autoload
  4. From the projects root folder run php artisan db:seed
  5. Compile the front end assets with npm steps or yarn steps.

Build the Front End Assets with Mix

Using NPM:
  1. From the projects root folder run npm install
  2. From the projects root folder run npm run dev or npm run production
Using Yarn:
  1. From the projects root folder run yarn install
  2. From the projects root folder run yarn run dev or yarn run production
And thats it with the caveat of setting up and configuring your development environment. I recommend Laravel Homestead

Seeds

Seeded Roles
RoleLevel
UnverifiedLevel 0
UserLevel 1
WriterLevel 2
ModeratorLevel 3
AdminLevel 4
Super AdminLevel 5
Seeded Permissions
Seeded Users
EmailPasswordAccess
admin@admin.compasswordSuper Admin Access
Themes Seed List

Commands

Generate Site Map

php artisan sitemap:generate or php artisan sitemap:generate {limit}

{limit} is the number of pages that the sitemap generator will limit to generating.

Configs

Config File

Here is a list of the custom config files that have been added or modified to the project:

Env Variables

Here is a list of the additonal added .env variables:

INITIAL_SEEDED_SUPER_ADMIN_USERNAME='Admin'
INITIAL_SEEDED_SUPER_ADMIN_USEREMAIL='admin@admin.com'
INITIAL_SEEDED_SUPER_ADMIN_USERPASSWORD='password'

BLOG_APP_NAME="${APP_NAME}"
BLOG_DEFAULT_TITLE='Lara(b)log2'
BLOG_DEFAULT_SUBTITLE='An open source blog platform'
BLOG_DEFAULT_DESCRIPTION='Larablog 2 is an open source blog built on Laravel'
BLOG_DEFAULT_AUTHOR='Jeremy Kenedy'
BLOG_SITEMAP_LIMIT=100

BLOG_DEFAULT_IMAGE=
BLOG_HOME_IMAGE=
BLOG_AUTHORS_IMAGE=
BLOG_AUTHOR_IMAGE=
BLOG_CONTACT_IMAGE=

BLOG_SM_URL_TWITTER=
BLOG_SM_URL_FACEBOOK=
BLOG_SM_URL_LINKEDIN=
BLOG_SM_URL_GOOGLEPLUS=
BLOG_SM_URL_GITHUB=

BLOG_DISQUSSHORTNAME=null
BLOG_GOOGLEANALYTICSID=null

BLOG_RSS_FEED_URL='/blog.rss'
BLOG_RSS_FEED_TITLE='My Blog feed'

BLOG_DEFAULT_PAGES_PER_PAGE=10
BLOG_DEFAULT_REVERSE_PAGINATION_DIRECTION=false
BLOG_DEFAULT_CONTACT_EMAIL=null
BLOG_UPLOADS_ENVIRONMENT=null
BLOG_UPLOADS_WEBPATH=null

ADMIN_DEFAULT_PAGES_PER_PAGE=100

LARAVEL_LOGGER_ROLES_MIDDLWARE=permission:perms.super.admin
LARAVEL_LOGGER_MIDDLEWARE_ENABLED=true
LARAVEL_LOGGER_USER_MODEL=App\Models\User
LARAVEL_LOGGER_LAYOUT=layouts.admin

# https://www.google.com/recaptcha/admin#list
ENABLE_RECAPTCHA=false
RECAPTCHA_SITE=YOURGOOGLECAPTCHAsitekeyHERE
RECAPTCHA_SECRET=YOURGOOGLECAPTCHAsecretHERE
RECAPTCHA_CDN=https://www.google.com/recaptcha/api.js

Language Files

Routes

+--------+----------------------------------------+---------------------------------------------------+------------------------------+---------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------+
| Domain | Method                                 | URI                                               | Name                         | Action                                                                                            | Middleware                                                                                                               |
+--------+----------------------------------------+---------------------------------------------------+------------------------------+---------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------+
|        | GET|HEAD                               | /                                                 | home                         | App\Http\Controllers\BlogController@index                                                         | web,activity                                                                                                             |
|        | GET|HEAD                               | _debugbar/assets/javascript                       | debugbar.assets.js           | Barryvdh\Debugbar\Controllers\AssetController@js                                                  | Barryvdh\Debugbar\Middleware\DebugbarEnabled                                                                             |
|        | GET|HEAD                               | _debugbar/assets/stylesheets                      | debugbar.assets.css          | Barryvdh\Debugbar\Controllers\AssetController@css                                                 | Barryvdh\Debugbar\Middleware\DebugbarEnabled                                                                             |
|        | DELETE                                 | _debugbar/cache/{key}/{tags?}                     | debugbar.cache.delete        | Barryvdh\Debugbar\Controllers\CacheController@delete                                              | Barryvdh\Debugbar\Middleware\DebugbarEnabled                                                                             |
|        | GET|HEAD                               | _debugbar/clockwork/{id}                          | debugbar.clockwork           | Barryvdh\Debugbar\Controllers\OpenHandlerController@clockwork                                     | Barryvdh\Debugbar\Middleware\DebugbarEnabled                                                                             |
|        | GET|HEAD                               | _debugbar/open                                    | debugbar.openhandler         | Barryvdh\Debugbar\Controllers\OpenHandlerController@handle                                        | Barryvdh\Debugbar\Middleware\DebugbarEnabled                                                                             |
|        | GET|HEAD                               | activity                                          | activity                     | jeremykenedy\LaravelLogger\App\Http\Controllers\LaravelLoggerController@showAccessLog             | web,auth,activity                                                                                                        |
|        | DELETE                                 | activity/clear-activity                           | clear-activity               | jeremykenedy\LaravelLogger\App\Http\Controllers\LaravelLoggerController@clearActivityLog          | web,auth,activity                                                                                                        |
|        | GET|HEAD                               | activity/cleared                                  | cleared                      | jeremykenedy\LaravelLogger\App\Http\Controllers\LaravelLoggerController@showClearedActivityLog    | web,auth,activity                                                                                                        |
|        | GET|HEAD                               | activity/cleared/log/{id}                         |                              | jeremykenedy\LaravelLogger\App\Http\Controllers\LaravelLoggerController@showClearedAccessLogEntry | web,auth,activity                                                                                                        |
|        | DELETE                                 | activity/destroy-activity                         | destroy-activity             | jeremykenedy\LaravelLogger\App\Http\Controllers\LaravelLoggerController@destroyActivityLog        | web,auth,activity                                                                                                        |
|        | GET|HEAD                               | activity/log/{id}                                 |                              | jeremykenedy\LaravelLogger\App\Http\Controllers\LaravelLoggerController@showAccessLogEntry        | web,auth,activity                                                                                                        |
|        | POST                                   | activity/restore-log                              | restore-activity             | jeremykenedy\LaravelLogger\App\Http\Controllers\LaravelLoggerController@restoreClearedActivityLog | web,auth,activity                                                                                                        |
|        | GET|HEAD                               | admin                                             | admin                        | App\Http\Controllers\Admin\AdminController@index                                                  | web,auth,permission:perms.user,activity                                                                                  |
|        | GET|HEAD                               | admin/filemanager                                 | unisharp.lfm.show            | UniSharp\LaravelFilemanager\Controllers\LfmController@show                                        | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/crop                            | unisharp.lfm.getCrop         | UniSharp\LaravelFilemanager\Controllers\CropController@getCrop                                    | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/cropimage                       | unisharp.lfm.getCropimage    | UniSharp\LaravelFilemanager\Controllers\CropController@getCropimage                               | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/cropnewimage                    | unisharp.lfm.getCropimage    | UniSharp\LaravelFilemanager\Controllers\CropController@getNewCropimage                            | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/delete                          | unisharp.lfm.getDelete       | UniSharp\LaravelFilemanager\Controllers\DeleteController@getDelete                                | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/deletefolder                    | unisharp.lfm.getDeletefolder | UniSharp\LaravelFilemanager\Controllers\FolderController@getDeletefolder                          | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/doresize                        | unisharp.lfm.performResize   | UniSharp\LaravelFilemanager\Controllers\ResizeController@performResize                            | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/download                        | unisharp.lfm.getDownload     | UniSharp\LaravelFilemanager\Controllers\DownloadController@getDownload                            | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/errors                          | unisharp.lfm.getErrors       | UniSharp\LaravelFilemanager\Controllers\LfmController@getErrors                                   | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/files/{base_path}/{file_name}   | unisharp.lfm.                | UniSharp\LaravelFilemanager\Controllers\RedirectController@getFile                                |                                                                                                                          |
|        | GET|HEAD                               | admin/filemanager/folders                         | unisharp.lfm.getFolders      | UniSharp\LaravelFilemanager\Controllers\FolderController@getFolders                               | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/jsonitems                       | unisharp.lfm.getItems        | UniSharp\LaravelFilemanager\Controllers\ItemsController@getItems                                  | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/newfolder                       | unisharp.lfm.getAddfolder    | UniSharp\LaravelFilemanager\Controllers\FolderController@getAddfolder                             | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/photos/{base_path}/{image_name} | unisharp.lfm.                | UniSharp\LaravelFilemanager\Controllers\RedirectController@getImage                               |                                                                                                                          |
|        | GET|HEAD                               | admin/filemanager/rename                          | unisharp.lfm.getRename       | UniSharp\LaravelFilemanager\Controllers\RenameController@getRename                                | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD                               | admin/filemanager/resize                          | unisharp.lfm.getResize       | UniSharp\LaravelFilemanager\Controllers\ResizeController@getResize                                | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | GET|HEAD|POST|PUT|PATCH|DELETE|OPTIONS | admin/filemanager/upload                          | unisharp.lfm.upload          | UniSharp\LaravelFilemanager\Controllers\UploadController@upload                                   | web,auth,\UniSharp\LaravelFilemanager\Middlewares\MultiUser,\UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder |
|        | POST                                   | admin/generate-sitemap                            | generate-sitemap             | App\Http\Controllers\Admin\AdminController@generateSitemap                                        | web,auth,permission:perms.user,activity                                                                                  |
|        | GET|HEAD                               | admin/posts                                       | admin.posts                  | App\Http\Controllers\Admin\PostController@index                                                   | web,auth,permission:perms.writer,activity                                                                                |
|        | POST                                   | admin/posts                                       | storepost                    | App\Http\Controllers\Admin\PostController@store                                                   | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/posts/create                                | posts.create                 | App\Http\Controllers\Admin\PostController@create                                                  | web,auth,permission:perms.writer,activity                                                                                |
|        | DELETE                                 | admin/posts/{post}                                | destroypost                  | App\Http\Controllers\Admin\PostController@destroy                                                 | web,auth,permission:perms.writer,activity                                                                                |
|        | PUT|PATCH                              | admin/posts/{post}                                | updatepost                   | App\Http\Controllers\Admin\PostController@update                                                  | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/posts/{post}/edit                           | editpost                     | App\Http\Controllers\Admin\PostController@edit                                                    | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/sitemap                                     | sitemap-admin                | App\Http\Controllers\Admin\AdminController@sitemap                                                | web,auth,permission:perms.user,activity                                                                                  |
|        | POST                                   | admin/tags                                        | storetag                     | App\Http\Controllers\Admin\TagController@store                                                    | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/tags                                        | showtags                     | App\Http\Controllers\Admin\TagController@index                                                    | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/tags/create                                 | createtag                    | App\Http\Controllers\Admin\TagController@create                                                   | web,auth,permission:perms.writer,activity                                                                                |
|        | PUT|PATCH                              | admin/tags/{tag}                                  | updatetag                    | App\Http\Controllers\Admin\TagController@update                                                   | web,auth,permission:perms.writer,activity                                                                                |
|        | DELETE                                 | admin/tags/{tag}                                  | destroytag                   | App\Http\Controllers\Admin\TagController@destroy                                                  | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/tags/{tag}/edit                             | edittag                      | App\Http\Controllers\Admin\TagController@edit                                                     | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/themes                                      | themes                       | App\Http\Controllers\Admin\ThemesManagementController@index                                       | web,auth,permission:perms.writer,activity                                                                                |
|        | POST                                   | admin/themes                                      | storetheme                   | App\Http\Controllers\Admin\ThemesManagementController@store                                       | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/themes/create                               | createtheme                  | App\Http\Controllers\Admin\ThemesManagementController@create                                      | web,auth,permission:perms.writer,activity                                                                                |
|        | PUT|PATCH                              | admin/themes/{theme}                              | updatetheme                  | App\Http\Controllers\Admin\ThemesManagementController@update                                      | web,auth,permission:perms.writer,activity                                                                                |
|        | DELETE                                 | admin/themes/{theme}                              | destroytheme                 | App\Http\Controllers\Admin\ThemesManagementController@destroy                                     | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/themes/{theme}                              | showtheme                    | App\Http\Controllers\Admin\ThemesManagementController@show                                        | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/themes/{theme}/edit                         | edittheme                    | App\Http\Controllers\Admin\ThemesManagementController@edit                                        | web,auth,permission:perms.writer,activity                                                                                |
|        | POST                                   | admin/update-blog-theme                           | update-blog-theme            | App\Http\Controllers\Admin\ThemesManagementController@updateDefaultTheme                          | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | admin/uploads                                     | admin-uploads                | App\Http\Controllers\Admin\AdminController@uploads                                                | web,auth,permission:perms.writer,activity                                                                                |
|        | GET|HEAD                               | api                                               | api                          | App\Http\Controllers\Api\BlogController@index                                                     | api                                                                                                                      |
|        | GET|HEAD                               | api/posts                                         | api-posts                    | App\Http\Controllers\Api\BlogController@posts                                                     | api                                                                                                                      |
|        | GET|HEAD                               | api/posts/all                                     | api-all-posts                | App\Http\Controllers\Api\BlogController@allPosts                                                  | api                                                                                                                      |
|        | GET|HEAD                               | api/posts/author/{author}                         | api-posts-by-author          | App\Http\Controllers\Api\BlogController@getPostsByAuthor                                          | api                                                                                                                      |
|        | GET|HEAD                               | api/posts/authors                                 | api-posts-authors            | App\Http\Controllers\Api\BlogController@getPostsAuthors                                           | api                                                                                                                      |
|        | GET|HEAD                               | api/posts/latest                                  | api-latest-post              | App\Http\Controllers\Api\BlogController@latestPost                                                | api                                                                                                                      |
|        | GET|HEAD                               | author/{author}                                   | author                       | App\Http\Controllers\BlogController@author                                                        | web,activity                                                                                                             |
|        | GET|HEAD                               | authors                                           | authors                      | App\Http\Controllers\BlogController@authors                                                       | web,activity                                                                                                             |
|        | GET|HEAD                               | blog.rss                                          | feeds.blog                   | Spatie\Feed\Http\FeedController                                                                   | web,activity                                                                                                             |
|        | POST                                   | contact                                           | contactSend                  | App\Http\Controllers\ContactController@contactSend                                                | web,activity                                                                                                             |
|        | GET|HEAD                               | contact                                           | contact                      | App\Http\Controllers\ContactController@index                                                      | web,activity                                                                                                             |
|        | POST                                   | login                                             |                              | App\Http\Controllers\Auth\LoginController@login                                                   | web,activity,guest                                                                                                       |
|        | GET|HEAD                               | login                                             | login                        | App\Http\Controllers\Auth\LoginController@showLoginForm                                           | web,activity,guest                                                                                                       |
|        | POST                                   | logout                                            | logout                       | App\Http\Controllers\Auth\LoginController@logout                                                  | web,activity                                                                                                             |
|        | POST                                   | password/email                                    | password.email               | App\Http\Controllers\Auth\ForgotPasswordController@sendResetLinkEmail                             | web,activity,guest                                                                                                       |
|        | POST                                   | password/reset                                    | password.update              | App\Http\Controllers\Auth\ResetPasswordController@reset                                           | web,activity,guest                                                                                                       |
|        | GET|HEAD                               | password/reset                                    | password.request             | App\Http\Controllers\Auth\ForgotPasswordController@showLinkRequestForm                            | web,activity,guest                                                                                                       |
|        | GET|HEAD                               | password/reset/{token}                            | password.reset               | App\Http\Controllers\Auth\ResetPasswordController@showResetForm                                   | web,activity,guest                                                                                                       |
|        | GET|HEAD                               | phpinfo                                           | laravelPhpInfo::phpinfo      | jeremykenedy\LaravelPhpInfo\App\Http\Controllers\LaravelPhpInfoController@phpinfo                 | web,auth,permission:perms.super.admin                                                                                    |
|        | GET|HEAD                               | register                                          | register                     | App\Http\Controllers\Auth\RegisterController@showRegistrationForm                                 | web,activity,guest                                                                                                       |
|        | POST                                   | register                                          |                              | App\Http\Controllers\Auth\RegisterController@register                                             | web,activity,guest                                                                                                       |
|        | POST                                   | search-users                                      | search-users                 | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@search                   | web,auth,permission:perms.super.admin                                                                                    |
|        | POST                                   | users                                             | users.store                  | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@store                    | web,auth,permission:perms.super.admin                                                                                    |
|        | GET|HEAD                               | users                                             | users                        | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@index                    | web,auth,permission:perms.super.admin                                                                                    |
|        | GET|HEAD                               | users/create                                      | users.create                 | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@create                   | web,auth,permission:perms.super.admin                                                                                    |
|        | DELETE                                 | users/{user}                                      | user.destroy                 | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@destroy                  | web,auth,permission:perms.super.admin                                                                                    |
|        | PUT|PATCH                              | users/{user}                                      | users.update                 | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@update                   | web,auth,permission:perms.super.admin                                                                                    |
|        | GET|HEAD                               | users/{user}                                      | users.show                   | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@show                     | web,auth,permission:perms.super.admin                                                                                    |
|        | GET|HEAD                               | users/{user}/edit                                 | users.edit                   | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@edit                     | web,auth,permission:perms.super.admin                                                                                    |
|        | GET|HEAD                               | {slug}                                            |                              | App\Http\Controllers\BlogController@showPost                                                      | web,activity                                                                                                             |
+--------+----------------------------------------+---------------------------------------------------+------------------------------+---------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------+

Screenshots

LaraBlog LaraBlog Post LaraBlog Post Comments LaraBlog Tags LaraBlog Author LaraBlog Authors LaraBlog Contact LaraBlog Admin Dashboard LaraBlog Admin Posts LaraBlog Admin Post Create LaraBlog Admin Post Edit LaraBlog Admin Tags LaraBlog Admin Tag Edit LaraBlog Admin Files LaraBlog Admin File Manager Pop Up LaraBlog Admin Upload LaraBlog Admin Users LaraBlog Admin User LaraBlog Admin User Edit LaraBlog Admin Sitemap LaraBlog Admin PHP Info LaraBlog Admin Activity LaraBlog Admin Themes LaraBlog Admin Theme Edit LaraBlog Admin Theme Add LaraBlog Admin Theme Example

File Tree

Larablog
├── .editorconfig
├── .env.example
├── .env.travis
├── .gitattributes
├── .gitignore
├── .travis.yml
├── LICENSE
├── README.md
├── app
│   ├── Console
│   │   ├── Commands
│   │   │   └── GenerateSitemap.php
│   │   └── Kernel.php
│   ├── Exceptions
│   │   └── Handler.php
│   ├── Handlers
│   │   └── LfmConfigHandler.php
│   ├── Http
│   │   ├── Controllers
│   │   │   ├── Admin
│   │   │   │   ├── AdminController.php
│   │   │   │   ├── PostController.php
│   │   │   │   ├── TagController.php
│   │   │   │   └── ThemesManagementController.php
│   │   │   ├── Api
│   │   │   │   └── BlogController.php
│   │   │   ├── Auth
│   │   │   │   ├── ForgotPasswordController.php
│   │   │   │   ├── LoginController.php
│   │   │   │   ├── RegisterController.php
│   │   │   │   ├── ResetPasswordController.php
│   │   │   │   └── VerificationController.php
│   │   │   ├── BlogController.php
│   │   │   ├── ContactController.php
│   │   │   ├── Controller.php
│   │   │   └── HomeController.php
│   │   ├── Kernel.php
│   │   ├── Middleware
│   │   │   ├── Authenticate.php
│   │   │   ├── CheckForMaintenanceMode.php
│   │   │   ├── EncryptCookies.php
│   │   │   ├── RedirectIfAuthenticated.php
│   │   │   ├── TrimStrings.php
│   │   │   ├── TrustProxies.php
│   │   │   └── VerifyCsrfToken.php
│   │   ├── Requests
│   │   │   ├── ContactRequest.php
│   │   │   ├── DeleteThemeRequest.php
│   │   │   ├── DestroyPostRequest.php
│   │   │   ├── DestroyTagRequest.php
│   │   │   ├── GenerateSitemapRequest.php
│   │   │   ├── StorePostRequest.php
│   │   │   ├── StoreTagRequest.php
│   │   │   ├── StoreThemeRequest.php
│   │   │   ├── ThemeRequest.php
│   │   │   ├── UpdatePostRequest.php
│   │   │   ├── UpdateTagRequest.php
│   │   │   └── UpdateThemeRequest.php
│   │   └── ViewComposers
│   │       └── BlogSettingsComposer.php
│   ├── Logic
│   │   └── helpers.php
│   ├── Mail
│   │   └── ContactMail.php
│   ├── Models
│   │   ├── BlogSetting.php
│   │   ├── Post.php
│   │   ├── Tag.php
│   │   ├── Theme.php
│   │   └── User.php
│   ├── Providers
│   │   ├── AppServiceProvider.php
│   │   ├── AuthServiceProvider.php
│   │   ├── BroadcastServiceProvider.php
│   │   ├── ComposerServiceProvider.php
│   │   ├── EventServiceProvider.php
│   │   └── RouteServiceProvider.php
│   ├── Services
│   │   ├── BlogThemeServices.php
│   │   ├── Markdowner.php
│   │   ├── PostAuthors.php
│   │   ├── PostFormFields.php
│   │   ├── PostProcesses.php
│   │   ├── PostTemplates.php
│   │   ├── SitemapCrawlProfile.php
│   │   └── TagFormFields.php
│   └── Traits
│       └── CaptchaTrait.php
├── artisan
├── bootstrap
│   ├── app.php
│   └── cache
│       ├── .gitignore
│       ├── packages.php
│       └── services.php
├── composer.json
├── composer.lock
├── config
│   ├── admin.php
│   ├── app.php
│   ├── auth.php
│   ├── blog.php
│   ├── broadcasting.php
│   ├── cache.php
│   ├── database.php
│   ├── debug-server.php
│   ├── debugbar.php
│   ├── feed.php
│   ├── filesystems.php
│   ├── hashing.php
│   ├── image.php
│   ├── laravel-logger.php
│   ├── laravelPhpInfo.php
│   ├── laravelusers.php
│   ├── lfm.php
│   ├── logging.php
│   ├── mail.php
│   ├── queue.php
│   ├── roles.php
│   ├── services.php
│   ├── session.php
│   ├── sitemap.php
│   ├── superadmin.php
│   ├── tinker.php
│   ├── trustedproxy.php
│   └── view.php
├── database
│   ├── .gitignore
│   ├── factories
│   │   ├── PostFactory.php
│   │   ├── TagFactory.php
│   │   └── UserFactory.php
│   ├── migrations
│   │   ├── 2014_10_12_000000_create_users_table.php
│   │   ├── 2014_10_12_100000_create_password_resets_table.php
│   │   ├── 2016_01_15_105324_create_roles_table.php
│   │   ├── 2016_01_15_114412_create_role_user_table.php
│   │   ├── 2016_01_26_115212_create_permissions_table.php
│   │   ├── 2016_01_26_115523_create_permission_role_table.php
│   │   ├── 2016_02_09_132439_create_permission_user_table.php
│   │   ├── 2018_10_10_070913_create_posts_table.php
│   │   ├── 2018_10_10_070928_create_tags_table.php
│   │   ├── 2018_10_10_070949_create_post_tag_pivot_table.php
│   │   ├── 2018_10_28_070857_create_themes_table.php
│   │   └── 2018_10_29_042545_create_blog_settings_table.php
│   └── seeds
│       ├── BlogSettingsTableSeeder.php
│       ├── ConnectRelationshipsSeeder.php
│       ├── DatabaseSeeder.php
│       ├── PermissionsTableSeeder.php
│       ├── PostTableSeeder.php
│       ├── RolesTableSeeder.php
│       ├── TagTableSeeder.php
│       ├── ThemesTableSeeder.php
│       └── UsersTableSeeder.php
├── package.json
├── phpunit.xml
├── public
│   ├── .htaccess
│   ├── css
│   │   ├── admin.css
│   │   ├── app.css
│   │   └── bs3-modals.css
│   ├── favicon.ico
│   ├── fonts
│   │   ├── font-awesome
│   │   │   ├── fa-brands-400.eot
│   │   │   ├── fa-brands-400.svg
│   │   │   ├── fa-brands-400.ttf
│   │   │   ├── fa-brands-400.woff
│   │   │   ├── fa-brands-400.woff2
│   │   │   ├── fa-regular-400.eot
│   │   │   ├── fa-regular-400.svg
│   │   │   ├── fa-regular-400.ttf
│   │   │   ├── fa-regular-400.woff
│   │   │   ├── fa-regular-400.woff2
│   │   │   ├── fa-solid-900.eot
│   │   │   ├── fa-solid-900.svg
│   │   │   ├── fa-solid-900.ttf
│   │   │   ├── fa-solid-900.woff
│   │   │   └── fa-solid-900.woff2
│   │   └── nucleo
│   │       ├── nucleo-icons.eot
│   │       ├── nucleo-icons.ttf
│   │       ├── nucleo-icons.woff
│   │       └── nucleo-icons.woff2
│   ├── images
│   ├── index.php
│   ├── js
│   │   ├── admin.js
│   │   ├── app.js
│   │   └── jquery.dataTables.min.js
│   ├── mix-manifest.json
│   ├── photos
│   │   ├── 1
│   │   └── shares
│   ├── robots.txt
│   ├── sitemap.xml
│   └── svg
│       ├── 403.svg
│       ├── 404.svg
│       ├── 500.svg
│       └── 503.svg
├── resources
│   ├── admin
│   │   ├── js
│   │   │   ├── admin.js
│   │   │   ├── bootstrap.js
│   │   │   ├── bs-tooltips.js
│   │   │   └── set-ckeditor.js
│   │   └── sass
│   │       ├── _dropzone.scss
│   │       ├── _fab.scss
│   │       ├── _forms.scss
│   │       ├── _mixins.scss
│   │       ├── _nucleo-icons.scss
│   │       ├── _tables.scss
│   │       ├── _variables.scss
│   │       └── admin.scss
│   ├── js
│   │   ├── app.js
│   │   ├── bootstrap.js
│   │   └── components
│   │       └── ExampleComponent.vue
│   ├── lang
│   │   └── en
│   │       ├── admin.php
│   │       ├── auth.php
│   │       ├── emails.php
│   │       ├── forms.php
│   │       ├── larablog.php
│   │       ├── messages.php
│   │       ├── modals.php
│   │       ├── pagination.php
│   │       ├── passwords.php
│   │       ├── themes.php
│   │       ├── tooltips.php
│   │       └── validation.php
│   ├── sass
│   │   ├── _variables.scss
│   │   ├── app.scss
│   │   └── partials
│   │       └── _bs-visibility-classes.scss
│   └── views
│       ├── admin
│       │   ├── forms
│       │   │   └── generate-sitemap.blade.php
│       │   ├── modals
│       │   │   ├── delete-modal.blade.php
│       │   │   ├── delete-post-modal-form.blade.php
│       │   │   ├── delete-tag-modal-form.blade.php
│       │   │   ├── save-modal.blade.php
│       │   │   ├── save-post-modal-form.blade.php
│       │   │   └── upload-modal.blade.php
│       │   ├── pages
│       │   │   ├── home.blade.php
│       │   │   ├── sitemap.blade.php
│       │   │   └── uploads.blade.php
│       │   ├── partials
│       │   │   ├── drawer-nav.blade.php
│       │   │   ├── footer.blade.php
│       │   │   ├── loading-file-1.blade.php
│       │   │   ├── loading-spinner-1.blade.php
│       │   │   ├── messages.blade.php
│       │   │   ├── navbar.blade.php
│       │   │   └── sidebar.blade.php
│       │   ├── post
│       │   │   ├── create.blade.php
│       │   │   ├── edit.blade.php
│       │   │   ├── index.blade.php
│       │   │   └── partials
│       │   │       └── post-form.blade.php
│       │   ├── scripts
│       │   │   ├── delete-modal-script.blade.php
│       │   │   ├── post-form-scripts.blade.php
│       │   │   ├── save-modal-script.blade.php
│       │   │   ├── save-post-modal.blade.php
│       │   │   └── toggle-status.blade.php
│       │   ├── tag
│       │   │   ├── create.blade.php
│       │   │   ├── edit.blade.php
│       │   │   ├── index.blade.php
│       │   │   └── partials
│       │   │       └── tag-form.blade.php
│       │   └── themesmanagement
│       │       ├── create-theme.blade.php
│       │       ├── edit-theme.blade.php
│       │       ├── index.blade.php
│       │       ├── partials
│       │       │   ├── default-theme-form.blade.php
│       │       │   └── theme-table-list.blade.php
│       │       └── show-theme.blade.php
│       ├── auth
│       │   ├── login.blade.php
│       │   ├── passwords
│       │   │   ├── email.blade.php
│       │   │   └── reset.blade.php
│       │   ├── register.blade.php
│       │   └── verify.blade.php
│       ├── blog
│       │   ├── forms
│       │   │   └── contact-form.blade.php
│       │   ├── pages
│       │   │   ├── author.blade.php
│       │   │   ├── authors.blade.php
│       │   │   └── contact.blade.php
│       │   ├── partials
│       │   │   ├── analytics.blade.php
│       │   │   ├── disqus.blade.php
│       │   │   ├── disqusjs.blade.php
│       │   │   ├── footer.blade.php
│       │   │   ├── header-post.blade.php
│       │   │   ├── header.blade.php
│       │   │   ├── messages.blade.php
│       │   │   ├── nav.blade.php
│       │   │   ├── posts-pager.blade.php
│       │   │   ├── posts-roll.blade.php
│       │   │   └── social-media.blade.php
│       │   ├── post-layouts
│       │   │   └── standard.blade.php
│       │   └── roll-layouts
│       │       └── home.blade.php
│       ├── layouts
│       │   ├── admin.blade.php
│       │   ├── app.blade.php
│       │   └── auth.blade.php
│       └── mail
│           └── contact.blade.php
├── routes
│   ├── api.php
│   ├── channels.php
│   ├── console.php
│   └── web.php
├── server.php
├── tests
│   ├── CreatesApplication.php
│   ├── Feature
│   │   ├── ExampleTest.php
│   │   ├── MarkdownerTest.php
│   │   └── PostsTest.php
│   ├── TestCase.php
│   └── Unit
│       └── ExampleTest.php
├── webpack.mix.js
├── yarn-error.log
└── yarn.lock

Opening an Issue

Before opening an issue there are a couple of considerations:

Open source projects are the community’s responsibility to use, contribute, and debug.

License

Larablog is licensed under the MIT license. Enjoy!