From 4982e32aebf72417a4bff7c44b4171075510d5fd Mon Sep 17 00:00:00 2001
From: khawkins98 <khawkins98@gmail.com>
Date: Thu, 18 May 2017 11:43:07 +0100
Subject: [PATCH] Separate out meta-patterns

---
 assets_build/gulp/tasks/meta.js               |   4 +-
 assets_build/gulp/tasks/pages.js              |   4 +-
 assets_build/panini_helpers/bb-html.js        |   2 +-
 assets_build/panini_helpers/bb-js.js          |   2 +-
 assets_build/panini_helpers/bb-scss.js        |   2 +-
 .../meta-patterns/accessibility.html          |   0
 .../websites}/meta-patterns/analytics.html    |   0
 .../meta-patterns/browser-compatibility.html  |   0
 .../websites}/meta-patterns/forms.html        |   0
 .../meta-patterns/helper-classes.html         |   0
 .../meta-patterns/masthead-compact.html       |   0
 .../meta-patterns/page-structure.html         |   0
 .../websites}/meta-patterns/sample-pages.html |   0
 .../websites}/meta-patterns/screen-sizes.html |   0
 .../meta-patterns/search-ebi-indexing.html    |   0
 .../meta-patterns/search-guidelines.html      |   0
 .../websites}/meta-patterns/search-seo.html   |   0
 .../websites}/meta-patterns/usability.html    |   0
 .../patterns/animation/animation.html         |   0
 .../patterns/animation/animation.yml          |   0
 .../patterns/animation/layout.html            |   0
 .../{ => websites}/patterns/app-float.scss    |   0
 content/{ => websites}/patterns/app.scss      |   0
 .../patterns/badges/badges.html               |   0
 .../{ => websites}/patterns/badges/badges.png | Bin
 .../{ => websites}/patterns/badges/badges.yml |   0
 .../patterns/badges/layout.html               |   0
 .../patterns/button-grid/button-grid.html     |   0
 .../patterns/button-grid/button-grid.yml      |   0
 .../patterns/button-grid/layout.html          |   0
 .../code-highlighting/code-highlighting.html  |   0
 .../code-highlighting/code-highlighting.yml   |   0
 .../patterns/code-highlighting/layout.html    |   0
 .../patterns/colors/colors.html               |   0
 .../{ => websites}/patterns/colors/colors.png | Bin
 .../{ => websites}/patterns/colors/colors.yml |   0
 .../patterns/colors/layout.html               |   0
 .../patterns/favicons/favicons.html           |   0
 .../patterns/favicons/favicons.yml            |   0
 .../patterns/favicons/layout.html             |   0
 .../patterns/formatting/formatting.html       |   0
 .../patterns/formatting/formatting.yml        |   0
 .../patterns/formatting/layout.html           |   0
 .../{ => websites}/patterns/grid/grid.html    |   0
 content/{ => websites}/patterns/grid/grid.yml |   0
 .../{ => websites}/patterns/grid/layout.html  |   0
 .../patterns/headlines/headlines.html         |   0
 .../patterns/headlines/headlines.yml          |   0
 .../patterns/headlines/layout.html            |   0
 .../{ => websites}/patterns/icons/icons.html  |   0
 .../{ => websites}/patterns/icons/icons.yml   |   0
 .../{ => websites}/patterns/icons/layout.html |   0
 .../image-overlays/image-overlays.html        |   0
 .../image-overlays/image-overlays.yml         |   0
 .../patterns/image-overlays/layout.html       |   0
 .../image-shortcuts/image-shortcuts.html      |   0
 .../image-shortcuts/image-shortcuts.yml       |   0
 .../patterns/image-shortcuts/layout.html      |   0
 .../patterns/images/images.html               |   0
 .../{ => websites}/patterns/images/images.yml |   0
 .../patterns/images/layout.html               |   0
 .../patterns/intro-unit/intro-unit.html       |   0
 .../patterns/intro-unit/intro-unit.yml        |   0
 .../patterns/intro-unit/layout.html           |   0
 .../patterns/labels/labels.html               |   0
 .../{ => websites}/patterns/labels/labels.yml |   0
 .../patterns/labels/layout.html               |   0
 .../patterns/lists-pulse/layout.html          |   0
 .../patterns/lists-pulse/lists-pulse.html     |   0
 .../patterns/lists-pulse/lists-pulse.yml      |   0
 .../{ => websites}/patterns/lists/layout.html |   0
 .../{ => websites}/patterns/lists/lists.html  |   0
 .../{ => websites}/patterns/lists/lists.yml   |   0
 .../patterns/live-filter/layout.html          |   0
 .../patterns/live-filter/live-filter.html     |   0
 .../patterns/live-filter/live-filter.js       |   0
 .../patterns/live-filter/live-filter.yml      |   0
 .../{ => websites}/patterns/menu/layout.html  |   0
 .../{ => websites}/patterns/menu/menu.html    |   0
 content/{ => websites}/patterns/menu/menu.yml |   0
 .../patterns/meta-copy/layout.html            |   0
 .../patterns/meta-copy/meta-copy.html         |   0
 .../patterns/meta-copy/meta-copy.yml          |   0
 .../patterns/pullquotes/layout.html           |   0
 .../patterns/pullquotes/pullquotes.html       |   0
 .../patterns/pullquotes/pullquotes.yml        |   0
 .../patterns/related-links/layout.html        |   0
 .../patterns/related-links/related-links.html |   0
 .../patterns/related-links/related-links.yml  |   0
 .../patterns/search/layout.html               |   0
 .../patterns/search/search.html               |   0
 .../{ => websites}/patterns/search/search.yml |   0
 .../patterns/select-box/layout.html           |   0
 .../patterns/select-box/select-box.html       |   0
 .../patterns/select-box/select-box.js         |   0
 .../patterns/select-box/select-box.yml        |   0
 .../patterns/spacing/layout.html              |   0
 .../patterns/spacing/spacing.html             |   0
 .../patterns/spacing/spacing.yml              |   0
 .../patterns/tables-data/layout.html          |   0
 .../patterns/tables-data/tables-data.html     |   0
 .../patterns/tables-data/tables-data.yml      |   0
 .../patterns/tables-responsive/layout.html    |   0
 .../tables-responsive/tables-responsive.html  |   0
 .../tables-responsive/tables-responsive.yml   |   0
 .../patterns/tables-sorting/layout.html       |   0
 .../tables-sorting/tables-sorting.html        |   0
 .../patterns/tables-sorting/tables-sorting.js |   0
 .../tables-sorting/tables-sorting.yml         |   0
 .../patterns/tables/layout.html               |   0
 .../patterns/tables/tables.html               |   0
 .../{ => websites}/patterns/tables/tables.yml |   0
 .../{ => websites}/patterns/tabs/layout.html  |   0
 .../{ => websites}/patterns/tabs/tabs.html    |   0
 content/{ => websites}/patterns/tabs/tabs.yml |   0
 .../{ => websites}/patterns/tags/layout.html  |   0
 .../{ => websites}/patterns/tags/tags.html    |   0
 content/{ => websites}/patterns/tags/tags.yml |   0
 .../patterns/template/layout.html             |   0
 .../patterns/template/template.html           |   0
 .../patterns/template/template.yml            |   0
 .../patterns/update-feed/layout.html          |   0
 .../patterns/update-feed/update-feed.html     |   0
 .../patterns/update-feed/update-feed.js       |   0
 .../patterns/update-feed/update-feed.png      | Bin
 .../patterns/update-feed/update-feed.scss     |   0
 .../patterns/update-feed/update-feed.yml      |   0
 gulpfile.babel.js                             |  57 ++++++++++++++----
 128 files changed, 51 insertions(+), 20 deletions(-)
 rename {assets_site/pages => content/websites}/meta-patterns/accessibility.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/analytics.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/browser-compatibility.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/forms.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/helper-classes.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/masthead-compact.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/page-structure.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/sample-pages.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/screen-sizes.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/search-ebi-indexing.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/search-guidelines.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/search-seo.html (100%)
 rename {assets_site/pages => content/websites}/meta-patterns/usability.html (100%)
 rename content/{ => websites}/patterns/animation/animation.html (100%)
 rename content/{ => websites}/patterns/animation/animation.yml (100%)
 rename content/{ => websites}/patterns/animation/layout.html (100%)
 rename content/{ => websites}/patterns/app-float.scss (100%)
 rename content/{ => websites}/patterns/app.scss (100%)
 rename content/{ => websites}/patterns/badges/badges.html (100%)
 rename content/{ => websites}/patterns/badges/badges.png (100%)
 rename content/{ => websites}/patterns/badges/badges.yml (100%)
 rename content/{ => websites}/patterns/badges/layout.html (100%)
 rename content/{ => websites}/patterns/button-grid/button-grid.html (100%)
 rename content/{ => websites}/patterns/button-grid/button-grid.yml (100%)
 rename content/{ => websites}/patterns/button-grid/layout.html (100%)
 rename content/{ => websites}/patterns/code-highlighting/code-highlighting.html (100%)
 rename content/{ => websites}/patterns/code-highlighting/code-highlighting.yml (100%)
 rename content/{ => websites}/patterns/code-highlighting/layout.html (100%)
 rename content/{ => websites}/patterns/colors/colors.html (100%)
 rename content/{ => websites}/patterns/colors/colors.png (100%)
 rename content/{ => websites}/patterns/colors/colors.yml (100%)
 rename content/{ => websites}/patterns/colors/layout.html (100%)
 rename content/{ => websites}/patterns/favicons/favicons.html (100%)
 rename content/{ => websites}/patterns/favicons/favicons.yml (100%)
 rename content/{ => websites}/patterns/favicons/layout.html (100%)
 rename content/{ => websites}/patterns/formatting/formatting.html (100%)
 rename content/{ => websites}/patterns/formatting/formatting.yml (100%)
 rename content/{ => websites}/patterns/formatting/layout.html (100%)
 rename content/{ => websites}/patterns/grid/grid.html (100%)
 rename content/{ => websites}/patterns/grid/grid.yml (100%)
 rename content/{ => websites}/patterns/grid/layout.html (100%)
 rename content/{ => websites}/patterns/headlines/headlines.html (100%)
 rename content/{ => websites}/patterns/headlines/headlines.yml (100%)
 rename content/{ => websites}/patterns/headlines/layout.html (100%)
 rename content/{ => websites}/patterns/icons/icons.html (100%)
 rename content/{ => websites}/patterns/icons/icons.yml (100%)
 rename content/{ => websites}/patterns/icons/layout.html (100%)
 rename content/{ => websites}/patterns/image-overlays/image-overlays.html (100%)
 rename content/{ => websites}/patterns/image-overlays/image-overlays.yml (100%)
 rename content/{ => websites}/patterns/image-overlays/layout.html (100%)
 rename content/{ => websites}/patterns/image-shortcuts/image-shortcuts.html (100%)
 rename content/{ => websites}/patterns/image-shortcuts/image-shortcuts.yml (100%)
 rename content/{ => websites}/patterns/image-shortcuts/layout.html (100%)
 rename content/{ => websites}/patterns/images/images.html (100%)
 rename content/{ => websites}/patterns/images/images.yml (100%)
 rename content/{ => websites}/patterns/images/layout.html (100%)
 rename content/{ => websites}/patterns/intro-unit/intro-unit.html (100%)
 rename content/{ => websites}/patterns/intro-unit/intro-unit.yml (100%)
 rename content/{ => websites}/patterns/intro-unit/layout.html (100%)
 rename content/{ => websites}/patterns/labels/labels.html (100%)
 rename content/{ => websites}/patterns/labels/labels.yml (100%)
 rename content/{ => websites}/patterns/labels/layout.html (100%)
 rename content/{ => websites}/patterns/lists-pulse/layout.html (100%)
 rename content/{ => websites}/patterns/lists-pulse/lists-pulse.html (100%)
 rename content/{ => websites}/patterns/lists-pulse/lists-pulse.yml (100%)
 rename content/{ => websites}/patterns/lists/layout.html (100%)
 rename content/{ => websites}/patterns/lists/lists.html (100%)
 rename content/{ => websites}/patterns/lists/lists.yml (100%)
 rename content/{ => websites}/patterns/live-filter/layout.html (100%)
 rename content/{ => websites}/patterns/live-filter/live-filter.html (100%)
 rename content/{ => websites}/patterns/live-filter/live-filter.js (100%)
 rename content/{ => websites}/patterns/live-filter/live-filter.yml (100%)
 rename content/{ => websites}/patterns/menu/layout.html (100%)
 rename content/{ => websites}/patterns/menu/menu.html (100%)
 rename content/{ => websites}/patterns/menu/menu.yml (100%)
 rename content/{ => websites}/patterns/meta-copy/layout.html (100%)
 rename content/{ => websites}/patterns/meta-copy/meta-copy.html (100%)
 rename content/{ => websites}/patterns/meta-copy/meta-copy.yml (100%)
 rename content/{ => websites}/patterns/pullquotes/layout.html (100%)
 rename content/{ => websites}/patterns/pullquotes/pullquotes.html (100%)
 rename content/{ => websites}/patterns/pullquotes/pullquotes.yml (100%)
 rename content/{ => websites}/patterns/related-links/layout.html (100%)
 rename content/{ => websites}/patterns/related-links/related-links.html (100%)
 rename content/{ => websites}/patterns/related-links/related-links.yml (100%)
 rename content/{ => websites}/patterns/search/layout.html (100%)
 rename content/{ => websites}/patterns/search/search.html (100%)
 rename content/{ => websites}/patterns/search/search.yml (100%)
 rename content/{ => websites}/patterns/select-box/layout.html (100%)
 rename content/{ => websites}/patterns/select-box/select-box.html (100%)
 rename content/{ => websites}/patterns/select-box/select-box.js (100%)
 rename content/{ => websites}/patterns/select-box/select-box.yml (100%)
 rename content/{ => websites}/patterns/spacing/layout.html (100%)
 rename content/{ => websites}/patterns/spacing/spacing.html (100%)
 rename content/{ => websites}/patterns/spacing/spacing.yml (100%)
 rename content/{ => websites}/patterns/tables-data/layout.html (100%)
 rename content/{ => websites}/patterns/tables-data/tables-data.html (100%)
 rename content/{ => websites}/patterns/tables-data/tables-data.yml (100%)
 rename content/{ => websites}/patterns/tables-responsive/layout.html (100%)
 rename content/{ => websites}/patterns/tables-responsive/tables-responsive.html (100%)
 rename content/{ => websites}/patterns/tables-responsive/tables-responsive.yml (100%)
 rename content/{ => websites}/patterns/tables-sorting/layout.html (100%)
 rename content/{ => websites}/patterns/tables-sorting/tables-sorting.html (100%)
 rename content/{ => websites}/patterns/tables-sorting/tables-sorting.js (100%)
 rename content/{ => websites}/patterns/tables-sorting/tables-sorting.yml (100%)
 rename content/{ => websites}/patterns/tables/layout.html (100%)
 rename content/{ => websites}/patterns/tables/tables.html (100%)
 rename content/{ => websites}/patterns/tables/tables.yml (100%)
 rename content/{ => websites}/patterns/tabs/layout.html (100%)
 rename content/{ => websites}/patterns/tabs/tabs.html (100%)
 rename content/{ => websites}/patterns/tabs/tabs.yml (100%)
 rename content/{ => websites}/patterns/tags/layout.html (100%)
 rename content/{ => websites}/patterns/tags/tags.html (100%)
 rename content/{ => websites}/patterns/tags/tags.yml (100%)
 rename content/{ => websites}/patterns/template/layout.html (100%)
 rename content/{ => websites}/patterns/template/template.html (100%)
 rename content/{ => websites}/patterns/template/template.yml (100%)
 rename content/{ => websites}/patterns/update-feed/layout.html (100%)
 rename content/{ => websites}/patterns/update-feed/update-feed.html (100%)
 rename content/{ => websites}/patterns/update-feed/update-feed.js (100%)
 rename content/{ => websites}/patterns/update-feed/update-feed.png (100%)
 rename content/{ => websites}/patterns/update-feed/update-feed.scss (100%)
 rename content/{ => websites}/patterns/update-feed/update-feed.yml (100%)

