PHPackages                             brezel/brezel - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. brezel/brezel

ActiveProject

brezel/brezel
=============

description

1.6.4(2y ago)042proprietaryDockerfile

Since Sep 4Pushed 1w ago1 watchersCompare

[ Source](https://github.com/brezelio/brezel)[ Packagist](https://packagist.org/packages/brezel/brezel)[ RSS](/packages/brezel-brezel/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (12)Versions (24)Used By (0)

Brezel Skeleton
===============

[](#brezel-skeleton)

This is the skeleton for a Brezel instance.

It represents the latest "recommended" setup for your Brezel Instance repo.

> Note: This is for brezel/api 2.0 with brezel/spa 4.0 and up!
>
> For the pre PHP 8 versions, please refer to the [1.x branch](https://gitlab.kiwis-and-brownies.de/kibro/brezel/brezel/-/tree/1.x).

It contains a slim `example` system to get you up and running quickly.

Crucially, it creates two users for you to use:

- `dev@example.com`: A "root" user that bypasses all permission checks. Use it e.g. for Bakery access. Since this user can do everything, but be careful when you test features with it as things that work with this user may not work with other users!
- `admin@example.com`: A "normal" user with the `admin` role that has permissions for everything. This (or a similar user that is **not** root) should be used for normal development and interactive testing.

> On local development only these users have the password `secret`.
>
> You can (and should!) change these passwords in a production environment via your systems `.env` file!

Deployment
----------

[](#deployment)

Install and operate according to the [Brezel documentation](https://docs.brezel.io/deploy/virtual_server/).

Local Usage
-----------

[](#local-usage)

> If you have "(mise)\[\]" installed and set up properly in your shell, it will make your life easier.
>
> It will automatically set up the correct php and node versions as well as provide you with helpful commands for common operations. (Since this will compile php for your system, you might need to install build dependencies like e.g. re2c, gd, postgresql-libs, libzip, gmp, libsodium)
>
> e.g. `mise run install` to install both composer and npm packages in one, `mise run apply` for a quick bakery apply, `mise run update` for an update, `mise run load` to reload workflows. Most importantly, `mise run serve` will start a (zellij)\[\] session with all the necessary servers needed to run brezel in the foreground. This way, you can monitor what is running and (more importantly) quit / stop them all at once by just exiting zellij.
>
> With the correct runner integration in your IDE you can have native access to these mise tasks as well, right from your fingertips.

### Install or update the Brezel components

[](#install-or-update-the-brezel-components)

Install composer packages:

```
composer update
```

Install NPM packages:

```
npm install
```

### Create the Database

[](#create-the-database)

Create a new MySQL database called `brezel_meta_`. This will be the meta database for one or more Brezel systems. In MySQL, execute the following command:

```
CREATE DATABASE brezel_meta_
```

### Configure your Brezel environment

[](#configure-your-brezel-environment)

Copy the `.env.example` file to `.env` and edit the `.env` file.

For a (mostly) complete list of settable environment variables, consult the [environment variable reference](https://docs.brezel.io/reference/env/#_top). More details are in the .env.example file.

To get started, make sure to set the following variables:

##### General settings

[](#general-settings)

```
APP_URL="http://mybrezel.test"
```

##### SPA settings

[](#spa-settings)

Note: variables that are prefixed with `VITE_` are baked into client JS scripts.

**Do not** put sensitive values here.

```
APP_URL="http://mybrezel.test"
APP_SYSTEM=example
```

##### Database settings

[](#database-settings)

```
TENANCY_HOST=127.0.0.1
TENANCY_PORT=3306
TENANCY_DATABASE="brezel_meta"
TENANCY_USERNAME=""
TENANCY_PASSWORD=""
```

##### Brezel settings

[](#brezel-settings)

```
BREZEL_EXPORT_URL="https://export.staging.cluster-sw.brezel.io"
```

### Setup your Brezel

[](#setup-your-brezel)

Initialize the database:

```
php bakery init
```

Create one or more Brezel systems:

```
php bakery system create
```

Run `bin/u` to apply the current system config.

The directory `systems/example` holds `.bake`-configuration files for a system called `example`. `bin/u` will sync these to the DB and build your system. If you did not change any workflows and only want to update .bake configurations like modules or entities, use the bakery planner:

```
php bakery apply
```

To just see what Brezel plans to change, do:

```
php bakery plan
```

To update workflows, run:

```
php bakery load
```

### Set up your local Dev environment

[](#set-up-your-local-dev-environment)

#### macOS, Linux

[](#macos-linux)

You can use Laravel Valet to serve the API (or `php brezel serve`).

The SPA is served on port 8080 by the `npm run serve` command.

You will need to run the queues and websocket server in the background.

```
php bakery queue:work
php bakery queue:work --queue=brotcasts
php bakery brotcast:start
```

If you want to have local `event/cron` elements working, you will have to run `php bakery schedule` every 60 seconds.

#### Windows

[](#windows)

You can use the same `php bakery serve` / `npm run serve` commands as on macOS and Linux, but that will be slow as your API will only be able to work on one request at a time.

A better and faster approach is to use nginx and the included script. For that, install nginx in your path and make sure that both `gcm nginx` and `gcm php-cgi` find the correct executables. Go to the Brezel directory and run the following script on the Windows terminal:

```
bin\serve_on_windows.ps1
```

> If you just want the benefits of an all-in-one script, but don't want to use nginx, you can run it with`./bin/serve_on_windows.ps1 $true` to disable nginx.

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance64

Regular maintenance activity

Popularity8

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 60.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~66 days

Recently: every ~135 days

Total

19

Last Release

521d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1270262?v=4)[kibro](/maintainers/kibro)[@Kibro](https://github.com/Kibro)

---

Top Contributors

[![OliverWich](https://avatars.githubusercontent.com/u/35409274?v=4)](https://github.com/OliverWich "OliverWich (170 commits)")[![Flynamic](https://avatars.githubusercontent.com/u/4502181?v=4)](https://github.com/Flynamic "Flynamic (96 commits)")[![nikcani](https://avatars.githubusercontent.com/u/11981162?v=4)](https://github.com/nikcani "nikcani (11 commits)")[![lea-ger](https://avatars.githubusercontent.com/u/53049665?v=4)](https://github.com/lea-ger "lea-ger (2 commits)")[![sebastianbroc](https://avatars.githubusercontent.com/u/63352229?v=4)](https://github.com/sebastianbroc "sebastianbroc (1 commits)")

###  Code Quality

TestsPest

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/brezel-brezel/health.svg)

```
[![Health](https://phpackages.com/badges/brezel-brezel/health.svg)](https://phpackages.com/packages/brezel-brezel)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
