PHPackages                             barrelstrength/craft-master - 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. barrelstrength/craft-master

Abandoned → [https://github.com/barrelstrength/demo.projectmothership.com](/?search=https%3A%2F%2Fgithub.com%2Fbarrelstrength%2Fdemo.projectmothership.com)ArchivedProject

barrelstrength/craft-master
===========================

Craft CMS Project

2.0.3(6y ago)1515423[1 issues](https://github.com/barrelstrength/craft-master/issues)MITPHP

Since Feb 2Pushed 3y ago21 watchersCompare

[ Source](https://github.com/barrelstrength/craft-master)[ Packagist](https://packagist.org/packages/barrelstrength/craft-master)[ Docs](https://craftcms.com/)[ RSS](/packages/barrelstrength-craft-master/feed)WikiDiscussions v2 Synced 1mo ago

READMEChangelogDependencies (2)Versions (8)Used By (0)

[![No Maintenance Intended](https://camo.githubusercontent.com/d904056147052e22d8e1c7f46bb50293ed2aeb4c43ead9a2d0cf7a48b46d0562/687474703a2f2f756e6d61696e7461696e65642e746563682f62616467652e737667)](http://unmaintained.tech/)

A lot has changed since this repo was created. Setting this to read-only as a reference but you'll likely be much better served by a more modern workflow these days.

---

Craft Master
============

[](#craft-master)

Craft Master is a starter project for Craft CMS.

Setup
-----

[](#setup)

To create a new project:

```
composer create-project barrelstrength/craft-master

```

Follow the Craft CMS docs [Installation Instructions](https://docs.craftcms.com/v3/installation.html) as appropriate.

---

To get setup with a Craft CMS project using Craft Master:

1. Clone the repository to your local environment
2. Copy `.env.example` =&gt; `.env` and add your `ENVIRONMENT` and database connection info
3. Copy `config/local/general.example.php` =&gt; `config/local/general.php` and update as desired

Context
-------

[](#context)

Craft provides a framework for configuring a project across multiple environments using environment variables (at the infrastructure level) and multi-environment configs (within the application). Craft Master is designed to work out of the box with the recommended Craft configuration and add flexibility to support a broader range of application configurations.

Craft Master updates the default Craft starter project in the following ways:

- Adds .editorconfig
- Updates .gitignore
    - Includes `vendor` folder
    - Excludes several common editor configurations and misc files
    - Excludes additional items used in development and build scripts
    - Excludes the Craft `storage` folder (excluding `storage/rebrand`)
    - Excludes local configuration files
- Updates default environment conventions to assume three environments: `local`, `dev`, `production`
    - Updates `.env` to use `local` as the default `ENVIRONMENT` variable
- Enhances support for application-level configuration
    - Updates `web/index.php` to include `.multienv.php` and dynamically set the `ENVIRONMENT` and `SITE_URL` variables
    - Updates `.env` settings in `config/db.php` to use multi-environment config and fallback to default settings if being used with application level configuration
- Updates `config/general.php` to:
    - Sets `env`, `baseCpUrl`, `siteUrl`, and `@web` alias dynamically
    - Updates `defaultSearchTermOptions` to allow fuzzy searches
    - Sets `tokenParam` to use `t`
    - Updates `securityKey` to support both `.env` or fallback to a value defined in `config/general.php`
    - Sets `userSessionDuration`, `rememberedUserSessionDuration`, and `rememberUsernameDuration` to one month
    - Updates `config/general.php` to support a local override file `config/local/general.php` that can be excluded from the repo
    - Adds default `config/local/general.php` with extended login times and several development considerations
- Updated default Redactor Configs
    - Simple - Bold-Italic.json
    - Content - No Headings.json
    - Content - H2-H3.json
- Adds a front-end login form for users when a site is offline via `templates/503.twig`
- Adds `CraftTwigAutoCompleteExtension.php`

Considerations
--------------

[](#considerations)

### Tracking changes in the repository

[](#tracking-changes-in-the-repository)

Craft Master prefers to keep all project files in the repository and includes the `vendor` folder to track and deploy changes.

### Dynamic environment variables

[](#dynamic-environment-variables)

Craft Master updates `web/index.php` to include `config/multienv.php` which adds support for defining the `ENVIRONMENT` and `SITE_URL` variables as part of the web request. The `ENVIRONMENT` and `SITE_URL` variables are used in the `config/general.php` file to help define several other settings.

### Site URL and @web

[](#site-url-and-web)

The Site URL setting is used in several places and can be defined in the `.env` file on a per-environment basis.

Alternatively, Craft Master will dynamically set the `SITE_URL` variable if no Site URL is defined in the `.env` file. This is done using the `$_SERVER['HTTP_HOST']` variable. If you choose this method, be sure your application is using an environment where `$_SERVER['HTTP_HOST']` can be trusted. If you are unsure, play it safe and define your Site URL using `.env`.

Alongside these conventions, Craft Master sets the `@web` alias dynamically, to help avoid an undesired side effects (such as cache poisoning) if `@web` is used with its default behavior.

### Databases

[](#databases)

The default `config/db.php` has been updated to work in concert with `.env` so it's easier to use the recommended Craft `.env` alongside alternative workflows without the need to define some variables multiple times.

For local development, define your database credentials in the `.env`. In other environments, you can choose to use `.env` or a multi-environment application configuration.

###  Health Score

36

—

LowBetter than 82% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community20

Small or concentrated contributor base

Maturity68

Established project with proven stability

 Bus Factor1

Top contributor holds 97.3% 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 ~314 days

Recently: every ~372 days

Total

7

Last Release

1133d ago

Major Versions

v1.x-dev → 2.0.0-beta.12019-03-05

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/2899039?v=4)[Barrel Strength](/maintainers/BarrelStrength)[@barrelstrength](https://github.com/barrelstrength)

---

Top Contributors

[![BenParizek](https://avatars.githubusercontent.com/u/309735?v=4)](https://github.com/BenParizek "BenParizek (72 commits)")[![bransinanderson](https://avatars.githubusercontent.com/u/431930?v=4)](https://github.com/bransinanderson "bransinanderson (1 commits)")[![danieltott](https://avatars.githubusercontent.com/u/360261?v=4)](https://github.com/danieltott "danieltott (1 commits)")

---

Tags

craftcmscmsprojectCraftcraftcms

### Embed Badge

![Health badge](/badges/barrelstrength-craft-master/health.svg)

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

###  Alternatives

[wrav/oembed

A simple plugin to extract media information from websites, like youtube videos, twitter statuses or blog articles.

36205.0k3](/packages/wrav-oembed)

PHPackages © 2026

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