Installation Guide

Installation Guide

Step-by-step instructions to set up Blogr from scratch — no prior experience needed.

Prerequisites

Before you begin, make sure you have the following installed on your system:

Requirement Version
PHP 8.3 or higher
Composer Latest stable
Node.js 18 or higher
npm 9 or higher
Database MySQL 8+, PostgreSQL 15+, or SQLite

You'll also need a terminal (bash, zsh, PowerShell) and a code editor of your choice.

Step-by-Step Installation

1. Create a Laravel project

composer create-project laravel/laravel my-blog
cd my-blog

Or using the Laravel installer:

laravel new my-blog
cd my-blog

2. Install FilamentPHP

composer require filament/filament
php artisan filament:install --panels

Then create your first admin user:

php artisan make:filament-user

Keep the email and password handy — you'll need them to log in.

3. Install Blogr

composer require happytodev/blogr
php artisan blogr:install

The installer is interactive. It will guide you through:

  • CMS — Enable static pages (About, Contact, etc.)
  • Homepage type — Blog index or a custom CMS page
  • Alpine.js — Required for the theme switcher
  • Tailwind CSS v4 — Dark mode configuration
  • Tutorials — Sample content to get started
  • NPM dependencies — Automatic installation
  • Asset building — Compile frontend assets

Tip: Answer "Yes" to all prompts for a complete setup.

Post-Installation

Verify the admin panel

Open http://my-blog.test/admin and log in with the credentials from step 2. You should see the Blogr dashboard with post statistics and widgets.

Create your first blog post

  1. Go to Blog Posts → New Post in the admin sidebar
  2. Write a title and content (Markdown is supported)
  3. Add a category and tags
  4. Set a featured image (drag & drop)
  5. Configure SEO meta fields (optional)
  6. Click Publish

Visit your blog at /blog (or / if blog is set as homepage).

Configure settings

Go to Blogr Settings in the admin panel to customize:

  • General — Blog name, description, posts per page
  • SEO — Site name, default meta, Open Graph image
  • Navigation — Menu links, sticky nav, logo
  • Appearance — Colors, card styles, dark mode
  • Footer — Social links, copyright text
  • Backup — Export/import your data

Optional Features

Enable CMS pages

If you skipped CMS during installation, enable it in config/blogr.php:

'cms' => [
    'enabled' => true,
    'prefix' => '',
],

Then create pages in CMS → Pages CMS in the admin panel.

Enable multilingual

Edit config/blogr.php:

'locales' => [
    'enabled' => true,
    'default' => 'en',
    'available' => ['en', 'fr', 'es', 'de', 'pl'],
],

With locales enabled, your content gets per-language URLs:

  • /en/blog/my-post
  • /fr/blog/mon-article

Install demo content

php artisan blogr:publish-demo-pages
php artisan blogr:install-tutorials

Troubleshooting

Run `php artisan blogr:install --force` to re-run the setup. This will re-publish config, re-run migrations, and reconfigure your AdminPanelProvider.

Make sure `@variant dark (.dark &);` is present in your `resources/css/app.css` file. Then run `npm run build` to recompile assets.

Run `npm run build` to compile frontend assets. If the issue persists, check that `php artisan storage:link` has been created and that your APP_URL is correctly configured in `.env`.

Ready to start building your blog?

Blogr is open source and MIT licensed. No credit card required.

Visit the Blog