The master branch is under active development and functionality may change or break at any time!
Getting started

Installation



Requirements

  • PHP 8.4.1 or higher *
  • ext-json
  • ext-mbstring

If you plan to use the database library then you'll also need to install ext-pdo.

It it also suggested to have the posix and pcntl extensions enabled if you want to take advantage of all the features offered by the reactor command line tool.

* Tested on PHP 8.4


Setup

Installing Mako is easy and can be with done in a few simple steps thanks to composer.

First you'll have to create a new project:

composer create-project mako/app <project name>

Next you'll have to make the app/storage/* directories writable (command my vary depending on your system):

chown www-data:www-data -R app/storage

Note that only the most essential services are enabled by default. Enable the ones that you need by uncommenting them in the app/config/application.php configuration file.


Get started

Mako includes a simple development server which can be started with the following command:

php app/reactor server

Open http://localhost:8000 in your browser of choice and you're ready to start coding!

The included development server is great when getting started and for quick prototyping but your should probably use a VM or Docker setup that closely resembles your production environment for advanced projects.


Updating

Mako and all your other dependencies can easily be updated when a new patch release is made available using the following command:

composer update

If you want to bump the Mako version (e.g. from 10.0.* to 10.1.*) then you'll have to update your composer.json file before running the update command.

Some releases might require some minor code changes. These will be documented in the upgrade guides.