nuzkito / pluma
Markdown powered static site generator with a built-in web editor
Requires
- php: ^8.2
- laravel/framework: ^13.0
- laravel/tinker: ^3.0.0
- league/commonmark: ^2.8
- symfony/yaml: ^8.0
Requires (Dev)
- fakerphp/faker: ^1.23
- laravel/boost: ^2.0
- laravel/pail: ^1.2.2
- laravel/pint: ^1.24
- laravel/sail: ^1.41
- mockery/mockery: ^1.6
- nunomaduro/collision: ^8.6
- pestphp/pest: ^4.3
- pestphp/pest-plugin-laravel: ^4.0
This package is auto-updated.
Last update: 2026-03-21 13:21:24 UTC
README
Pluma is a static‑site generator that converts Markdown files into a fully‑static HTML website.
It ships with a built‑in web editor, auto‑save, RSS feed generation, customizable templates, and a live preview during development.
Features
- Markdown editor with autosave
- RSS feed creation
- Fully customizable HTML templates
- Live preview while you write
Requirements
- PHP 8.2 or newer
Installation
Install Pluma globally via Composer:
composer global require nuzkito/pluma
Make sure the Composer global vendor/bin directory is in your system’s PATH, so you can run the pluma command from any terminal.
Getting started
Create a new site
Navigate to an empty directory and run:
pluma new
This scaffolds a fresh project, creating directories for content, templates, assets, etc., along with example files.
Build the site
Once the scaffold is in place, generate the static website:
pluma generate
The output will be placed in a site/ folder.
You can run this command as part of your CI/CD pipeline to build and deploy the site automatically.
Development server & editor
To edit pages via the web interface, start the local development server:
pluma serve
By default, urls are:
- Editor UI: http://localhost:8000
- Site preview: http://localhost:8001
You can config urls and ports in config.php file.
Any changes you make to pages with the editor are automatically rebuilt and reflected in the preview.