msherron/scoundrel

A Lando-powered Drupal 9 project, for the discerning galactic smuggler.

1.0.1 2021-06-29 19:47 UTC

This package is auto-updated.

Last update: 2024-04-29 04:40:30 UTC


README

A Lando-based Drupal 9 project template, chock full of my favorite goodies - for the discerning galactic smuggler.

What's all this for, then?

I found myself adding a lot of local tooling stuff to most Drupal projects that either Lando or Core doesn't provide by default. I got sick of copying and tweaking the same lando file every time I created a project, so I decided to build Scoundrel as a Composer project and step up my life.

This project can be used as a local development environment for D9 builds, or to spin up a quick environment for Contrib or Core development. Inspired and partially extended from Lando + Drupal Contributions.

Prerequisites

  1. Install Composer. "But I don't wanna install any php stuff locally, I want Lando to handle handle all that?!" No, you don't. It's hella slow running file I/O inside Docker. Trust me on this one.
  2. Install Lando.

Getting started

  1. Run composer create-project msherron/scoundrel.
  2. Require any additional Composer dependencies for your project. You know you want some Contrib stuff.
  3. Run scoundrel-start. Lando will ask you some questions, and then start.
  4. To install Drupal, run lando si [profile-name]. You can not provide a profile name, if you really like Standard .. I guess.

Instructions on the goodies:

  1. Drush - we handle the path to your Drupal for you, just run lando drush [cmd]. No URI required.
  2. Xdebug - it's really easy to use XDebug w/ Lando, but you don't want to leave it on all the time, as it really tanks performance. I provide two handy commands: xdebug-on and xdebug-off.
  3. Run-tests - Core's command line test execution script (run-tests.sh), handles Simpletest, PHPUnit, etc.
  4. PHPUnit - Takes a path to a module/profile as an argument to run a targeted test.

"Who is sniffing my WHAT now?"

Oh, that's just GrumPHP. It does some basic code quality checking for you and blocks your commits if they don't pass. You want that. It makes you better.