diff --git a/assets_build/gulp/tasks/meta.js b/assets_build/gulp/tasks/meta.js
index e8a5732..cf5f580 100644
--- a/assets_build/gulp/tasks/meta.js
+++ b/assets_build/gulp/tasks/meta.js
@@ -19,7 +19,7 @@ function loadConfig() {
 }
 
 function buildingBlockCombineMeta() {
-  return gulp.src('content/patterns/**/*.{yml,yaml}')
+  return gulp.src('content/websites/patterns/**/*.{yml,yaml}')
     .pipe($.yaml())
     .pipe($.jsoncombine('building-blocks.json', function(files) {
       var output = {};
@@ -155,7 +155,7 @@ gulp.task('add-git-meta', function() {
     var output = {};
     var dateRegex = /Date:\s+(.*)/;
     async.eachOf(data['building-blocks'], (value, key, callback) => {
-      var filename = 'content/patterns/' + key + '/' + key + '.yml';
+      var filename = 'content/websites/patterns/' + key + '/' + key + '.yml';
       $.git.exec({args: 'log -n 1 ' + filename}, function(err, stdout) {
         if (err) throw err;
         output[key] = value;
diff --git a/assets_build/gulp/tasks/pages.js b/assets_build/gulp/tasks/pages.js
index fcf847d..725fa84 100644
--- a/assets_build/gulp/tasks/pages.js
+++ b/assets_build/gulp/tasks/pages.js
@@ -62,7 +62,7 @@ function defaultTemplate(filename, blockname) {
 
 // Create building block layouts
 function buildingBlockFrameLayouts() {
-  return gulp.src(['content/patterns/*', '!content/patterns/*.scss'])
+  return gulp.src(['content/websites/patterns/*', '!content/websites/patterns/*.scss'])
   .pipe($.foreach(function(stream, file) {
     var fileName = file.path.substr(file.path.lastIndexOf(path.sep) + 1);
       var layout = file.path + "/layout.html";
@@ -85,7 +85,7 @@ function buildingBlockIframe() {
     .pipe(getNewPanini({
       root: PATHS.build,
       layouts: 'assets_site/layouts/building-blocks/iframe/',
-      partials: 'content/patterns/*',
+      partials: 'content/websites/patterns/*',
       data: ['assets_site/data/', PATHS.build + '/data'],
       helpers: 'assets_build/panini_helpers/'
     }))
diff --git a/assets_build/panini_helpers/bb-html.js b/assets_build/panini_helpers/bb-html.js
index ecf11e8..00597d5 100644
--- a/assets_build/panini_helpers/bb-html.js
+++ b/assets_build/panini_helpers/bb-html.js
@@ -3,7 +3,7 @@ module.exports = function(page) {
   if(page) {
     var baseName = page.split('.')[0]
     try {
-      return fs.readFileSync('content/patterns/' + baseName + "/" + baseName + '.html', 'utf-8');
+      return fs.readFileSync('content/websites/patterns/' + baseName + "/" + baseName + '.html', 'utf-8');
     } catch(ex) {
       return '';
     }
diff --git a/assets_build/panini_helpers/bb-js.js b/assets_build/panini_helpers/bb-js.js
index 5914a61..eda06fa 100644
--- a/assets_build/panini_helpers/bb-js.js
+++ b/assets_build/panini_helpers/bb-js.js
@@ -3,7 +3,7 @@ module.exports = function(page) {
   try {
     if(page) {
       var baseName = page.split('.')[0]
-      return fs.readFileSync('content/patterns/' + baseName + "/" + baseName + '.js', 'utf-8');
+      return fs.readFileSync('content/websites/patterns/' + baseName + "/" + baseName + '.js', 'utf-8');
     }
   }
   catch(ex) {
diff --git a/assets_build/panini_helpers/bb-scss.js b/assets_build/panini_helpers/bb-scss.js
index a7979c0..075b1b0 100644
--- a/assets_build/panini_helpers/bb-scss.js
+++ b/assets_build/panini_helpers/bb-scss.js
@@ -3,7 +3,7 @@ module.exports = function(page) {
   try {
     if(page) {
       var baseName = page.split('.')[0]
-      return fs.readFileSync('content/patterns/' + baseName + "/" + baseName + '.scss', 'utf-8');
+      return fs.readFileSync('content/websites/patterns/' + baseName + "/" + baseName + '.scss', 'utf-8');
     }
   }
   catch(ex) {
diff --git a/assets_site/pages/meta-patterns/accessibility.html b/content/websites/meta-patterns/accessibility.html
similarity index 100%
rename from assets_site/pages/meta-patterns/accessibility.html
rename to content/websites/meta-patterns/accessibility.html
diff --git a/assets_site/pages/meta-patterns/analytics.html b/content/websites/meta-patterns/analytics.html
similarity index 100%
rename from assets_site/pages/meta-patterns/analytics.html
rename to content/websites/meta-patterns/analytics.html
diff --git a/assets_site/pages/meta-patterns/browser-compatibility.html b/content/websites/meta-patterns/browser-compatibility.html
similarity index 100%
rename from assets_site/pages/meta-patterns/browser-compatibility.html
rename to content/websites/meta-patterns/browser-compatibility.html
diff --git a/assets_site/pages/meta-patterns/forms.html b/content/websites/meta-patterns/forms.html
similarity index 100%
rename from assets_site/pages/meta-patterns/forms.html
rename to content/websites/meta-patterns/forms.html
diff --git a/assets_site/pages/meta-patterns/helper-classes.html b/content/websites/meta-patterns/helper-classes.html
similarity index 100%
rename from assets_site/pages/meta-patterns/helper-classes.html
rename to content/websites/meta-patterns/helper-classes.html
diff --git a/assets_site/pages/meta-patterns/masthead-compact.html b/content/websites/meta-patterns/masthead-compact.html
similarity index 100%
rename from assets_site/pages/meta-patterns/masthead-compact.html
rename to content/websites/meta-patterns/masthead-compact.html
diff --git a/assets_site/pages/meta-patterns/page-structure.html b/content/websites/meta-patterns/page-structure.html
similarity index 100%
rename from assets_site/pages/meta-patterns/page-structure.html
rename to content/websites/meta-patterns/page-structure.html
diff --git a/assets_site/pages/meta-patterns/sample-pages.html b/content/websites/meta-patterns/sample-pages.html
similarity index 100%
rename from assets_site/pages/meta-patterns/sample-pages.html
rename to content/websites/meta-patterns/sample-pages.html
diff --git a/assets_site/pages/meta-patterns/screen-sizes.html b/content/websites/meta-patterns/screen-sizes.html
similarity index 100%
rename from assets_site/pages/meta-patterns/screen-sizes.html
rename to content/websites/meta-patterns/screen-sizes.html
diff --git a/assets_site/pages/meta-patterns/search-ebi-indexing.html b/content/websites/meta-patterns/search-ebi-indexing.html
similarity index 100%
rename from assets_site/pages/meta-patterns/search-ebi-indexing.html
rename to content/websites/meta-patterns/search-ebi-indexing.html
diff --git a/assets_site/pages/meta-patterns/search-guidelines.html b/content/websites/meta-patterns/search-guidelines.html
similarity index 100%
rename from assets_site/pages/meta-patterns/search-guidelines.html
rename to content/websites/meta-patterns/search-guidelines.html
diff --git a/assets_site/pages/meta-patterns/search-seo.html b/content/websites/meta-patterns/search-seo.html
similarity index 100%
rename from assets_site/pages/meta-patterns/search-seo.html
rename to content/websites/meta-patterns/search-seo.html
diff --git a/assets_site/pages/meta-patterns/usability.html b/content/websites/meta-patterns/usability.html
similarity index 100%
rename from assets_site/pages/meta-patterns/usability.html
rename to content/websites/meta-patterns/usability.html
diff --git a/content/patterns/animation/animation.html b/content/websites/patterns/animation/animation.html
similarity index 100%
rename from content/patterns/animation/animation.html
rename to content/websites/patterns/animation/animation.html
diff --git a/content/patterns/animation/animation.yml b/content/websites/patterns/animation/animation.yml
similarity index 100%
rename from content/patterns/animation/animation.yml
rename to content/websites/patterns/animation/animation.yml
diff --git a/content/patterns/animation/layout.html b/content/websites/patterns/animation/layout.html
similarity index 100%
rename from content/patterns/animation/layout.html
rename to content/websites/patterns/animation/layout.html
diff --git a/content/patterns/app-float.scss b/content/websites/patterns/app-float.scss
similarity index 100%
rename from content/patterns/app-float.scss
rename to content/websites/patterns/app-float.scss
diff --git a/content/patterns/app.scss b/content/websites/patterns/app.scss
similarity index 100%
rename from content/patterns/app.scss
rename to content/websites/patterns/app.scss
diff --git a/content/patterns/badges/badges.html b/content/websites/patterns/badges/badges.html
similarity index 100%
rename from content/patterns/badges/badges.html
rename to content/websites/patterns/badges/badges.html
diff --git a/content/patterns/badges/badges.png b/content/websites/patterns/badges/badges.png
similarity index 100%
rename from content/patterns/badges/badges.png
rename to content/websites/patterns/badges/badges.png
diff --git a/content/patterns/badges/badges.yml b/content/websites/patterns/badges/badges.yml
similarity index 100%
rename from content/patterns/badges/badges.yml
rename to content/websites/patterns/badges/badges.yml
diff --git a/content/patterns/badges/layout.html b/content/websites/patterns/badges/layout.html
similarity index 100%
rename from content/patterns/badges/layout.html
rename to content/websites/patterns/badges/layout.html
diff --git a/content/patterns/button-grid/button-grid.html b/content/websites/patterns/button-grid/button-grid.html
similarity index 100%
rename from content/patterns/button-grid/button-grid.html
rename to content/websites/patterns/button-grid/button-grid.html
diff --git a/content/patterns/button-grid/button-grid.yml b/content/websites/patterns/button-grid/button-grid.yml
similarity index 100%
rename from content/patterns/button-grid/button-grid.yml
rename to content/websites/patterns/button-grid/button-grid.yml
diff --git a/content/patterns/button-grid/layout.html b/content/websites/patterns/button-grid/layout.html
similarity index 100%
rename from content/patterns/button-grid/layout.html
rename to content/websites/patterns/button-grid/layout.html
diff --git a/content/patterns/code-highlighting/code-highlighting.html b/content/websites/patterns/code-highlighting/code-highlighting.html
similarity index 100%
rename from content/patterns/code-highlighting/code-highlighting.html
rename to content/websites/patterns/code-highlighting/code-highlighting.html
diff --git a/content/patterns/code-highlighting/code-highlighting.yml b/content/websites/patterns/code-highlighting/code-highlighting.yml
similarity index 100%
rename from content/patterns/code-highlighting/code-highlighting.yml
rename to content/websites/patterns/code-highlighting/code-highlighting.yml
diff --git a/content/patterns/code-highlighting/layout.html b/content/websites/patterns/code-highlighting/layout.html
similarity index 100%
rename from content/patterns/code-highlighting/layout.html
rename to content/websites/patterns/code-highlighting/layout.html
diff --git a/content/patterns/colors/colors.html b/content/websites/patterns/colors/colors.html
similarity index 100%
rename from content/patterns/colors/colors.html
rename to content/websites/patterns/colors/colors.html
diff --git a/content/patterns/colors/colors.png b/content/websites/patterns/colors/colors.png
similarity index 100%
rename from content/patterns/colors/colors.png
rename to content/websites/patterns/colors/colors.png
diff --git a/content/patterns/colors/colors.yml b/content/websites/patterns/colors/colors.yml
similarity index 100%
rename from content/patterns/colors/colors.yml
rename to content/websites/patterns/colors/colors.yml
diff --git a/content/patterns/colors/layout.html b/content/websites/patterns/colors/layout.html
similarity index 100%
rename from content/patterns/colors/layout.html
rename to content/websites/patterns/colors/layout.html
diff --git a/content/patterns/favicons/favicons.html b/content/websites/patterns/favicons/favicons.html
similarity index 100%
rename from content/patterns/favicons/favicons.html
rename to content/websites/patterns/favicons/favicons.html
diff --git a/content/patterns/favicons/favicons.yml b/content/websites/patterns/favicons/favicons.yml
similarity index 100%
rename from content/patterns/favicons/favicons.yml
rename to content/websites/patterns/favicons/favicons.yml
diff --git a/content/patterns/favicons/layout.html b/content/websites/patterns/favicons/layout.html
similarity index 100%
rename from content/patterns/favicons/layout.html
rename to content/websites/patterns/favicons/layout.html
diff --git a/content/patterns/formatting/formatting.html b/content/websites/patterns/formatting/formatting.html
similarity index 100%
rename from content/patterns/formatting/formatting.html
rename to content/websites/patterns/formatting/formatting.html
diff --git a/content/patterns/formatting/formatting.yml b/content/websites/patterns/formatting/formatting.yml
similarity index 100%
rename from content/patterns/formatting/formatting.yml
rename to content/websites/patterns/formatting/formatting.yml
diff --git a/content/patterns/formatting/layout.html b/content/websites/patterns/formatting/layout.html
similarity index 100%
rename from content/patterns/formatting/layout.html
rename to content/websites/patterns/formatting/layout.html
diff --git a/content/patterns/grid/grid.html b/content/websites/patterns/grid/grid.html
similarity index 100%
rename from content/patterns/grid/grid.html
rename to content/websites/patterns/grid/grid.html
diff --git a/content/patterns/grid/grid.yml b/content/websites/patterns/grid/grid.yml
similarity index 100%
rename from content/patterns/grid/grid.yml
rename to content/websites/patterns/grid/grid.yml
diff --git a/content/patterns/grid/layout.html b/content/websites/patterns/grid/layout.html
similarity index 100%
rename from content/patterns/grid/layout.html
rename to content/websites/patterns/grid/layout.html
diff --git a/content/patterns/headlines/headlines.html b/content/websites/patterns/headlines/headlines.html
similarity index 100%
rename from content/patterns/headlines/headlines.html
rename to content/websites/patterns/headlines/headlines.html
diff --git a/content/patterns/headlines/headlines.yml b/content/websites/patterns/headlines/headlines.yml
similarity index 100%
rename from content/patterns/headlines/headlines.yml
rename to content/websites/patterns/headlines/headlines.yml
diff --git a/content/patterns/headlines/layout.html b/content/websites/patterns/headlines/layout.html
similarity index 100%
rename from content/patterns/headlines/layout.html
rename to content/websites/patterns/headlines/layout.html
diff --git a/content/patterns/icons/icons.html b/content/websites/patterns/icons/icons.html
similarity index 100%
rename from content/patterns/icons/icons.html
rename to content/websites/patterns/icons/icons.html
diff --git a/content/patterns/icons/icons.yml b/content/websites/patterns/icons/icons.yml
similarity index 100%
rename from content/patterns/icons/icons.yml
rename to content/websites/patterns/icons/icons.yml
diff --git a/content/patterns/icons/layout.html b/content/websites/patterns/icons/layout.html
similarity index 100%
rename from content/patterns/icons/layout.html
rename to content/websites/patterns/icons/layout.html
diff --git a/content/patterns/image-overlays/image-overlays.html b/content/websites/patterns/image-overlays/image-overlays.html
similarity index 100%
rename from content/patterns/image-overlays/image-overlays.html
rename to content/websites/patterns/image-overlays/image-overlays.html
diff --git a/content/patterns/image-overlays/image-overlays.yml b/content/websites/patterns/image-overlays/image-overlays.yml
similarity index 100%
rename from content/patterns/image-overlays/image-overlays.yml
rename to content/websites/patterns/image-overlays/image-overlays.yml
diff --git a/content/patterns/image-overlays/layout.html b/content/websites/patterns/image-overlays/layout.html
similarity index 100%
rename from content/patterns/image-overlays/layout.html
rename to content/websites/patterns/image-overlays/layout.html
diff --git a/content/patterns/image-shortcuts/image-shortcuts.html b/content/websites/patterns/image-shortcuts/image-shortcuts.html
similarity index 100%
rename from content/patterns/image-shortcuts/image-shortcuts.html
rename to content/websites/patterns/image-shortcuts/image-shortcuts.html
diff --git a/content/patterns/image-shortcuts/image-shortcuts.yml b/content/websites/patterns/image-shortcuts/image-shortcuts.yml
similarity index 100%
rename from content/patterns/image-shortcuts/image-shortcuts.yml
rename to content/websites/patterns/image-shortcuts/image-shortcuts.yml
diff --git a/content/patterns/image-shortcuts/layout.html b/content/websites/patterns/image-shortcuts/layout.html
similarity index 100%
rename from content/patterns/image-shortcuts/layout.html
rename to content/websites/patterns/image-shortcuts/layout.html
diff --git a/content/patterns/images/images.html b/content/websites/patterns/images/images.html
similarity index 100%
rename from content/patterns/images/images.html
rename to content/websites/patterns/images/images.html
diff --git a/content/patterns/images/images.yml b/content/websites/patterns/images/images.yml
similarity index 100%
rename from content/patterns/images/images.yml
rename to content/websites/patterns/images/images.yml
diff --git a/content/patterns/images/layout.html b/content/websites/patterns/images/layout.html
similarity index 100%
rename from content/patterns/images/layout.html
rename to content/websites/patterns/images/layout.html
diff --git a/content/patterns/intro-unit/intro-unit.html b/content/websites/patterns/intro-unit/intro-unit.html
similarity index 100%
rename from content/patterns/intro-unit/intro-unit.html
rename to content/websites/patterns/intro-unit/intro-unit.html
diff --git a/content/patterns/intro-unit/intro-unit.yml b/content/websites/patterns/intro-unit/intro-unit.yml
similarity index 100%
rename from content/patterns/intro-unit/intro-unit.yml
rename to content/websites/patterns/intro-unit/intro-unit.yml
diff --git a/content/patterns/intro-unit/layout.html b/content/websites/patterns/intro-unit/layout.html
similarity index 100%
rename from content/patterns/intro-unit/layout.html
rename to content/websites/patterns/intro-unit/layout.html
diff --git a/content/patterns/labels/labels.html b/content/websites/patterns/labels/labels.html
similarity index 100%
rename from content/patterns/labels/labels.html
rename to content/websites/patterns/labels/labels.html
diff --git a/content/patterns/labels/labels.yml b/content/websites/patterns/labels/labels.yml
similarity index 100%
rename from content/patterns/labels/labels.yml
rename to content/websites/patterns/labels/labels.yml
diff --git a/content/patterns/labels/layout.html b/content/websites/patterns/labels/layout.html
similarity index 100%
rename from content/patterns/labels/layout.html
rename to content/websites/patterns/labels/layout.html
diff --git a/content/patterns/lists-pulse/layout.html b/content/websites/patterns/lists-pulse/layout.html
similarity index 100%
rename from content/patterns/lists-pulse/layout.html
rename to content/websites/patterns/lists-pulse/layout.html
diff --git a/content/patterns/lists-pulse/lists-pulse.html b/content/websites/patterns/lists-pulse/lists-pulse.html
similarity index 100%
rename from content/patterns/lists-pulse/lists-pulse.html
rename to content/websites/patterns/lists-pulse/lists-pulse.html
diff --git a/content/patterns/lists-pulse/lists-pulse.yml b/content/websites/patterns/lists-pulse/lists-pulse.yml
similarity index 100%
rename from content/patterns/lists-pulse/lists-pulse.yml
rename to content/websites/patterns/lists-pulse/lists-pulse.yml
diff --git a/content/patterns/lists/layout.html b/content/websites/patterns/lists/layout.html
similarity index 100%
rename from content/patterns/lists/layout.html
rename to content/websites/patterns/lists/layout.html
diff --git a/content/patterns/lists/lists.html b/content/websites/patterns/lists/lists.html
similarity index 100%
rename from content/patterns/lists/lists.html
rename to content/websites/patterns/lists/lists.html
diff --git a/content/patterns/lists/lists.yml b/content/websites/patterns/lists/lists.yml
similarity index 100%
rename from content/patterns/lists/lists.yml
rename to content/websites/patterns/lists/lists.yml
diff --git a/content/patterns/live-filter/layout.html b/content/websites/patterns/live-filter/layout.html
similarity index 100%
rename from content/patterns/live-filter/layout.html
rename to content/websites/patterns/live-filter/layout.html
diff --git a/content/patterns/live-filter/live-filter.html b/content/websites/patterns/live-filter/live-filter.html
similarity index 100%
rename from content/patterns/live-filter/live-filter.html
rename to content/websites/patterns/live-filter/live-filter.html
diff --git a/content/patterns/live-filter/live-filter.js b/content/websites/patterns/live-filter/live-filter.js
similarity index 100%
rename from content/patterns/live-filter/live-filter.js
rename to content/websites/patterns/live-filter/live-filter.js
diff --git a/content/patterns/live-filter/live-filter.yml b/content/websites/patterns/live-filter/live-filter.yml
similarity index 100%
rename from content/patterns/live-filter/live-filter.yml
rename to content/websites/patterns/live-filter/live-filter.yml
diff --git a/content/patterns/menu/layout.html b/content/websites/patterns/menu/layout.html
similarity index 100%
rename from content/patterns/menu/layout.html
rename to content/websites/patterns/menu/layout.html
diff --git a/content/patterns/menu/menu.html b/content/websites/patterns/menu/menu.html
similarity index 100%
rename from content/patterns/menu/menu.html
rename to content/websites/patterns/menu/menu.html
diff --git a/content/patterns/menu/menu.yml b/content/websites/patterns/menu/menu.yml
similarity index 100%
rename from content/patterns/menu/menu.yml
rename to content/websites/patterns/menu/menu.yml
diff --git a/content/patterns/meta-copy/layout.html b/content/websites/patterns/meta-copy/layout.html
similarity index 100%
rename from content/patterns/meta-copy/layout.html
rename to content/websites/patterns/meta-copy/layout.html
diff --git a/content/patterns/meta-copy/meta-copy.html b/content/websites/patterns/meta-copy/meta-copy.html
similarity index 100%
rename from content/patterns/meta-copy/meta-copy.html
rename to content/websites/patterns/meta-copy/meta-copy.html
diff --git a/content/patterns/meta-copy/meta-copy.yml b/content/websites/patterns/meta-copy/meta-copy.yml
similarity index 100%
rename from content/patterns/meta-copy/meta-copy.yml
rename to content/websites/patterns/meta-copy/meta-copy.yml
diff --git a/content/patterns/pullquotes/layout.html b/content/websites/patterns/pullquotes/layout.html
similarity index 100%
rename from content/patterns/pullquotes/layout.html
rename to content/websites/patterns/pullquotes/layout.html
diff --git a/content/patterns/pullquotes/pullquotes.html b/content/websites/patterns/pullquotes/pullquotes.html
similarity index 100%
rename from content/patterns/pullquotes/pullquotes.html
rename to content/websites/patterns/pullquotes/pullquotes.html
diff --git a/content/patterns/pullquotes/pullquotes.yml b/content/websites/patterns/pullquotes/pullquotes.yml
similarity index 100%
rename from content/patterns/pullquotes/pullquotes.yml
rename to content/websites/patterns/pullquotes/pullquotes.yml
diff --git a/content/patterns/related-links/layout.html b/content/websites/patterns/related-links/layout.html
similarity index 100%
rename from content/patterns/related-links/layout.html
rename to content/websites/patterns/related-links/layout.html
diff --git a/content/patterns/related-links/related-links.html b/content/websites/patterns/related-links/related-links.html
similarity index 100%
rename from content/patterns/related-links/related-links.html
rename to content/websites/patterns/related-links/related-links.html
diff --git a/content/patterns/related-links/related-links.yml b/content/websites/patterns/related-links/related-links.yml
similarity index 100%
rename from content/patterns/related-links/related-links.yml
rename to content/websites/patterns/related-links/related-links.yml
diff --git a/content/patterns/search/layout.html b/content/websites/patterns/search/layout.html
similarity index 100%
rename from content/patterns/search/layout.html
rename to content/websites/patterns/search/layout.html
diff --git a/content/patterns/search/search.html b/content/websites/patterns/search/search.html
similarity index 100%
rename from content/patterns/search/search.html
rename to content/websites/patterns/search/search.html
diff --git a/content/patterns/search/search.yml b/content/websites/patterns/search/search.yml
similarity index 100%
rename from content/patterns/search/search.yml
rename to content/websites/patterns/search/search.yml
diff --git a/content/patterns/select-box/layout.html b/content/websites/patterns/select-box/layout.html
similarity index 100%
rename from content/patterns/select-box/layout.html
rename to content/websites/patterns/select-box/layout.html
diff --git a/content/patterns/select-box/select-box.html b/content/websites/patterns/select-box/select-box.html
similarity index 100%
rename from content/patterns/select-box/select-box.html
rename to content/websites/patterns/select-box/select-box.html
diff --git a/content/patterns/select-box/select-box.js b/content/websites/patterns/select-box/select-box.js
similarity index 100%
rename from content/patterns/select-box/select-box.js
rename to content/websites/patterns/select-box/select-box.js
diff --git a/content/patterns/select-box/select-box.yml b/content/websites/patterns/select-box/select-box.yml
similarity index 100%
rename from content/patterns/select-box/select-box.yml
rename to content/websites/patterns/select-box/select-box.yml
diff --git a/content/patterns/spacing/layout.html b/content/websites/patterns/spacing/layout.html
similarity index 100%
rename from content/patterns/spacing/layout.html
rename to content/websites/patterns/spacing/layout.html
diff --git a/content/patterns/spacing/spacing.html b/content/websites/patterns/spacing/spacing.html
similarity index 100%
rename from content/patterns/spacing/spacing.html
rename to content/websites/patterns/spacing/spacing.html
diff --git a/content/patterns/spacing/spacing.yml b/content/websites/patterns/spacing/spacing.yml
similarity index 100%
rename from content/patterns/spacing/spacing.yml
rename to content/websites/patterns/spacing/spacing.yml
diff --git a/content/patterns/tables-data/layout.html b/content/websites/patterns/tables-data/layout.html
similarity index 100%
rename from content/patterns/tables-data/layout.html
rename to content/websites/patterns/tables-data/layout.html
diff --git a/content/patterns/tables-data/tables-data.html b/content/websites/patterns/tables-data/tables-data.html
similarity index 100%
rename from content/patterns/tables-data/tables-data.html
rename to content/websites/patterns/tables-data/tables-data.html
diff --git a/content/patterns/tables-data/tables-data.yml b/content/websites/patterns/tables-data/tables-data.yml
similarity index 100%
rename from content/patterns/tables-data/tables-data.yml
rename to content/websites/patterns/tables-data/tables-data.yml
diff --git a/content/patterns/tables-responsive/layout.html b/content/websites/patterns/tables-responsive/layout.html
similarity index 100%
rename from content/patterns/tables-responsive/layout.html
rename to content/websites/patterns/tables-responsive/layout.html
diff --git a/content/patterns/tables-responsive/tables-responsive.html b/content/websites/patterns/tables-responsive/tables-responsive.html
similarity index 100%
rename from content/patterns/tables-responsive/tables-responsive.html
rename to content/websites/patterns/tables-responsive/tables-responsive.html
diff --git a/content/patterns/tables-responsive/tables-responsive.yml b/content/websites/patterns/tables-responsive/tables-responsive.yml
similarity index 100%
rename from content/patterns/tables-responsive/tables-responsive.yml
rename to content/websites/patterns/tables-responsive/tables-responsive.yml
diff --git a/content/patterns/tables-sorting/layout.html b/content/websites/patterns/tables-sorting/layout.html
similarity index 100%
rename from content/patterns/tables-sorting/layout.html
rename to content/websites/patterns/tables-sorting/layout.html
diff --git a/content/patterns/tables-sorting/tables-sorting.html b/content/websites/patterns/tables-sorting/tables-sorting.html
similarity index 100%
rename from content/patterns/tables-sorting/tables-sorting.html
rename to content/websites/patterns/tables-sorting/tables-sorting.html
diff --git a/content/patterns/tables-sorting/tables-sorting.js b/content/websites/patterns/tables-sorting/tables-sorting.js
similarity index 100%
rename from content/patterns/tables-sorting/tables-sorting.js
rename to content/websites/patterns/tables-sorting/tables-sorting.js
diff --git a/content/patterns/tables-sorting/tables-sorting.yml b/content/websites/patterns/tables-sorting/tables-sorting.yml
similarity index 100%
rename from content/patterns/tables-sorting/tables-sorting.yml
rename to content/websites/patterns/tables-sorting/tables-sorting.yml
diff --git a/content/patterns/tables/layout.html b/content/websites/patterns/tables/layout.html
similarity index 100%
rename from content/patterns/tables/layout.html
rename to content/websites/patterns/tables/layout.html
diff --git a/content/patterns/tables/tables.html b/content/websites/patterns/tables/tables.html
similarity index 100%
rename from content/patterns/tables/tables.html
rename to content/websites/patterns/tables/tables.html
diff --git a/content/patterns/tables/tables.yml b/content/websites/patterns/tables/tables.yml
similarity index 100%
rename from content/patterns/tables/tables.yml
rename to content/websites/patterns/tables/tables.yml
diff --git a/content/patterns/tabs/layout.html b/content/websites/patterns/tabs/layout.html
similarity index 100%
rename from content/patterns/tabs/layout.html
rename to content/websites/patterns/tabs/layout.html
diff --git a/content/patterns/tabs/tabs.html b/content/websites/patterns/tabs/tabs.html
similarity index 100%
rename from content/patterns/tabs/tabs.html
rename to content/websites/patterns/tabs/tabs.html
diff --git a/content/patterns/tabs/tabs.yml b/content/websites/patterns/tabs/tabs.yml
similarity index 100%
rename from content/patterns/tabs/tabs.yml
rename to content/websites/patterns/tabs/tabs.yml
diff --git a/content/patterns/tags/layout.html b/content/websites/patterns/tags/layout.html
similarity index 100%
rename from content/patterns/tags/layout.html
rename to content/websites/patterns/tags/layout.html
diff --git a/content/patterns/tags/tags.html b/content/websites/patterns/tags/tags.html
similarity index 100%
rename from content/patterns/tags/tags.html
rename to content/websites/patterns/tags/tags.html
diff --git a/content/patterns/tags/tags.yml b/content/websites/patterns/tags/tags.yml
similarity index 100%
rename from content/patterns/tags/tags.yml
rename to content/websites/patterns/tags/tags.yml
diff --git a/content/patterns/template/layout.html b/content/websites/patterns/template/layout.html
similarity index 100%
rename from content/patterns/template/layout.html
rename to content/websites/patterns/template/layout.html
diff --git a/content/patterns/template/template.html b/content/websites/patterns/template/template.html
similarity index 100%
rename from content/patterns/template/template.html
rename to content/websites/patterns/template/template.html
diff --git a/content/patterns/template/template.yml b/content/websites/patterns/template/template.yml
similarity index 100%
rename from content/patterns/template/template.yml
rename to content/websites/patterns/template/template.yml
diff --git a/content/patterns/update-feed/layout.html b/content/websites/patterns/update-feed/layout.html
similarity index 100%
rename from content/patterns/update-feed/layout.html
rename to content/websites/patterns/update-feed/layout.html
diff --git a/content/patterns/update-feed/update-feed.html b/content/websites/patterns/update-feed/update-feed.html
similarity index 100%
rename from content/patterns/update-feed/update-feed.html
rename to content/websites/patterns/update-feed/update-feed.html
diff --git a/content/patterns/update-feed/update-feed.js b/content/websites/patterns/update-feed/update-feed.js
similarity index 100%
rename from content/patterns/update-feed/update-feed.js
rename to content/websites/patterns/update-feed/update-feed.js
diff --git a/content/patterns/update-feed/update-feed.png b/content/websites/patterns/update-feed/update-feed.png
similarity index 100%
rename from content/patterns/update-feed/update-feed.png
rename to content/websites/patterns/update-feed/update-feed.png
diff --git a/content/patterns/update-feed/update-feed.scss b/content/websites/patterns/update-feed/update-feed.scss
similarity index 100%
rename from content/patterns/update-feed/update-feed.scss
rename to content/websites/patterns/update-feed/update-feed.scss
diff --git a/content/patterns/update-feed/update-feed.yml b/content/websites/patterns/update-feed/update-feed.yml
similarity index 100%
rename from content/patterns/update-feed/update-feed.yml
rename to content/websites/patterns/update-feed/update-feed.yml
diff --git a/gulpfile.babel.js b/gulpfile.babel.js
index 073f823..4426d10 100644
--- a/gulpfile.babel.js
+++ b/gulpfile.babel.js
@@ -52,13 +52,13 @@ gulp.task('copy', gulp.parallel(copyAssets, copyData, copyBBImages, copyBBFiles,
 
 // Build the "dist" folder by running all of the below tasks
 gulp.task('build',
- gulp.series(clean, 'lint', gulp.parallel(pages, sass, javascript, images, copyAssets), styleGuide));
+ gulp.series(clean, 'lint', gulp.parallel(pages, metaPatternsPages, sass, javascript, images, copyAssets), styleGuide));
 
 // Build the site, run the server, and watch for file changes
 gulp.task('static',
   gulp.series('build', server, watchStatic));
 
-gulp.task('dynamic-pages', gulp.series(kitIndex, 'kits-pages', 'building-block-indices', 'building-block-pages'));
+gulp.task('dynamic-pages', gulp.series(kitIndex, 'kits-pages', metaPatterns, 'building-block-indices', 'building-block-pages'));
 
 gulp.task('bb-iframe',
   gulp.series(clean,'build','building-block-meta',  buildingBlockBaseStyles, buildingBlockSass, buildingBlockJS, 'dynamic-pages', 'copy', 'zip', sass, javascript, images));
@@ -104,7 +104,7 @@ function copyData() {
 // Copy files out of the assets folder
 // This task skips over the "img", "js", and "scss" folders, which are parsed separately
 function copyBBImages() {
-  return gulp.src('content/patterns/**/*.{png,jpg}')
+  return gulp.src('content/websites/patterns/**/*.{png,jpg}')
     .pipe(gulp.dest(PATHS.dist + '/assets/img/websites/patterns/'));
   }
 
@@ -115,7 +115,7 @@ function copyKitImages() {
 
 
 function copyBBFiles() {
-  return gulp.src(['content/patterns/**/*.{html,js,scss}', 'dist/building-blocks/**/*.css', '!dist/building-blocks/**/layout.css'])
+  return gulp.src(['content/websites/patterns/**/*.{html,js,scss}', 'dist/building-blocks/**/*.css', '!dist/building-blocks/**/layout.css'])
     .pipe(gulp.dest(PATHS.dist + '/files/building-blocks/'));
 }
 
@@ -146,10 +146,39 @@ function pages() {
       helpers: 'assets_build/panini_helpers/'
     }))
     .pipe(gulp.dest(PATHS.dist));
-  }
+}
+
+// Copy meta-patterns templates into finished HTML files
+function metaPatterns() {
+  return gulp.src('content/websites/meta-patterns/*.html')
+  .pipe(getNewPanini({
+    root: 'assets_site/pages/',
+    layouts: 'assets_site/layouts/',
+    partials: 'assets_site/partials/',
+    data: ['assets_site/data/', PATHS.build + '/data'],
+    helpers: 'assets_build/panini_helpers/'
+  }))
+  .pipe($.if(PRODUCTION, $.revTimestamp()))
+  .pipe(gulp.dest(PATHS.dist+'/websites/meta-patterns'));
+}
+
+gulp.task('meta-patterns', metaPatterns)
+
+// Copy meta-patterns templates into finished HTML files
+function metaPatternsPages() {
+  return gulp.src('content/websites/meta-patterns/*.{html,hbs,handlebars}')
+    .pipe(getNewPanini({
+      root: 'assets_site/pages/',
+      layouts: 'assets_site/layouts/',
+      partials: 'assets_site/partials/',
+      data: 'assets_site/data/',
+      helpers: 'assets_build/panini_helpers/'
+    }))
+    .pipe(gulp.dest(PATHS.dist+'/websites/meta-patterns'));
+}
 
 function buildingBlockBaseStyles() {
-  return gulp.src(['content/patterns/app.scss', 'content/patterns/app-float.scss'])
+  return gulp.src(['content/websites/patterns/app.scss', 'content/websites/patterns/app-float.scss'])
     .pipe($.sass({
       includePaths: PATHS.sass
     })
@@ -166,7 +195,7 @@ function buildingBlockBaseStyles() {
 // Compiles the Sass for the building blocks
 function buildingBlockSass() {
   var blocks = JSON.parse(fs.readFileSync(PATHS.build + '/data/building-blocks.json', 'utf8'));
-  return gulp.src(['content/patterns/**/*.scss'])
+  return gulp.src(['content/websites/patterns/**/*.scss'])
     .pipe($.insert.transform(function(contents, file){
       var pieces = file.path.split('/');
       var bbName = pieces[pieces.length - 2];
@@ -193,7 +222,7 @@ function buildingBlockSass() {
 
 // Moves JS from the Building Blocks into the dist
 function buildingBlockJS() {
-  return gulp.src('content/patterns/**/*.js')
+  return gulp.src('content/websites/patterns/**/*.js')
     .pipe(gulp.dest(PATHS.dist + "/websites/patterns/"));
 }
 
@@ -274,12 +303,13 @@ function reload(done) {
 function watch() {
   gulp.watch(PATHS.assets, gulp.series('copy', reload));
   gulp.watch(['assets_site/pages/*.html', 'assets_site/pages/**/*.html']).on('all', gulp.series('kit-index', pages, kitIndex, reload));
+  gulp.watch('content/websites/meta-patterns/*.html').on('all', gulp.series('meta-patterns', metaPatternsPages, metaPatterns, reload));
   gulp.watch('content/{layouts,partials}/**/*.html').on('all', gulp.series(kitIndex, 'dynamic-pages',  reload));
-  gulp.watch('content/patterns/**/*.html').on('all', gulp.series( 'building-block-pages', 'building-block-indices', reload));
-  gulp.watch('content/patterns/**/*.scss').on('all', gulp.series(buildingBlockSass,  'building-block-pages',reload));
-  gulp.watch('content/patterns/**/*.js').on('all', gulp.series(buildingBlockJS, 'building-block-pages', reload));
-  gulp.watch(['content/patterns/**/*.png', 'content/kits/**/*.png']).on('all', gulp.series('copy', reload));
-  gulp.watch('content/patterns/**/*.yml').on('all', gulp.series('building-block-meta', 'dynamic-pages', reload));
+  gulp.watch('content/websites/patterns/**/*.html').on('all', gulp.series( 'building-block-pages', 'building-block-indices', reload));
+  gulp.watch('content/websites/patterns/**/*.scss').on('all', gulp.series(buildingBlockSass,  'building-block-pages',reload));
+  gulp.watch('content/websites/patterns/**/*.js').on('all', gulp.series(buildingBlockJS, 'building-block-pages', reload));
+  gulp.watch(['content/websites/patterns/**/*.png', 'content/kits/**/*.png']).on('all', gulp.series('copy', reload));
+  gulp.watch('content/websites/patterns/**/*.yml').on('all', gulp.series('building-block-meta', 'dynamic-pages', reload));
   gulp.watch('content/kits/**/*.yml').on('all', gulp.series('building-block-meta', 'dynamic-pages', reload));
   gulp.watch('assets_site/scss/**/*.scss').on('all', gulp.series(sass, buildingBlockSass, reload));
   gulp.watch('assets_site/js/**/*.js').on('all', gulp.series(javascript, reload));
@@ -290,6 +320,7 @@ function watch() {
 function watchStatic() {
   gulp.watch(PATHS.assets, gulp.series('copy', reload));
   gulp.watch('assets_site/pages/**/*.html').on('all', gulp.series(pages, reload));
+  gulp.watch('content/websites/meta-patterns/*.html').on('all', gulp.series(metaPatternsPages, reload));
   gulp.watch('content/{layouts,partials}/**/*.html').on('all', gulp.series(pages, reload));
   gulp.watch('assets_site/scss/**/*.scss').on('all', gulp.series(sass, reload));
   gulp.watch('assets_site/js/**/*.js').on('all', gulp.series(javascript, reload));
-- 
GitLab