PHPackages                             devsfort/fortblog - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. devsfort/fortblog

ActiveLibrary[Framework](/categories/framework)

devsfort/fortblog
=================

Fort Blog Publishing Framework.

1.0.1(2y ago)1611MITJavaScriptPHP ^7.3||^7.4||^8.0||^8.1||^8.2

Since Oct 24Pushed 2y ago1 watchersCompare

[ Source](https://github.com/hahmad748/fortblog)[ Packagist](https://packagist.org/packages/devsfort/fortblog)[ RSS](/packages/devsfort-fortblog/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (1)Versions (5)Used By (0)

[![fortblog logo](/art/header.png?1)](/art/header.png?1)

FortBlog adds a nice UI where you can manage a publication of any size with posts, pages, tags, and authors.

You can add photos, code blocks, featured images, social media &amp; SEO attributes, embedded HTML (YouTube Videos, Embedded Podcasts Episodes, Tweets, ...), and markdown!

Dark &amp; Light modes available so everyone is happy 😁

Installation
------------

[](#installation)

FortBlog uses a separate database connection and authentication system so that you don't have to modify any of your project code.

To install FortBlog, run these commands in the root of your Laravel app:

```
composer require devsfort/fortblog
php artisan fortblog:install
php artisan storage:link
```

**Configure the database connection** FortBlog is going to be using in `config/fortblog.php`. Then run:

```
php artisan fortblog:migrate
```

Head to `yourproject.test/fortblog` and use the provided email and password to log in.

Uploading to S3
---------------

[](#uploading-to-s3)

If you want to upload images to S3, update the `storage_disk` attribute in your `fortblog.php` configuration file to s3. Make sure your S3 disk is correctly configured in your `filesystems.php` configuration file.

```
's3' => [
    'driver' => 's3',
    'key' => env('AWS_ACCESS_KEY_ID'),
    'secret' => env('AWS_SECRET_ACCESS_KEY'),
    'region' => env('AWS_DEFAULT_REGION'),
    'bucket' => env('AWS_BUCKET'),
    'url' => env('CDN_URL'),
    'options' => [
        'CacheControl' => 'public, max-age=315360000'
    ],
],
```

Note: you're going to need to install the AWS-S3 Flysystem adapter, using `composer require league/flysystem-aws-s3-v3` for this to work.

Using Unsplash
--------------

[](#using-unsplash)

Visit  to create a new unsplash app. Grab the 'Access Key' and add it to your `.env` file as `UNSPLASH_ACCESS_KEY`. Lastly, add unsplash to your `config/services.php` file:

```
'unsplash' => [
    'key' => env('UNSPLASH_ACCESS_KEY'),
],
```

Updates
-------

[](#updates)

After each update, make sure you run these commands:

```
php artisan fortblog:migrate
php artisan vendor:publish --tag=fortblog-assets --force
```

Displaying your content
-----------------------

[](#displaying-your-content)

FortBlog is faceless, it doesn't have any opinions on how you display your content in your frontend. You can use the FortBlog models in your controllers to display the different resources:

- `Fortblog\FortblogPost`
- `Fortblog\FortblogPage`
- `Fortblog\FortblogAuthor`
- `Fortblog\FortblogTag`

To display posts and pages content, use `$post->content` instead of `$post->body`. The content will always be in HTML format while the body might be HTML or raw markdown based on the post type.

Credits
-------

[](#credits)

- [Haseeb Ahmad](https://github.com/hahmad748)

License
-------

[](#license)

FortBlog is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~359 days

Total

2

Last Release

940d ago

PHP version history (2 changes)1.0.0PHP ^7.3||^7.4||^8.0

1.0.1PHP ^7.3||^7.4||^8.0||^8.1||^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/8de8368b1c33b278da76e212fc6922aeb9dce7c5fd916b40071e127b0e81466a?d=identicon)[devsfort](/maintainers/devsfort)

---

Top Contributors

[![hahmad748](https://avatars.githubusercontent.com/u/42300494?v=4)](https://github.com/hahmad748 "hahmad748 (8 commits)")

---

Tags

frameworklaravelblogpublishingfort

### Embed Badge

![Health badge](/badges/devsfort-fortblog/health.svg)

```
[![Health](https://phpackages.com/badges/devsfort-fortblog/health.svg)](https://phpackages.com/packages/devsfort-fortblog)
```

###  Alternatives

[austintoddj/canvas

A Laravel publishing platform

3.4k120.6k](/packages/austintoddj-canvas)[themsaid/wink

Wink Publishing Framework.

2.9k101.1k2](/packages/themsaid-wink)[microweber/microweber

New generation CMS with drag and drop

3.4k13.8k1](/packages/microweber-microweber)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
