Coder Social home page Coder Social logo

utcgilligan / particle Goto Github PK

View Code? Open in Web Editor NEW

This project forked from utcweb/particle

0.0 0.0 0.0 66.52 MB

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

Home Page: https://phase2.gitbook.io/frontend/

License: GNU General Public License v2.0

JavaScript 10.02% HTML 0.02% Twig 65.10% PHP 2.62% Vue 1.20% CSS 20.62% Mustache 0.07% EJS 0.35%

particle's Introduction

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

CheatSheet

Warning

  1. the module and the submodule both have a master and develop branch.
  2. if working on the git submodule don't update utccloud parent repo until you have commited changes. (data can be lost if you update utccloud while working on particle subtheme.
  3. Only commit the changes on the parent git repo when you want utccloud to refer to the latest revision of the particle repo. In other words, it should be done once per PR to the main repo.

Setup

  1. git submodule update --init --recursive -> the first time the submodule is added to your repo (on MacOS, linux handles this fine).
  2. git submodule update --recursive -> after is beeing added once.
  3. composer install and npm install -> if blt setup and sync have not been used.

Things to remember

  1. gulp -> npm run dev:drupal
  2. npm start -> starts the living stylesheet
  3. ads run drush cr -> might be needed from time to time.

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. Test PR 2.0

particle's People

Contributors

illepic avatar traviscibot avatar utcbridget avatar bmartinez287 avatar evanlovely avatar jryanconklin avatar stevendshelton avatar tjheffner avatar entorenee avatar renovate[bot] avatar rloos289 avatar renovate-bot avatar utcgilligan avatar brittrich avatar novally avatar wkominos avatar britt-rich avatar greenkeeper[bot] avatar madhaze avatar frederickengelhardt avatar jwaxo avatar jengrace avatar mike-potter avatar yaazkal avatar yuginaili avatar joannasaerom avatar jhedstrom avatar anniegreens avatar bkildow avatar potterme avatar

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.