System requirements
What your server needs before you install. If your host meets these, nothing else is required.
Admin → Advanced → System requirements
The same checks the installer runs, available at any time after install.
The short answer
Any shared-hosting plan sold in the last few years runs QuickMunch. There is no Composer step, no Node build, no queue worker and no separate service to install — every stylesheet and script arrives already built.
Developers who want to change the styles or scripts can rebuild them with
npm run build; see public/css/src/_README.md. Nobody needs Node to
run QuickMunch — only to rebuild what ships with it.
Server
| What | Minimum | Notes |
|---|---|---|
| PHP | 8.2 | The installer refuses to continue below this. |
| MySQL | 5.7 | 5.7 or newer, MySQL 8.x included. Or MariaDB 10.4 or newer. Either is fine. |
| Web server | Apache or Nginx | Apache needs mod_rewrite; the shipped .htaccess does the rest. |
| HTTPS | Recommended | Required in practice if you take card payments — see Payments & gateways. |
PHP extensions
Six are required — the installer stops without them. Two more are only needed once the site is running, so they report a warning rather than blocking the install.
| Extension | Required | What stops working without it |
|---|---|---|
pdo_mysql | Yes | Everything. This is how the application talks to the database. |
gd | Yes | Image resizing — menu photos, logos, QR codes. |
mbstring | Yes | Non-English text, including Arabic and accented characters. |
fileinfo | Yes | Upload checking. Without it the media library cannot verify what it is given. |
openssl | Yes | Password hashing, tokens and outgoing secure connections. |
json | Yes | Settings, imports and every API response. |
curl | No | Menu import from a URL. Payments, SMS and AI work without it, but installing it is recommended for faster outbound connections. |
zip | No | Exports and backups. |
PHP limits
None of these stop an install. They decide whether the heavier screens are comfortable and how large a photo a restaurant can upload.
| Setting | Suggested | Why |
|---|---|---|
memory_limit | 128M | Reports and menu imports are the heaviest pages. |
upload_max_filesize | 8M | A restaurant photographing dishes on a phone will hit a smaller limit. |
post_max_size | 8M | Must be at least as large as the upload limit or uploads fail silently. |
Folders that must be writable
| Folder | Holds |
|---|---|
/storage | Logs, cache and database backups. |
/bootstrap/cache | The framework's compiled cache. Checked by the installer. |
| the application root | The .env configuration file the installer writes. Needed once, at install. |
/public/uploads | Every image and file uploaded by you or by a restaurant. |