getformwork/formwork

A file-based Content Management System (CMS) to make and manage simple sites


README

Discord GitHub Release Date GitHub All Releases Packagist GitHub code size in bytes PHP from Packagist

🏗 Formwork is a flat file-based Content Management System (CMS) to build and manage simple sites.

⚠️ This is the README file for the 2.x branch, currently in development and NOT STABLE.

👉 See the 1.x branch for the latest stable version.

Features

  • ⚡️ Lightweight
  • 🗄 No database required!
  • 📦 Easy to install
  • ✨ Out-of-the-box Administration Panel

Requirements

  • PHP 8.3 or higher
  • PHP extensions dom, fileinfo, gd, mbstring, openssl and zip

Installing

From GitHub releases

You can download a ready-to-use .zip archive from GitHub releases page and just extract it in the webroot of your server.

With Composer

If you prefer to install the latest stable release of Formwork with Composer you can use this command:

composer create-project getformwork/formwork

Composer will create a formwork folder with a fresh ready-to-use Formwork installation.

To use the administration panel you need to build the assets.

Cloning from GitHub

If you want to get the currently worked master version, you can clone the GitHub repository and then install the dependencies with Composer.

  1. Clone the repository in your webroot:
git clone https://github.com/getformwork/formwork.git
  1. Navigate to formwork folder and install the dependencies:
cd formwork
composer install
  1. Build the administration panel assets.

Building administration panel assets with Yarn

After installing with Composer or cloning from GitHub, you need to build the panel assets with Yarn by running the following commands:

cd panel
yarn install
yarn build

Running Formwork server

You can test Formwork right away with the serve command, a customized wrapper of the PHP Built-in web server.

Important

As with PHP CLI web server, Formwork server is intended for testing purposes and not for production environments.

Navigate to the formwork folder and run the following command:

php bin/serve

If you prefer you can run the Formwork server through Composer:

composer serve