Total Pageviews

Showing posts with label laravel. Show all posts
Showing posts with label laravel. Show all posts

Saturday, 18 July 2026

Tuesday, 17 February 2026

laravel-prezet-blog

 

Laravel Markdown Blog

A lightweight yet powerful blog system built with Laravel and Markdown. Easily manage your content using Markdown files with YAML front matter metadata for titles, categories, tags, authors, and more.


👨‍💻 Author


✨ Features

  • 📝 Write posts in Markdown with YAML front matter.
  • 📂 Organize content by category, tags, and author.
  • 🔑 Automatic slug & UUID key generation.
  • 🌓 Support for draft & published modes.
  • 🎨 Customizable post templates for faster writing.
  • ⚡ Simple CLI command to generate new posts.
  • 🔍 SEO-friendly URL structure.
  • 🌍 Easy deployment on any Laravel-supported environment.

🛠 Tech Stack

  • Backend: Laravel 12+
  • Content: Markdown (.md) with YAML front matter
  • Storage: Local file system (prezet/content/)
  • CLI Tool: Artisan commands for content generation
  • SEO: Auto-generated slugs & meta information

📑 Front Matter Structure

Every .md file starts with a YAML block for metadata:

---
title: Hello World
excerpt: This is a short description of the post.
category: Laravel
image: /prezet/img/laravel.jpg
draft: false
date: 2025-08-24
author: bob
slug: hello-world
key: 92d0f1d3-a9e1-4952-9060-ade1ea6f0061
tags: ['laravel', 'js']
---

Content go here!

Usage

1️⃣. Create a new content file

php artisan make:content "Hello World"

This will create:

prezet/content/hello-world.md

2️⃣. Options

  • Custom path
php artisan make:content "Hello World" --path=prezet/content/blog
  • Category
php artisan make:content "Hello World" --category=Laravel
  • Author
php artisan make:content "Hello World" --author=jane
  • Tags (pass as an array string)
php artisan make:content "Hello World" --tags="['laravel','php','vue']"
  • Draft mode By default, new files are created with draft: true. To create a published file:
php artisan make:content "Hello World" --draft=false

3️⃣. Full Example

php artisan make:content "A PHP framework with a robust ecosystem"   --path=prezet/content/frameworks   --category=Laravel   --author=bob   --tags="['laravel','php']"   --draft=false

This generates a file:

---
title: A PHP framework with a robust ecosystem
excerpt:
category: Laravel
image: null
draft: false
date: 2025-08-24
author: bob
slug: a-php-framework-with-a-robust-ecosystem
key: 4f3c12ab-1234-4bcd-9f11-88a99e22c0d5
tags: ['laravel','php']
---

Content go here!

🌍 Translations

This project includes a built-in translation management system, allowing you to provide multilingual versions of your content.

