Coder Social home page Coder Social logo

fourkitchens / emulsify Goto Github PK

View Code? Open in Web Editor NEW
163.0 36.0 70.0 7.53 MB

DEPRECATED (see README for new version)

License: GNU General Public License v2.0

JavaScript 56.43% CSS 6.92% HTML 28.59% PHP 7.69% Shell 0.36%
pattern-lab drupal drupal-8 component-driven theme emulsify

emulsify's Introduction

Four Kitchens

⚠️ You are viewing the legacy version of Emulsify ⚠️

You can find the current version of Emulsify Design System at github.com/emulsify-ds

If you'd like to upgrade your Emulsify project to the new version, check out this documentation.


Emulsify (legacy version)

Pattern Lab + Drupal 8

Component-driven prototyping tool using Pattern Lab v2 automated via Gulp/NPM. Also serves as a starterkit Drupal 8 theme.

Requirements

  1. PHP 7.1
  2. Node (we recommend NVM)
  3. Gulp
  4. Composer
  5. Optional: Yarn

Prototyping (separate from Drupal, Wordpress, etc.)

Emulsify supports both NPM and YARN.

Install with NPM: composer create-project fourkitchens/emulsify:^3.0 --stability dev --no-interaction emulsify && cd emulsify && npm install

Install with Yarn: composer create-project fourkitchens/emulsify:^3.0 --stability dev --no-interaction emulsify && cd emulsify && yarn install

Drupal installation

In a Composer-based Drupal install (recommended)

  1. Require emulsify in your project composer require fourkitchens/emulsify
  2. Move into the original emulsify theme cd web/themes/contrib/emulsify/
  3. Create your new theme by cloning emulsify php emulsify.php "THEME NAME" (Run php emulsify.php -h for other available options)
  4. Move into your theme directory cd web/themes/custom/THEME_NAME/
  5. Install the theme dependencies npm install or yarn install
  6. Enable your theme and its dependencies drush then THEME_NAME -y && drush en components unified_twig_ext -y
  7. Proceed to the "Starting Pattern Lab…" section below

If you're not using a Composer-based Drupal install (e.g. tarball download from drupal.org) installation instructions can be found on the Wiki.

Troubleshooting Installation: See Drupal Installation FAQ.

Note: Once you've created your custom theme, you can remove Emulsify as a dependency of your project. If you'd like to get updates as we push them, solely for educational/best-practice information, feel free to leave it in and receive the updates. Updating Emulsify will not affect your custom theme in any way.

Starting Pattern Lab and watch task

The start command spins up a local server, compiles everything (runs all required gulp tasks), and watches for changes.

  1. npm start or yarn start

Highlighted Features

LightweightEmulsify is focused on being as lightweight as possible.
SVG sprite support Automated support for creating SVG sprites.
Stock Drupal templates Templates from Stable theme - see /templates directory
Stock Components with Drupal support built-in (https://github.com/fourkitchens/emulsify#emulsifys-built-in-components-with-drupal-support)
Performance Testing Support for testing via Google PageSpeed Insights and WebPageTest.org (https://github.com/fourkitchens/emulsify/wiki/Gulp-Config#performance-testing)
Automated Github Deployment Deploy your Pattern Lab instance as a Github page (https://github.com/fourkitchens/emulsify/wiki/Gulp-Config#deployment)
Automated Accessibility Testing Accessibility Testing using pa11y (https://github.com/fourkitchens/emulsify/wiki/Accessibility-Testing)

Emulsify's Built in Components with Drupal support

Forms, tables, video, accordion, cards, breadcrumbs, tabs, pager, status messages, grid

View a demo of these default Emulsify components.

Documentation

Documentation is currently provided in the Wiki. Here are a few basic links:

General Orientation

See Orientation

We have a series of videos for you to learn more about Emulsify.

For Designers (Prototyping)

See Designers

For Drupal 8 Developers

See Drupal Usage

Gulp Configuration

See Gulp Config

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.