mabasic/blog

Multilingual blog package for Laravel.


Keywords
blog, blogging, laravel, multilingual, package
License
MIT

Documentation

Blog

Blog is a multilingual blog package for Laravel. With it you can easily add a multilingual blog to your application.

Become a Patron

Overview

This package enables you to quickly implement a multilingual blog on your Laravel application.

There are a lot of blog packages for Laravel, but as far as I know this is the only one that is multilingual.

Features

  • Multilingual
  • Post management & scheduling
  • Category management
  • Tag management
  • User management
  • Admin interface included

Screenshots

TODO.

Tutorials & articles

TODO.

Requirements

The Bootstrap scaffolding provided by Laravel is located in the laravel/ui Composer package, which must be installed using Composer for the authentication to work seamlessly:

composer require laravel/ui

Once the laravel/ui package has been installed, you may install the frontend scaffolding using the ui Artisan command:

// Generate login / registration scaffolding...
php artisan ui bootstrap --auth

Installation

From the command line:

composer require mabasic/blog

Add Author trait to your User model

Add the Author trait to your User model so that you can retrieve the posts for a user:

use Mabasic\Blog\Author;

class User extends Authenticatable
{
    use Notifiable, Author;
}

Originals image disk

In your Laravel application in config/filesystem.php, create a new disk under disks:

'originals' => [
    'driver' => 'local',
    'root' => storage_path('app/originals'),
],

Be sure to create the folder storage/app/originals.

This the the place where you should keep your original full-size images. I usually don't commit the images inside that folder to the git repository.

Picasso manifest

This file contains a reference of all images that are optimizes with Picasso. If you are optimizing images locally only then don't add the file to gitignore. Otherwise, if your application is optimizing files in production (dynamically), then add the file to gitignore, but be sure to manually upload it or not depending on your use case.

Read the text above.

In your application root .gitignore file, add the following line:

storage/app/picasso-manifest.json

This instructs git to ignore that file.

Run migrations

php artisan migrate

Publish Config & configure (optional)

Publish the config file (optional):

php artisan vendor:publish --provider="Mabasic\Blog\ServiceProvider" --tag=config

Publish views (customization)

The default UI is made for Bootstrap 4, but you can change it however you want.

php artisan vendor:publish --provider="Mabasic\Blog\ServiceProvider" --tag=views

Publish Migrations (customization)

You can publish migration to allow you to have more control over your tables

php artisan vendor:publish --provider="Mabasic\Blog\ServiceProvider" --tag=migrations

Events

This package fires events to let you know when things happen.

TODO.

REST API

TODO.

Sponsors & Backers

I would like to extend my thanks to the following sponsors & backers for funding my open-source journey. If you are interested in becoming a sponsor or backer, please visit the Backers page.

Contributing

Thank you for considering contributing to Blog! The contribution guide can be found Here.

Code of Conduct

In order to ensure that the open-source community is welcoming to all, please review and abide by the Code of Conduct.

License

Blog is open-source software licensed under the MIT license.