Pattern Lab Node Core 2.7.1 Alpha
Pre-releasePattern Lab Node v2.7.1 Alpha
This release is significant to me - mostly because it prominently features the work of the Pattern Lab Node community. Indeed - more commits from the community than from me or Geoff feels like the start of something special. Thank you all. I am constantly, utterly, amazed at the contributions. And across many vectors - better plugin support, better UX, better performance and stability.
Special shoutout to @tburny for stepping up and shouldering a big burden, only to deliver in spades...
Incremental Builds!
For speeding up Pattern Lab, a new feature called incremental builds has been added in Patternlab Node 2.7.0
. Instead of rebuilding the whole Pattern Lab tree, only changed patterns (and files including these) will be rebuilt.
- Also an export to GraphViz has been added.
- Pattern Lab will now print which patterns have been built yet, so correctness of the build can be verified.
Enabling/Disabling Incremental Builds
The feature is enabled automatically when building Pattern Lab with the cleanPublic
option set to false
on the patternlab-config.json
file found within editions.
Enabling/Disabling GraphViz Export
Setting the exportToGraphViz
configuration option to true
will export a graph showing which patterns include other patterns to public/dependencyGraph.dot
. You can generate an SVG file via dot -Tsvg dependencyGraph.dot -o dependencyGraph.svg
and open dependencyGraph.svg
in your browser or favourite SVG viewer.
Here's a sample file!
Possible Issues
- Pattern Lab remembers which patterns already have been compiled via the
public/dependencyGraph.json
file, which might eventually become out of sync. A quick fix is to clean thepublic
directory. Deleting the file is not enough, because Pattern Lab will detect that the source files were not modified after the template output files inpublic
. patternDependencyGraph.json
has an internal version. During Pattern Lab upgrades, the structure might change, which will trigger a full rebuild and a warning is shown.- When changing a Markdown file, the pattern is not recompiled.
Reporting Problems
Please report any problems and ask questions to @tburny or the Pattern Lab team. Thanks!
Sample Output
3.2.1. 🚀 >>>>>>>>>>>>>>>>>>>>>🎯 💣
Because so much is going on with this release, I've marked it alpha. Please help test!
CHANGELOG
- ADD: Implement Build Algorithm for Only Changed/Affected Patterns | @tburny
- ADD: Add test cases for @block-partial issue in Handlebars engine | @teehemkay
- ADD: Expose the pattern engines as a property of the patternlab object | @bleathem
- ADD: Add chalk and use it to make the build and engine loading process prettier | @geoffp
- FIX: Default plugins array if none found | @giuseppepaul
- FIX: Fix link to help wanted and up for grabs issues | @scottgruber
- CHG: Finish #565 by replacing our lo-tech color solution found within core/lib/utilities.js | @bmuenzenmeyer
UPGRADE INSTRUCTIONS
Follow the standard upgrade instructions.
EDITIONS
It's now suggested to use an edition with Pattern Lab Node. Editions package up core, shared frontend assets, and a means to communicate with the API.
- Edition Node Gulp
- Edition Node Grunt - less tested
UNIT TESTS/ASSERTIONS
12 unit tests/assertions were added this release for a total of 383
ROADMAP
Keep an eye on the milestones for a clearer understanding of where the project is going in the next few releases.
SUPPORT PATTERN LAB NODE
I've set up a Patreon account to directly support continued work on the Pattern Lab Node project.
I need help and support to make Pattern Lab Node a sustained success. I devote a lot of free time and would-be sleep to make the project what it is, but nothing compares to hearing back from users. It means the world to me when people find value in Pattern Lab Node. I am ridiculously humbled to hear and see what you all build with it.
If you find yourself here and balk and the idea of supporting open source software monetarily - I understand. Carry on, but please do share what you build - we all learn more together.
The Pattern Lab Node Team
- @bmuenzenmeyer Brian Muenzenmeyer, Lead Maintainer | Follow Brian on Twitter
- @geoffp Geoff Pursell, Core Contributor | Follow Geoff on Twitter
- @raphaelokon Raphael Okon, CLI Contributor | Follow Raphael on Twitter
- @tburny, Core Contributor