A lightweight, open-source blogging platform built for personal use with Laravel 12 and Livewire 3.
- Blog management — Create, edit, publish, draft, and archive blog posts with a rich text editor
- Newsletter — Built-in subscriber management with email verification
- Contact form — Receive and manage contact messages from visitors
- Projects showcase — Display your projects on a dedicated page
- Experiences — Share your professional experiences
- Dashboard — Admin panel to manage all content, contacts, and subscribers
- Authentication — Full auth flow with login and registration
| Layer | Technology |
|---|---|
| Backend | PHP 8.4, Laravel 12 |
| Frontend | Livewire 3, Volt, Alpine.js, Tailwind CSS 4, Flux UI |
| Database | MySQL |
| Testing | Pest 4, PHPStan (Larastan) |
| Tooling | Vite 7, Bun, Laravel Pint, Laravel Sail |
- PHP 8.4+
- Composer
- Bun (or Node.js & npm)
- MySQL
git clone https://github.com/minhajul/blog.git
cd blogcomposer install
bun installcp .env.example .env
php artisan key:generateUpdate .env with your database credentials:
DB_DATABASE=your_database_name
DB_USERNAME=your_database_user
DB_PASSWORD=your_database_passwordphp artisan migrate --seedbun run buildcomposer run devThis starts the web server, queue worker, log viewer, and Vite dev server concurrently. The application will be
accessible at http://127.0.0.1:8000.
Alternatively, run just the server:
php artisan serveRun the full test suite:
php artisan testRun a specific test:
php artisan test --filter=HomeControllerTestLinting with Laravel Pint:
vendor/bin/pintStatic analysis with PHPStan (Larastan):
composer analyseContributions are welcome! Please read the Code of Conduct before contributing.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License — see the LICENSE file for details.
Made with ❤️ by Minhajul