• Stars
    star
    317
  • Rank 131,465 (Top 3 %)
  • Language Twig
  • License
    GNU General Publi...
  • Created over 9 years ago
  • Updated 12 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A starter kit for using the prototyping tool, Pattern Lab, in tandem with a Drupal theme. Utilizes Webpack for all asset management.

Particle: A design system integrating to Pattern Lab and a Drupal 8 theme

GitHub (pre-)release Build Status Greenkeeper badge

Particle mascot: Astrogoat

Particle is an opinionated set of tools and examples to:

  1. Build an application-agnostic design system
  2. Apply that design system to a locally-served Pattern Lab for rapid prototyping
  3. Apply that design system to a Drupal theme

In depth documentation about frontend approach using this project at Phase2 Frontend Docs

Prerequisites

Step-by-step instructions to install all dependencies for OSX can be found in this Gist.

Provides

  • Drupal theme, Grav theme, and Pattern Lab app
  • Strict Atomic Design component structure
  • Webpack bundling of all CSS, javascript, font, and static image assets for multiple targets (Drupal theme, Grav theme, Pattern Lab)
  • Webpack Dev Server for local hosting and hot reloading of assets into Pattern Lab
  • Twig namespaced paths automatically added into Drupal theme and Pattern Lab config. Within any twig file, @atoms/thing.twig means the same thing to Drupal theme and Pattern Lab.
  • Iconfont auto-generation
  • Auto-linting against the AirBnB JavaScript Style Guide
  • All Webpack files are fully configurable
  • Simple Yeoman generator for Design System component creation

Quickstart

Particle builds design systems in dev mode for local hosting, or production mode for optimized asset generation.

Quickstart A

  1. Simply run:

    npm create @phase2/particle particle
  2. Then cd particle/ and run:

    npm start

Quickstart B

  1. Download the latest release
  2. Extract anywhere (i.e. this readme should be at any/where/particle/README.md)
  3. Within the extracted folder run:
npm install
npm run setup
npm start

Simply wait until the webpack bundle output appears then visit http://0.0.0.0:8080/app-pl/pl/ (or http://localhost:8080/app-pl/pl/) and start working.

That's it. For much greater detail on the frontend approach using this project, check out the Phase2 Frontend Docs.

Design System Naming

The Design System Source folder is named default ./source/default. It's handy in multi-design setups to name this per design system and post-fix apps with that design system name. For example, apps/drupal-default/ contains the implementation of the default source directory. These are intended to be updated by the needs of your project.

More Repositories

1

grunt-drupal-tasks

Grunt-based build and testing tasks for Drupal
JavaScript
125
star
2

outline

Outline is a web component based design system starter kit. Outline is based on the latest technologies and tools to help your component authoring experience and facilitate adoption in your organization.
TypeScript
90
star
3

drupal-lab

A sample Drupal 8 site with a Pattern Lab Twig powered theme.
PHP
61
star
4

pattern-lab-workshop

The Workshopper module for learning the basics of Pattern Lab
JavaScript
31
star
5

docker-https-proxy

Handles HTTPS proxying with automatic self-signed certs for SSL termination.
Shell
24
star
6

d8_decorators

Examples of using Symfony service decorators from our blog
PHP
21
star
7

sublime-drupal

Sets up Sublime Text editor for Drupal development
Shell
21
star
8

pattern-lab-drupal-theme

HTML
21
star
9

octane

Drupal 8 starting distro
PHP
20
star
10

generator-gadget

The Yeoman Generator for Drupal and Grunt Drupal Tasks.
JavaScript
17
star
11

p2-theme-core

Core configuration for Pattern Lab Starter/Particle v9
JavaScript
17
star
12

openatrium-drops-7

Open Atrium 2 distro for Pantheon
PHP
17
star
13

rig

Outrigger command line tool
Go
12
star
14

oa_core

Open Atrium release modules live on drupal.org. This is a dev version to take advantage of github workflow features.
PHP
12
star
15

behat-drupal-extension

Drupal Extension for Behat
PHP
12
star
16