How It Works

  • When you visit a post, you can append /translate to the URL to view the translation creation page (e.g., http://your-site.com/my-first-post/translate).
  • Submitted translations are stored in the main application database.
  • If a published translation exists for a given language, visiting the post with the correct locale will show the translated version.

🔄 SQLite Index

Project uses an SQLite index file to more efficiently query information about your markdown content. This index is crucial for features like pagination, sorting, and filtering of your blog posts or documentation pages.

Managing the Index

php artisan prezet:index

You should run this command whenever you:

  • Add a new markdown file
  • Change a markdown file's slug
  • Modify frontmatter and want to see those changes reflected on index pages

Note that changes to the main content of your markdown files don't require updating the index, as this content is read directly from the file when displaying a single post.

php artisan prezet:index --fresh

--fresh option that will create a new sqlite database and run the prezet migrations before inserting your markdown data. You should run this command whenever you:

  • Update to a new version of Prezet
  • Are creating an index in a CI/CD pipeline
  • Deploy your application to an environment where the index sqlite file is not already present

Automatically Updating the Index

The index is updated automatically in your local development environment when you run:

npm run dev

For production, you should configure a cron job to run the Laravel scheduler, which will periodically update the index for you.

Production Scheduler

To automate indexing in production, add a single cron entry to your server. This job will run the Laravel scheduler every minute.

* * * * * cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1

The scheduler will then execute the prezet:index command based on the schedule defined in your .env file (e.g., PREZET_INDEX_SCHEDULE=everyThirtyMinutes).

Sitemap Generation

The sitemap is automatically generated whenever you run the index update command:

php artisan prezet:index

This command not only updates the content index but also creates or updates the prezet_sitemap.xml file in your Laravel project's public directory. This integration ensures that your sitemap always reflects the current state of your content.


📌 Notes

  • 📂 Default storage path is prezet/content/.
  • 🆔 key is generated as a UUID v4.
  • 📝 slug is automatically generated from the title.
  • 📅 date defaults to the current day (Y-m-d).

from  https://github.com/tqt97/laravel-prezet-blog

(  https://github.com/ymbrite/laravel-prezet-blog )

Friday, 15 November 2024

基于php的静态博客程序 mdblog-by-toonvd


A small framework that generates html files from markdown files.

Example blog

repo - site

from https://github.com/toonvd/mdblog 

-----

https://github.com/MdSamsadAli/MdBlog

-----

https://github.com/wuzixuan1104/mdBlog

(https://github.com/oawu/blog)

-----

https://github.com/xEdelweiss/MdBlog

 

Wednesday, 13 November 2024

laravel-admin

 from https://github.com/z-song/laravel-admin

Build a full-featured administrative interface in ten minutes

laravel-admin.org

⛵laravel-admin is administrative interface builder for laravel which can help you build CRUD backends just with few lines of code.

Documentation | 中文文档 | Demo | Demo source code | Extensions

Build Status StyleCI Packagist Total Downloads Awesome Laravel

Inspired by SleepingOwlAdmin and rapyd-laravel.

Requirements

  • PHP >= 7.0.0
  • Laravel >= 5.5.0
  • Fileinfo PHP Extension

Installation

This package requires PHP 7+ and Laravel 5.5, for old versions please refer to 1.4

First, install laravel 5.5, and make sure that the database connection settings are correct.

composer require encore/laravel-admin

Then run these commands to publish assets and config:

php artisan vendor:publish --provider="Encore\Admin\AdminServiceProvider"

After run command you can find config file in config/admin.php, in this file you can change the install directory,db connection or table names.

At last run following command to finish install.

php artisan admin:install

Open http://localhost/admin/ in browser,use username admin and password admin to login.

Configurations

The file config/admin.php contains an array of configurations, you can find the default configurations in there.

Right to left support

just go to this path <YOUR_PROJECT_PATH>\vendor\encore\laravel-admin\src\Traits\HasAssets.php and modify $baseCss array for loading right to left (rtl) version of bootstap and AdminLTE css files.
bootstrap.min.css change it to bootstrap.rtl.min.css
AdminLTE.min.css change it to AdminLTE.rtl.min.css

Extensions

Extension Description laravel-admin
helpers Several tools to help you in development ~1.5
media-manager Provides a web interface to manage local files ~1.5
api-tester Help you to test the local laravel APIs ~1.5
scheduling Scheduling task manager for laravel-admin ~1.5
redis-manager Redis manager for laravel-admin ~1.5
backup An admin interface for managing backups ~1.5
log-viewer Log viewer for laravel ~1.5
config Config manager for laravel-admin ~1.5
reporter Provides a developer-friendly web interface to view the exception ~1.5
wangEditor A rich text editor based on wangeditor ~1.6
summernote A rich text editor based on summernote ~1.6
china-distpicker 一个基于distpicker的中国省市区选择器 ~1.6
simplemde A markdown editor based on simplemde ~1.6
phpinfo Integrate the phpinfo page into laravel-admin ~1.6
php-editor
python-editor
js-editor
css-editor
clike-editor
Several programing language editor extensions based on code-mirror ~1.6
star-rating Star Rating extension for laravel-admin ~1.6
json-editor JSON Editor for Laravel-admin ~1.6
grid-lightbox Turn your grid into a lightbox & gallery ~1.6
daterangepicker Integrates daterangepicker into laravel-admin ~1.6
material-ui Material-UI extension for laravel-admin ~1.6
sparkline Integrates jQuery sparkline into laravel-admin ~1.6
chartjs Use Chartjs in laravel-admin ~1.6
echarts Use Echarts in laravel-admin ~1.6
simditor Integrates simditor full-rich editor into laravel-admin ~1.6
cropper A simple jQuery image cropping plugin. ~1.6
composer-viewer A web interface of composer packages in laravel. ~1.6
data-table Advanced table widget for laravel-admin ~1.6
watermark Text watermark for laravel-admin ~1.6
google-authenticator Google authenticator ~1.6

Friday, 1 November 2024

laravel-serve-livereload

 Laravel live reload implements into `artisan serve` command with live reloading websockets.

Laravel Serve LiveReload

This package is daed, please use the new Vite integrated instead

This package integrates into default artisan serve command an WebSockets server for live reloading the application when any file changed. How it works, checkout my blog post for explaination if you don't like digging into source code.


Installation

For laravel 8, please use version ^1.x, and below use version 0.x

composer require bangnokia/laravel-serve-livereload --dev

Usage

Open terminal and run php artisan serve

This package works even when you use custom vhost such as valet or laragon

Configuration

By default, this package looking for files changes in these directories:

/app
/public 
/config 
/routes 
/resources

If you want to customize the watched forlders, you can publish the configuration file by this commmand:

php artisan vendor:publish --provider="BangNokia\ServeLiveReload\CommandServiceProvider"

and then you can config what you want in the config/serve_livereload.php.


from bangnokia/laravel-serve-livereload: Laravel live reload implements into `artisan serve` command with live reloading websockets

Lunar

An open-source package that brings the power of modern headless e-commerce functionality to Laravel.

lunarphp.io

Lunar is a set of Laravel packages that bring functionality akin to Shopify and other e-commerce platforms to Laravel. You have complete freedom to create your own storefront(s), but we've already done the hard work for you in the backend.

This repository serves as a monorepo for the main packages that make up Lunar.

Requirements

  • PHP >= 8.2
  • Laravel 10 / Laravel 11
  • MySQL 8.0+ / PostgreSQL 9.2+

Documentation

Packages in this monorepo

Admin panel

The admin panel is provided to enable you to manage your store via a modern interface. You can manage all aspects of your store including products, orders, staff members etc. It's built using Filament and can be extended to meet each of your stores requirements.

Core

The core Lunar package, this provides all the things needed for your store to function. This is where all the models, actions and utilities live and is required by the admin hub.


from 

lunarphp/lunar: An open-source package that brings the power of modern headless e-commerce functionality to Laravel.

Friday, 25 October 2024

Laravel-Foundation-Pagination

 Provides Zurb Foundation styled pagination slider HTML markup to Laravel4.

https://packagist.org/packages/binarix/foundation-pagination

This Laravel 4 package extends the built in Twitter Bootstrap styled pagination slider HTML markup to provide Zurb Foundation styled pagination slider HTML markup.

Installation

This release v1.0.0 supports the following versions of Laravel: "laravel/framework": "4.0." "laravel/framework": "4.1."

Begin by installing this package through Composer. Edit your project's composer.json file to require binarix/foundation-pagination.

"require": {
    "binarix/foundation-pagination": "1.0.*"
}

Next, update Composer from the Terminal:

composer update

Once this operation completes, the next step is to add the service provider. Open app/config/app.php, and add a new item to the providers array.

'Binarix\FoundationPagination\FoundationPaginationServiceProvider',

The final step is to reference one of the the pagination styles. Open app/config/view.php, and modify the pagination item in the array.

For normal style use:

'pagination' => 'foundationpagination::slider',

For centered style use:

'pagination' => 'foundationpagination::slider-center',

That's it! You're all set to go.

Usage

Just use pagination as you would normally and the markups generated for the links will be styled for Zurb Foundation framework.

For more information on Pagination with Laravel 4, please check out the docs at

http://laravel.com/docs/pagination
from https://github.com/binarix/Laravel-Foundation-Pagination 

 

Thursday, 17 October 2024

awesome-saas-boilerplates

 

Flutter (Dart)

Jetpack Compose (Kotlin)

iOS (Swift / SwiftUI)

Ruby on Rails

Vue

Node.js (Javascript)

Laravel (PHP)

NestJs (Typescript)

Symfony (PHP)

SvelteKit (Javascript)

WordPress (PHP)

Django (Python)

Flask (Python)

FastAPI (Python)

.NET (ASP.NET Core / .NET 6+)

Java

Go

Next.js

React Native

Plasmo (React)

Rare

Remix

Ionic Framework

AWS

Firebase

from https://github.com/smirnov-am/awesome-saas-boilerplates