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
- Go to Blog Posts → New Post in the admin sidebar
- Write a title and content (Markdown is supported)
- Add a category and tags
- Set a featured image (drag & drop)
- Configure SEO meta fields (optional)
- 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