All Projects → phase2 → p2-theme-core

phase2 / p2-theme-core

Licence: other
Core configuration for Pattern Lab Starter/Particle v9

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to p2-theme-core

boilerplate-frontend
Frontend Boilerplate for projects
Stars: ✭ 20 (+17.65%)
Mutual labels:  gulp-tasks
ampjucks
Boilerplate and base project to create static websites with AMP, Nunjucks and Gulp
Stars: ✭ 18 (+5.88%)
Mutual labels:  gulp-tasks
sass-starter-pack
Sass starter files using Gulp v4.0.0 🔥
Stars: ✭ 34 (+100%)
Mutual labels:  gulp-tasks
beginner-windows-npm-gulp-webdev-tutorial
Beginner guide for users on web development with node.js/npm + gulp terminal commands. You'll learn how to use other terminal commands like git, gulp, bower, yarn, and more!
Stars: ✭ 40 (+135.29%)
Mutual labels:  gulp-tasks

Read the Docs Badge Build Status

NPM

NPM

Prerequisites

  • p2-theme-core v9: Node >=4.0.0 >=8.0.0
  • p2-theme-core v10: Node >=6.0.0 <=8.0.0

This is one of two pieces of our themes:

  • pattern-lab-starter - a starter set of files for Drupal theming that includes a Twig powered Pattern Lab and beginning Sass & other front end tools. Uses p2-theme-core for automation.
  • p2-theme-core (this repo) - the core gulp tasks that handles most of the theme's automation.

Phase2 Theme Core

Ideally, the changes to how a theme install works would be done by passing in a different config.js.

More docs in docs/ folder – these docs are hosted in Read the Docs!

Features

  • Scss => CSS compiling with Libsass, PostCSS, linting, and SourceMaps
  • Pattern Lab Twig compiling & BrowserSync live reload and style injection
  • SVG => Font Icons compiling with support for adding mixins and classes to Scss along with a demo page in Pattern Lab
  • JS compiling via Babel, linting and aggregation
  • WebPack module bundling
  • Drupal file watching to trigger Drush cache clears

All is easily configurable by changing values in your config.js file in your project. These values are merged into the config.default.js file - look there for the available options and defaults.

Installation

It's best to look at how pattern-lab-starter implements this, but it's basically this:

npm install p2-theme-core --save
cp node_modules/p2-theme-core/config.default.js gulpconfig.js

Make a gulpfile.js with:

'use strict';
var gulp = require('gulp');
var config = require('./gulpconfig.js');
var tasks = {
  'compile': [],
  'watch': [],
  'validate': [],
  'clean': [],
  'default': []
};

require('p2-theme-core')(gulp, config, tasks);

gulp.task('clean', gulp.parallel(tasks.clean));
gulp.task('compile', gulp.series(
  'clean',
  gulp.parallel(tasks.compile)
));
gulp.task('validate', gulp.parallel(tasks.validate));
gulp.task('watch', gulp.parallel(tasks.watch));
tasks.default.push('watch');
gulp.task('default', gulp.series(
  'compile',
  gulp.parallel(tasks.default)
));
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].