PHPackages                             fourkitchens/sous-drupal-project - 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. [Framework](/categories/framework)
4. /
5. fourkitchens/sous-drupal-project

ActiveProject[Framework](/categories/framework)

fourkitchens/sous-drupal-project
================================

Starter project for Sous a Drupal distribution featuring a theme based on Emulsify Design System.

7.0.1(1mo ago)141.1k8[3 issues](https://github.com/fourkitchens/sous-drupal-project/issues)[3 PRs](https://github.com/fourkitchens/sous-drupal-project/pulls)GPL-2.0-or-laterShellPHP &gt;=8.4CI passing

Since Feb 27Pushed 1mo ago13 watchersCompare

[ Source](https://github.com/fourkitchens/sous-drupal-project)[ Packagist](https://packagist.org/packages/fourkitchens/sous-drupal-project)[ RSS](/packages/fourkitchens-sous-drupal-project/feed)WikiDiscussions main Synced 3w ago

READMEChangelog (10)Dependencies (38)Versions (81)Used By (0)

[![Sous](https://camo.githubusercontent.com/ecd064556035c6b7246722292828a6a9e23f79573a27337fc223664cc3179bcd/68747470733a2f2f636972636c6563692e636f6d2f67682f666f75726b69746368656e732f736f75732d64727570616c2d70726f6a6563742e7376673f7374796c653d737667)](https://app.circleci.com/github/fourkitchens/sous-drupal-project/pipelines)[![semantic-release: angular](https://camo.githubusercontent.com/9cdd34ac7322a84f2cf0ff00d590f5cc32229560a89e898aa2c5a5eeecbd5dfc/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f73656d616e7469632d2d72656c656173652d616e67756c61722d6531303037393f6c6f676f3d73656d616e7469632d72656c65617365)](https://github.com/semantic-release/semantic-release)
[![Sous featuring Emulsify](https://github.com/fourkitchens/sous-drupal-distro/raw/4.x-beta/themes/sous_admin/assets/images/sous.svg)](https://github.com/fourkitchens/sous-drupal-distro/blob/4.x-beta/themes/sous_admin/assets/images/sous.svg)

Sous Project
============

[](#sous-project)

A starter kit for your Drupal project that simplifies your project setup with [Emulsify](https://www.emulsify.info/). This starter kit includes a small set of contrib modules, a bundle of basic configuration, and a starter theme generated by [EmulsifyCLI](https://docs.emulsify.info/supporting-projects/emulsify-cli).

Features and Configurations
---------------------------

[](#features-and-configurations)

Sous not only generates a custom theme based on Emulsify, it also builds upon Drupal's default configuration to help streamline the project setup process. See the feature set documentation [here](docs/features.md).

Installation
============

[](#installation)

Dependencies and Requirements
-----------------------------

[](#dependencies-and-requirements)

- [PHP ^8.4](http://www.php.net/)
- [DDEV](https://ddev.readthedocs.io/)
- [Node 20.x (we recommend nvm)](https://github.com/nvm-sh/nvm)
- [Composer 2.x](https://getcomposer.org/)

Without these you will have difficulty installing this project.

Use this command below and replace `PROJECT_NAME` with your chosen project name.

```
composer create-project fourkitchens/sous-drupal-project [PROJECT-NAME]

```

This starter kit supports DDEV for local development.

You will be prompted to select the version of Sous you want to install. The main versions are:

1. Sous with Layout Builder
2. Sous with Paragraphs

Both of these versions include Emulsify as the default theme in addition to a Gin admin and our recommended security, performance and admin modules.

Recipe Dependency Management
============================

[](#recipe-dependency-management)

Recipe dependency unpacking is handled by Drupal core tooling (`drupal/core-recipe-unpack`), so no manual `composer unpack` step is required.

Working with Emulsify
=====================

[](#working-with-emulsify)

The [Emulsify](https://emulsify.info/) theme is installed as part of this project.

Additional Tooling
==================

[](#additional-tooling)

This package provides some additional tooling to support the build.

Helper scripts
--------------

[](#helper-scripts)

To use the helper script provided you will need to have `npm` installed. Then just run `npm run `. For example: `npm run import-data`. These commands are bash scripts located in the `./devops/scripts` directory and defined in `package.json`.

Configuration management scripts
--------------------------------

[](#configuration-management-scripts)

**confex**

```
npm run confex

```

Export active configuration to the config directory.

**confim**

```
npm run confim

```

Import the configuration to the database.

**import-data**

```
npm run import-data

```

Import a copy of the canonical database backup into your local instance. This assumes the database backup is located in `./reference/db.sql.gz`.

**local-data-bak**

```
npm run local-data-bak

```

Create a local database backup. Saves the backup to the `./reference` directory.

**rebuild**

```
npm run rebuild

```

Rebuild a fresh local instance of your site. Imports the canonical database backup and imports configuration into it.

**setup**

```
npm run setup

```

This is run during the installation process of composer create project.

**theme-build**

```
npm run theme-build

```

Builds the emulsify based theme.

**theme-watch**

```
npm run theme-watch

```

Used for theme development.

Semantic Versioning
===================

[](#semantic-versioning)

Setup
-----

[](#setup)

1. This repo has the following named/maintenance branches:

```
main
x.x
x.x.x

```

2. These branches are protected on GitHub
3. A personal access token was created for CircleCI.
4. CircleCI was setup to run on this project and tag the releases
5. Commit changes following the [Conventional commit guidelines](https://www.conventionalcommits.org/en/v1.0.0/)
6. Push your change up and verify CircleCI passes and has run on your desired branch.

Troubleshooting
---------------

[](#troubleshooting)

1. Your branch must be a named stable release branch in order to get a tag.
2. Prereleases are not supported with this package because they contain a dot.

Contributing
============

[](#contributing)

The composer command can be adjusted to account for a new branch you're working on.

```
composer create-project fourkitchens/sous-drupal-project:dev-[branch-name] PROJECT_NAME

```

Contribute without create-project
---------------------------------

[](#contribute-without-create-project)

To run setup + install:

1. clone repo `gh repo clone fourkitchens/sous-drupal-project [directory]`
2. `cd` to your project directory
3. `composer install`
4. `composer run-script post-create-project-cmd`

Contribute to recipes
---------------------

[](#contribute-to-recipes)

1. Follow the steps above, and choose `[0] Default Sous (media and content types only)` option when presented with the recipe dialogue in the setup script
2. Composer require the recipe using --prefer-source. Optionally specify a branch.
3. The recipe will be added to the /recipes directory. Make changes there and push to your branch.
4. Make desired changes to sous and export config. Compare the config in the /config/default directory to the config in the recipe. You may be able to replace the config in the recipe, or you may need to apply config actions.
5. Test your recipe by running `ddev install-recipe [recipe-name]`

\[TODO\] Add more information on updating recipe config and config actions.

Current recipes in Sous
-----------------------

[](#current-recipes-in-sous)

\[TODO\] Add recipes here.

To install recipes, use the `ddev install-recipe` command. Eg. For the paragraphs version of Sous, run:

```
ddev install-recipe fourkitchens/sous-paragraphs

```

###  Health Score

61

—

FairBetter than 98% of packages

Maintenance89

Actively maintained with recent releases

Popularity26

Limited adoption so far

Community27

Small or concentrated contributor base

Maturity89

Battle-tested with a long release history

 Bus Factor2

2 contributors hold 50%+ of commits

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 ~61 days

Recently: every ~138 days

Total

38

Last Release

35d ago

Major Versions

2.2.2 → 3.0.02022-03-22

3.0.0 → 4.0.02022-03-22

4.4.0 → 5.0.02023-04-21

5.4.0 → 6.0.02024-05-29

6.3.1 → 7.0.02026-04-06

PHP version history (5 changes)0.0.1PHP &gt;=7.2

2.2.0PHP &gt;=7.4

4.3.0PHP &gt;=8.1

6.3.0PHP &gt;=8.3

7.0.0PHP &gt;=8.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/c0e61c319d853fdc35670358f4d441cfc1167a8e0fbce4f075ca707c916a3fe8?d=identicon)[fourkitchens](/maintainers/fourkitchens)

![](https://www.gravatar.com/avatar/bcff6c6b4e32181dbe35dbb2a092a94dea6264b7a516a6ea3b57570e9556b707?d=identicon)[americkson](/maintainers/americkson)

---

Top Contributors

[![callinmullaney](https://avatars.githubusercontent.com/u/369018?v=4)](https://github.com/callinmullaney "callinmullaney (151 commits)")[![laura-johnson](https://avatars.githubusercontent.com/u/1652730?v=4)](https://github.com/laura-johnson "laura-johnson (80 commits)")[![ccjjmartin](https://avatars.githubusercontent.com/u/12279982?v=4)](https://github.com/ccjjmartin "ccjjmartin (79 commits)")[![americkson](https://avatars.githubusercontent.com/u/545638?v=4)](https://github.com/americkson "americkson (36 commits)")[![semantic-release-bot](https://avatars.githubusercontent.com/u/32174276?v=4)](https://github.com/semantic-release-bot "semantic-release-bot (19 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (10 commits)")[![unklCharlos](https://avatars.githubusercontent.com/u/42010204?v=4)](https://github.com/unklCharlos "unklCharlos (8 commits)")[![heatherwoz](https://avatars.githubusercontent.com/u/2915691?v=4)](https://github.com/heatherwoz "heatherwoz (5 commits)")[![robert-arias](https://avatars.githubusercontent.com/u/37127345?v=4)](https://github.com/robert-arias "robert-arias (4 commits)")[![generalredneck](https://avatars.githubusercontent.com/u/526491?v=4)](https://github.com/generalredneck "generalredneck (3 commits)")[![JeffTomlinson](https://avatars.githubusercontent.com/u/2602202?v=4)](https://github.com/JeffTomlinson "JeffTomlinson (2 commits)")[![hectorlj](https://avatars.githubusercontent.com/u/25091784?v=4)](https://github.com/hectorlj "hectorlj (2 commits)")[![ModulesUnraveled](https://avatars.githubusercontent.com/u/1663810?v=4)](https://github.com/ModulesUnraveled "ModulesUnraveled (2 commits)")[![mcortes19](https://avatars.githubusercontent.com/u/11282049?v=4)](https://github.com/mcortes19 "mcortes19 (2 commits)")[![mikeethedude](https://avatars.githubusercontent.com/u/15275301?v=4)](https://github.com/mikeethedude "mikeethedude (2 commits)")[![JRuiz28](https://avatars.githubusercontent.com/u/52307203?v=4)](https://github.com/JRuiz28 "JRuiz28 (1 commits)")[![edwtorba](https://avatars.githubusercontent.com/u/2343393?v=4)](https://github.com/edwtorba "edwtorba (1 commits)")[![amazingrando](https://avatars.githubusercontent.com/u/409903?v=4)](https://github.com/amazingrando "amazingrando (1 commits)")[![jsteven97](https://avatars.githubusercontent.com/u/48728210?v=4)](https://github.com/jsteven97 "jsteven97 (1 commits)")[![mndonx](https://avatars.githubusercontent.com/u/2343957?v=4)](https://github.com/mndonx "mndonx (1 commits)")

### Embed Badge

![Health badge](/badges/fourkitchens-sous-drupal-project/health.svg)

```
[![Health](https://phpackages.com/badges/fourkitchens-sous-drupal-project/health.svg)](https://phpackages.com/packages/fourkitchens-sous-drupal-project)
```

###  Alternatives

[drupal/recommended-project

Project template for Drupal projects with a relocated document root

1502.8M1](/packages/drupal-recommended-project)[govcms/govcms

GovCMS Drupal Distribution

198102.2k3](/packages/govcms-govcms)[vardot/varbase-project

Project template for Varbase distribution.

5362.5k](/packages/vardot-varbase-project)[az-digital/az_quickstart

Arizona Quickstart

52280.4k3](/packages/az-digital-az-quickstart)

PHPackages © 2026

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