/BKBlog

BKBlog is a robust blog management system/content management system (CMS) that's built with Laravel framework.

Primary LanguagePHPMIT LicenseMIT

Bellawan Logo

Indonesian Flag Bahasa Indonesia

About BKBlog

BKBlog is a robust blog management system/content management system (CMS) that's built with Laravel framework.

BKBlog is a reckless project created to express thoughts and ideas in an intuitive and fun way. Starting from a hobby and interest in blogging that began in 2010, where web technology has not advanced as fast as it is now. Blogspot and Wordpress were the starting point for all beginner bloggers, including me.

With the development of website technology, with many frameworks that make it easier to build a website from scratch, I tried to recreate my first blog that was still using the Blogspot platform.

You can visit this project real demo at BKBlog Website

Features

All of these features supported by powerful interactive build in dashboard.

Basic Features

This whole app is a blog sytem. Developed and tailored for open source project. Our features available:

  • Post
  • Categories
  • Tags
  • Users
  • Comments

1.1 Post Management

1.2 Categories Management

1.3 Tags Management

1.4 Users Management (on going)

Users management simplify superadmin to manage all users in one page. Including grant special permission access to users.

Basic users role:

  1. Superadmin (full control)
  2. User (post content, comments)
  3. Visitor (comments)

Special permissions to modify and moderate:

  1. Posts
  2. Categories
  3. Tags
  4. Users
  5. Comments

1.5 Comments Management (on going)

Users can interact with other in blog posts.

Technologies

I'm proud to share some of the technologies I've used to create the BKBlog app.

Software Dependencies

No Software Version
1. Laravel 10.48
2. Laravel - Livewire + AlpineJS 3.4
3. TailwindCSS 3.4.1
4. EditorJS 2.28.2

Laravel

Laravel is a web application framework with expressive, elegant syntax. A web framework provides a structure and starting point for creating your application, allowing you to focus on creating something amazing while we sweat the details.

Laravel documentation

Livewire + AlpineJS

Laravel Livewire is a framework for building Laravel powered frontends that feel dynamic, modern, and alive just like frontends built with modern JavaScript frameworks like Vue and React.

Livewire documentation

TailwindCSS

Rapidly build modern websites without ever leaving your HTML.

A utility-first CSS framework packed with classes like flex, pt-4, text-center and rotate-90 that can be composed to build any design, directly in your markup.

TailwindCSS documentation

EditorJS

Free block-style editor with a universal JSON output

Editor.js provides maximum power for developers and products staying focused on the end-user experience

EditorJS documentation

How to install

First you need to have these app installed on your computer: Git, PHP, and Composer. Clone this repo to your local machine.

git clone https://github.com/belankus/BKBlog.git bkblog

Move to bkblog directory

cd bkblog

Install package needed by Composer

composer install

Create an .env and configure database connection

cp .env.example .env

Create new APP_KEY

php artisan key:generate

Do migrations, set your DB connection first in .env

php artisan migrate

Do Seeding Database (REQUIRED!)

php artisan db:seed --class=AllPoliciesSeeder

Create storage link to public directory

php artisan storage:link

Run your app at browser https://localhost

php artisan serve

Access Point Dashboard http://localhost/login Email : superadmin@bellawan.my.id Password : password

Note :

  1. This app needs SSL connection (https) by default, if you're not going to use https, please remove service \App\Http\Middleware\ForceHttps::class inside app/Http/Kernel.php at this line of code
$middlewareGroups = [
    'web' => [
        ...
        \App\Http\Middleware\ForceHttps::class
        ...
    ]
]
  1. By default, file storage linked to folder public/images. if you prefer default setting, open .env, at APP_DISK_LINK please change images to storage
 APP_DISK_LINK=images

After doing some configuration, run command php artisan storage:link

Acknowledgement

This project was inspired by some of these great people, if you're interested you can visit their channels:

License

The BKBlog project is open-sourced software licensed under the MIT license.