openair-reborn

A Chrome extension to improve (fix) the OpenAir time entry grid interface
JavaScript
11
star
17

d8_examples

Example code for Drupal 8
PHP
10
star
18

generator-pattern-lab-starter

This is a Yeoman Generator for pattern-lab-starter: https://github.com/phase2/pattern-lab-starter
HTML
10
star
19

outrigger-examples

Example projects for Outrigger
JavaScript
10
star
20

casperjs-responsive

A quick CasperJS script for taking screenshots at responsive breakpoints.
CoffeeScript
10
star
21

docker-yeoman

Base Docker image for yeoman generators in Outrigger
Shell
9
star
22

frontend-docs

A ReadTheDocs of Phase2's frontend toolset.
8
star
23

schemata

Facilitate generation of schema definitions of Drupal 8 data models as used by Drupal REST.
PHP
8
star
24

ga_stats

Google Analytics Statistics API integration with Drupal
PHP
7
star
25

progenitor

Installation profile documenting best practices for use case-neutral Drupal
PHP
7
star
26

veewee-boxes

Creating really small CentOS and Debian images.
Shell
7
star
27

opencalais

Drupal7 implementation of OpenCalais module for Drupal
JavaScript
6
star
28

openpublic-drops-7

OpenPublic for Drupal 7 based on the Drops 7 core.
PHP
6
star
29

docker-pa11y

Docker image for pa11y (v5), the CLI-based accessibility testing tool.
Dockerfile
6
star
30

generator-outrigger-drupal

Yeoman generator that weaves together Outrigger with other best-in-class tools for your Drupal project.
JavaScript
6
star
31

state-flow-plugin-example

PHP
5
star
32

grav-pl-starter

An example setup for building a Grav CMS site based on a Pattern Lab design system.
PHP
5
star
33

pa11y-dashboard

A vue-based dashboard that displays results generated by the pa11y or pa11y-ci tool.
Vue
5
star
34

create-particle

Simple starter script to clone Particle, install, and setup
JavaScript
4
star
35

wikheu

Build scripts for Drupal multisite setups
4
star
36

dynamicPopover

An implementation of Twitter Bootstrap's popover class with a required option for a jquery selector. Allows dynamic content in popovers.
JavaScript
4
star
37

docker-jenkins-docker

Spin up a Jenkins container that can run Docker commands for the host.
Shell
4
star
38

openatrium-vagrant

A sample CentOS 5.6 image to show how you can develop with a Vagrant VM.
Ruby
4
star
39

drupal-docset

A DocSet for Drupal 7.x, designed for use in Dash.app.
JavaScript
4
star
40

pangea

Base theme to rule them all
PHP
4
star
41

oa_radix

Open Atrium release modules live on drupal.org. This is a dev version to take advantage of github workflow features.
CSS
4
star
42

outrigger-docs

Documentation for Outrigger
Dockerfile
4
star
43

openatrium

Open Atrium 2.x. Release is on drupal.org. This is dev release for Travis CI testing
Shell
3
star
44

generator-p2-theme

Drupal Theme Yeoman Generator
JavaScript
3
star
45

p2-importer

A Data Import Library
PHP
3
star
46

oa_workbench

Integrates Open Atrium with workbench_moderation_profiles for adding custom workflow to spaces and sections.
3
star
47

behat-phase2tech

Some sample features (and custom assertions) to test the phase2technology.com website using Behat and Mink.
PHP
3
star
48

presentation-caching-without-fear

JavaScript
3
star
49

openatrium-2-quickstart

Run OpenAtrium on OpenShift.
PHP
3
star
50

oa_events

Open Atrium release modules live on drupal.org. This is a dev version to take advantage of github workflow features.
PHP
3
star
51

DrushExtension

Behat extension for integration with Drupal (via Drush)
PHP
3
star
52

detect-distro

Chrome Plugin that detects if a site is Drupal and if it is using a Distruibution
JavaScript
2
star
53

redirect_page

2
star
54

grav-plugin-twig-namespaces

