PHPackages                             specbee/drupal-recommended-starterkit - 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. specbee/drupal-recommended-starterkit

ActiveProject

specbee/drupal-recommended-starterkit
=====================================

Project template for Drupal projects with a relocated document root

2.1.0(1y ago)0782GPL-2.0-or-laterPHPPHP &gt;=8.3

Since May 31Pushed 1y ago1 watchersCompare

[ Source](https://github.com/SpecbeeLabs/drupal-recommended-starterkit)[ Packagist](https://packagist.org/packages/specbee/drupal-recommended-starterkit)[ RSS](/packages/specbee-drupal-recommended-starterkit/feed)WikiDiscussions 10.x Synced 1mo ago

READMEChangelogDependencies (10)Versions (11)Used By (0)

Drupal Recommended StarterKit
=============================

[](#drupal-recommended-starterkit)

[![CI](https://github.com/SpecbeeLabs/drupal-recommended-starterkit/actions/workflows/ci.yml/badge.svg)](https://github.com/SpecbeeLabs/drupal-recommended-starterkit/actions/workflows/ci.yml)

A Drupal StarterKit Project template based out of [Drupal Recommended Project](https://github.com/drupal/recommended-project/) and [Drupal Composer Template](https://github.com/drupal-composer/drupal-project/) to create Drupal projects with out-of-box required tools and packages to kickstart a project.

What is included
----------------

[](#what-is-included)

- [Drupal core](https://www.drupal.org/project/drupal)
- [Drush 12](https://www.drush.org/12.x/)
- [Grumphp](https://packagist.org/packages/specbee/drupal-quality-checker)(A PHP code-quality tool)
- [DDEV](https://ddev.com/)
- [DotEnv](https://www.drupal.org/project/dotenv)
- [Config Sync Without Site UUID](https://www.drupal.org/project/config_sync_without_site_uuid)

Installation
------------

[](#installation)

Create a new project with Composer create project command from dev version.

```
composer create-project specbee/drupal-recommended-starterkit:10.x-dev
--no-interaction drupal10
cd drupal10
ddev start
```

This will install `drupal 10.3.0-beta1`For `drupal 10.2.6` run the below command:

```
composer create-project specbee/drupal-recommended-starterkit:1.0.0
--no-interaction drupal10
cd drupal10
ddev start
```

For `drupal 11.0.0-beta1` run the below command:

```
composer create-project specbee/drupal-recommended-starterkit:2.0.0
--no-interaction drupal11
cd drupal10
ddev start
```

**Please note: You'll need DDEV 1.23.0 or later. [See the documentation](https://ddev.readthedocs.io/en/stable/users/install/ddev-upgrade/) if you need to upgrade.**

You can update the local development configurations for Local Development in the `.ddev/config.yml` file. For example, to change the project name update the `name` parameter in the configuration file.

Adding Packages
---------------

[](#adding-packages)

Use `composer require` to include and download dependencies for your project.

```
cd some-dir
composer require drupal/devel
```

Adding Libraries
----------------

[](#adding-libraries)

You can manage front-end asset libraries with Composer thanks to the [asset-packagist repository](https://asset-packagist.org/). Composer will detect and install new versions of a library that meet the stated constraints.

```
composer require bower-asset/dropzone
```

Using GrumPHP
-------------

[](#using-grumphp)

The package setups code quality checking tools for Drupal project during git commits.

### Forcing commit message format

[](#forcing-commit-message-format)

To configure commit message structure, use the [git\_commit\_message task](https://github.com/phpro/grumphp/blob/master/doc/tasks/git_commit_message.md). For example, to enforce the commit message contains the Jira issue ID, use the rule as the following snippet. More options are [documented online](https://github.com/phpro/grumphp/blob/master/doc/tasks/git_commit_message.md).

```
# grumphp.yml
grumphp:
  tasks:
    git_commit_message:
      matchers:
        "Must follow the pattern":
        '/(^JIRA-[0-9]+(: )[^ ].{5,}\.)|(Merge branch (.)+)/'
```

Using DotEnv
------------

[](#using-dotenv)

You can now add environment variables to your `.env` file and it will automatically be available in the `$_ENV` global var.

You can use it in `settings.php`, in service providers or in other places throughout your code. Some examples:

```
