sososinelu / clubulcalatorilor

1 stars 0 forks source link

Clubul Calatorilor Website

Developer information for the Clubul Calatorilor website.

1. Getting Started

Start

1.1 Prerequisites

Install Composer.

Install Node.js.

1.2 Installing

Checkout the latest codebase.

Run composer install in /app/ to build Drupal and dependencies.

Navigate to /app/web/themes/contrib/neato and run bower install (if you don't have Bower installed already run npm install bower before bower install).

Run npm install in /app/web/themes/custom/clubulcalatorilor_theme to install dependencies.

Navigate to /web/sites/default/ then copy default.settings.php and rename to settings.php and configure the database connection.

An existing database backup of the Drupal site can be imported through the 'Backup and migrate' module or directly via MySQL.

Any required public files should be copied to web/sites/default/files.

2. Git

Git

2.1 Workflow

At any given time the repo should contain the following branches:

develop - Latest tested/stable codebase master - Mirror of the production codebase Commit messages should be semantic and shouldn't include a reference to a task number.

In-progress tasks should be worked on in a seperate branch.

Only after a task is completed and tested should it be merged into the develop branch. Prior to merging the branch should be rebased off the latest develop branch and commits optionally squashed.

Prior to deployments to the production site the develop branch should be merged into master. In cases where only a subset of the commits in the develop branch need to be included in the master branch, these commits should instead be cherry picked (with the develop branch rebased off master following this).

3. Technologies

Robot

The Drupal site is scaffolded using the Drupal Composer template (documentation for this is included in drupal-composer.md in the root of the project). Module/theme/patch dependencies should all be managed using Composer.

The Configuration synchronization module is used to manage site config. Any changes made to config should be exported to the ../config/sync directory by running drush cex. Updated config can be imported by running drush cim.

The custom theme uses npm for package management and Webpack for compiling assets. Run npm run build in the root of the custom theme to compile assets (or npm run dev to watch for file changes).

4. Service integration

Services

Sendgrid

Stripe

5. Cheatsheet

Copybook

Install contrib module:

composer require drupal/<modulename>

Import Drupal configuration:

drush cim

Export drupal configuration:

drush cex

Clear cache using drush:

drush cr

Compile assets in web/themes/custom/clubulcalatorilor_theme

gulp