A Grav CMS plugin for custom Twig namespaces
PHP
2
star
55

homebrew-devtools

Homebrew repository for devtools
Ruby
2
star
56

outrigger.sh

Website for http://outrigger.sh
SCSS
2
star
57

phazer

D8 profile
PHP
2
star
58

docker-gitlab-ci-workspace

A GitLab CI workbench ready to support a container-based pipeline.
Dockerfile
2
star
59

media_views_widget

A drupal module that adds a views centric widget to the media module
PHP
2
star
60

behat-sauce-extension

PHP
2
star
61

docker-memcache

Memcache container with tunable settings.
Shell
2
star
62

taxonomy_view

THIS IS NOW DEPRICATED SHOULD USE MODULE ON D.O
PHP
2
star
63

openpublish_search

Basic Search Config for openpublish
PHP
2
star
64

docker-varnish

Varnish 4 container with a confd template that outputs a nice Drupal-compatible VCL.
Shell
2
star
65

embbedable

DO NOT USE THIS REPO Use the d.o version http://drupal.org/project/embeddable
PHP
2
star
66

openpublic_workflow_basicapproval

OPIC app for basic workflow using workbench
PHP
2
star
67

views_showmore

A Drupal module for fancy, ajaxy Views paging.
JavaScript
2
star
68

puppet-googlevoiceandvideoplugin

Google Voice and Video support module for Boxen.
Shell
2
star
69

svgo-php

SVGO ported to PHP
2
star
70

behat-suite

PHP
2
star
71

docker-cli

Dockerfile
2
star
72

server-watch

Script to monitor server side variables for logging while testing, etc.
Python
2
star
73

drush-bake

use a php script for build drush make files
2
star
74

special-menu-items

Additional functionality on top of http://drupal.org/project/special_menu_items
PHP
2
star
75

openpublish_advanced_taxonomy

OpenPublish App that adds Taxonomy Pages that use Search API and have facets
PHP
1
star
76

taxonomy_field_autocomplete_multi_voc_widget

THis is currenty a patch to drupal core
1
star
77

quark

Design system tools used at Phase2 Technology
1
star
78

oa_notifications

Open Atrium release modules live on drupal.org. This is a dev version to take advantage of github workflow features.
PHP
1
star
79

oa_profile2

Integration between Open Atrium 2 and Profile2
PHP
1
star
80

devtools-examples

Example projects for spinning up various technologies on DevTools
JavaScript
1
star
81

docker-keel

Foundational image on which to base cross-functional command-line containers.
Shell
1
star
82

homebrew-php

Ruby
1
star
83

drupal8-quickstart

An OpenShift Quickstart that lets you try Drupal 8 and update the git repository.
PHP
1
star
84

openpublish_disqus

Disqus App for Openpublish
PHP
1
star
85

cms_api

PHP
1
star
86

openpublic-quickstart

Get started with OpenPublic on OpenShift!
PHP
1
star
87

omega_override

PHP
1
star
88

purge_all

Facilitate purging entire Drupal site via Expire module.
PHP
1
star
89

p2ools

Phase2 Tools
PHP
1
star
90

open-publish-sps

SPS integration with Open Publish
PHP
1
star
91

progenitor_elasticsearch

Recipe for Drupal/ElasticSearch integration
1
star
92

docker-cypress

Cypress running as user 1000
Dockerfile
1
star
93

imstatus-applescript

An AppleScript to change your IM status.
1
star
94

oa_training_dev

Developer training materials for Open Atrium
PHP
1
star
95

octane-actions

Public github actions for Octane CI
Shell
1
star
96

docker-generator-gadget

Outrigger yeoman generator docker container for phase2/generator-gadget
1
star
97

docker-servicebase

This is a CentOS 7-based image that has had the S6-overlay init system and confd added to it.
Dockerfile
1
star
98

puppet-phpstorm

Boxen PHPStorm module
Shell
1
star
99

puppet-moom

Shell
1
star
100

d8pltwig

A project encompassing PL Twig + Drupal
1
star