Skip to content

Commit bf34149

Browse files
author
mrmrs
committed
Add some more generatorsssss.
Separate home build as a hack
1 parent b0888e4 commit bf34149

File tree

9 files changed

+285
-0
lines changed

9 files changed

+285
-0
lines changed

src/components-home-build.js

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
var fs = require('fs')
2+
var _ = require('lodash')
3+
var path = require('path')
4+
var mkdirp = require('mkdirp')
5+
var glob = require('glob')
6+
var titleize = require('titleize')
7+
var fm = require('json-front-matter')
8+
var escapeHtml = require('escape-html')
9+
var rmHtmlExt = require('remove-html-extension')
10+
var getClasses = require('get-classes-from-html')
11+
var postcss = require('postcss')
12+
var select = require('postcss-select')
13+
var atImport = require('postcss-import')
14+
var conditionals = require('postcss-conditionals')
15+
var removeComments = require('postcss-discard-comments')
16+
var perfectionist = require('perfectionist')
17+
var removeEmpty = require('postcss-discard-empty')
18+
var cssVariables = require('postcss-css-variables')
19+
var customMedia = require('postcss-custom-media')
20+
var mqPacker = require('css-mqpacker')
21+
var cssstats = require('cssstats')
22+
23+
var tachyonsCss = fs.readFileSync('src/css/tachyons.css', 'utf8')
24+
var footer = fs.readFileSync('src/templates/footer.html', 'utf8')
25+
var analytics = fs.readFileSync('src/templates/ga.html', 'utf8')
26+
var head = fs.readFileSync('src/templates/head.html', 'utf8')
27+
var header = fs.readFileSync('src/templates/header.html', 'utf8')
28+
var highlight = fs.readFileSync('src/templates/highlight.html', 'utf8')
29+
30+
module.exports = function () {
31+
glob('src/components/**/*.html', {}, function (err, components) {
32+
if (err) {
33+
console.error(err)
34+
return
35+
}
36+
37+
var template = fs.readFileSync('src/templates/components.html', 'utf8')
38+
var indexTemplate = fs.readFileSync('src/templates/components-index.html', 'utf8')
39+
40+
var componentsForNav = {}
41+
components.map(function (component) {
42+
var componentTokens = component.replace('src/components/', '').split('/')
43+
var category = componentTokens[0]
44+
45+
componentsForNav[category] = componentsForNav[category] || []
46+
componentsForNav[category].push({
47+
href: component.replace('src', '').replace('.html', '') + '/index.html',
48+
name: getName(component)
49+
})
50+
})
51+
52+
var compiledPage = _.template(indexTemplate)({
53+
componentsForNav: componentsForNav,
54+
title: 'Components',
55+
analytics: analytics,
56+
footer: footer,
57+
head: head,
58+
header: header,
59+
})
60+
61+
mkdirp.sync('components')
62+
fs.writeFileSync('components/index.html', compiledPage)
63+
})
64+
}
65+
66+
function getTitle(component) {
67+
var title = rmHtmlExt(component).replace('src/components/', '').replace(/(\/|_|-)/g, ' ')
68+
return titleize(title)
69+
}
70+
71+
function getName(component) {
72+
return titleize(getTitle(component.split('/')[3]))
73+
}

src/modules/aspect-ratios.js

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
var _ = require('lodash')
2+
var fs = require('fs')
3+
var gzip = require('gzip-size')
4+
var filesize = require('filesize')
5+
var postcss = require('postcss')
6+
7+
var cssstats = require('cssstats')
8+
9+
var module = require('tachyons-utilities/package.json')
10+
var moduleCss = fs.readFileSync('node_modules/tachyons-utilities/css/tachyons-utilities.min.css', 'utf8')
11+
var moduleObj = cssstats(moduleCss)
12+
var moduleSize = filesize(moduleObj.gzipSize)
13+
var moduleName = module.name
14+
15+
var srccss = fs.readFileSync('./src/css/_utilities.css', 'utf8')
16+
var navDocs = fs.readFileSync('./src/templates/nav_docs.html', 'utf8')
17+
var siteFooter = fs.readFileSync('./src/templates/footer.html', 'utf8')
18+
var siteHeader = fs.readFileSync('./src/templates/header.html', 'utf8')
19+
var head = fs.readFileSync('./src/templates/head.html', 'utf8')
20+
var googleAnalytics = fs.readFileSync('./src/templates/ga.html', 'utf8')
21+
22+
var template = fs.readFileSync('./src/templates/docs/aspect-ratios/index.html', 'utf8')
23+
var tpl = _.template(template)
24+
var html = tpl({
25+
moduleVersion: module.version,
26+
moduleSize: moduleSize,
27+
name: moduleName,
28+
moduleObj: moduleObj,
29+
srccss: srccss,
30+
navDocs: navDocs,
31+
siteFooter: siteFooter,
32+
googleAnalytics: googleAnalytics,
33+
head: head,
34+
siteHeader: siteHeader
35+
})
36+
37+
fs.writeFileSync('./docs/layout/aspect-ratios/index.html', html)

src/modules/avenir.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
var _ = require('lodash')
2+
var fs = require('fs')
3+
var gzip = require('gzip-size')
4+
var filesize = require('filesize')
5+
var cssstats = require('cssstats')
6+
7+
8+
var navDocs = fs.readFileSync('./src/templates/nav_docs.html', 'utf8')
9+
var siteFooter = fs.readFileSync('./src/templates/footer.html', 'utf8')
10+
var siteHeader = fs.readFileSync('./src/templates/header.html', 'utf8')
11+
var head = fs.readFileSync('./src/templates/head.html', 'utf8')
12+
var googleAnalytics = fs.readFileSync('./src/templates/ga.html', 'utf8')
13+
14+
15+
var template = fs.readFileSync('./src/templates/docs/avenir/index.html', 'utf8')
16+
var tpl = _.template(template)
17+
var html = tpl({
18+
navDocs: navDocs,
19+
siteFooter: siteFooter,
20+
googleAnalytics: googleAnalytics,
21+
head: head,
22+
siteHeader: siteHeader
23+
})
24+
25+
fs.writeFileSync('./docs/typography/font-family/avenir/index.html', html)

src/modules/baskerville.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
var _ = require('lodash')
2+
var fs = require('fs')
3+
var gzip = require('gzip-size')
4+
var filesize = require('filesize')
5+
var cssstats = require('cssstats')
6+
7+
8+
var navDocs = fs.readFileSync('./src/templates/nav_docs.html', 'utf8')
9+
var siteFooter = fs.readFileSync('./src/templates/footer.html', 'utf8')
10+
var siteHeader = fs.readFileSync('./src/templates/header.html', 'utf8')
11+
var head = fs.readFileSync('./src/templates/head.html', 'utf8')
12+
var googleAnalytics = fs.readFileSync('./src/templates/ga.html', 'utf8')
13+
14+
15+
var template = fs.readFileSync('./src/templates/docs/baskerville/index.html', 'utf8')
16+
var tpl = _.template(template)
17+
var html = tpl({
18+
navDocs: navDocs,
19+
siteFooter: siteFooter,
20+
googleAnalytics: googleAnalytics,
21+
head: head,
22+
siteHeader: siteHeader
23+
})
24+
25+
fs.writeFileSync('./docs/typography/font-family/baskerville/index.html', html)

src/modules/bodoni.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
var _ = require('lodash')
2+
var fs = require('fs')
3+
var gzip = require('gzip-size')
4+
var filesize = require('filesize')
5+
var cssstats = require('cssstats')
6+
7+
8+
var navDocs = fs.readFileSync('./src/templates/nav_docs.html', 'utf8')
9+
var siteFooter = fs.readFileSync('./src/templates/footer.html', 'utf8')
10+
var siteHeader = fs.readFileSync('./src/templates/header.html', 'utf8')
11+
var head = fs.readFileSync('./src/templates/head.html', 'utf8')
12+
var googleAnalytics = fs.readFileSync('./src/templates/ga.html', 'utf8')
13+
14+
15+
var template = fs.readFileSync('./src/templates/docs/bodoni/index.html', 'utf8')
16+
var tpl = _.template(template)
17+
var html = tpl({
18+
navDocs: navDocs,
19+
siteFooter: siteFooter,
20+
googleAnalytics: googleAnalytics,
21+
head: head,
22+
siteHeader: siteHeader
23+
})
24+
25+
fs.writeFileSync('./docs/typography/font-family/bodoni/index.html', html)

src/modules/consolas.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
var _ = require('lodash')
2+
var fs = require('fs')
3+
var gzip = require('gzip-size')
4+
var filesize = require('filesize')
5+
var cssstats = require('cssstats')
6+
7+
8+
var navDocs = fs.readFileSync('./src/templates/nav_docs.html', 'utf8')
9+
var siteFooter = fs.readFileSync('./src/templates/footer.html', 'utf8')
10+
var siteHeader = fs.readFileSync('./src/templates/header.html', 'utf8')
11+
var head = fs.readFileSync('./src/templates/head.html', 'utf8')
12+
var googleAnalytics = fs.readFileSync('./src/templates/ga.html', 'utf8')
13+
14+
15+
var template = fs.readFileSync('./src/templates/docs/garamond/index.html', 'utf8')
16+
var tpl = _.template(template)
17+
var html = tpl({
18+
navDocs: navDocs,
19+
siteFooter: siteFooter,
20+
googleAnalytics: googleAnalytics,
21+
head: head,
22+
siteHeader: siteHeader
23+
})
24+
25+
fs.writeFileSync('./docs/typography/font-family/garamond/index.html', html)

src/modules/georgia.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
var _ = require('lodash')
2+
var fs = require('fs')
3+
var gzip = require('gzip-size')
4+
var filesize = require('filesize')
5+
var cssstats = require('cssstats')
6+
7+
8+
var navDocs = fs.readFileSync('./src/templates/nav_docs.html', 'utf8')
9+
var siteFooter = fs.readFileSync('./src/templates/footer.html', 'utf8')
10+
var siteHeader = fs.readFileSync('./src/templates/header.html', 'utf8')
11+
var head = fs.readFileSync('./src/templates/head.html', 'utf8')
12+
var googleAnalytics = fs.readFileSync('./src/templates/ga.html', 'utf8')
13+
14+
15+
var template = fs.readFileSync('./src/templates/docs/georgia/index.html', 'utf8')
16+
var tpl = _.template(template)
17+
var html = tpl({
18+
navDocs: navDocs,
19+
siteFooter: siteFooter,
20+
googleAnalytics: googleAnalytics,
21+
head: head,
22+
siteHeader: siteHeader
23+
})
24+
25+
fs.writeFileSync('./docs/typography/font-family/georgia/index.html', html)

src/modules/helvetica.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
var _ = require('lodash')
2+
var fs = require('fs')
3+
var gzip = require('gzip-size')
4+
var filesize = require('filesize')
5+
var cssstats = require('cssstats')
6+
7+
8+
var navDocs = fs.readFileSync('./src/templates/nav_docs.html', 'utf8')
9+
var siteFooter = fs.readFileSync('./src/templates/footer.html', 'utf8')
10+
var siteHeader = fs.readFileSync('./src/templates/header.html', 'utf8')
11+
var head = fs.readFileSync('./src/templates/head.html', 'utf8')
12+
var googleAnalytics = fs.readFileSync('./src/templates/ga.html', 'utf8')
13+
14+
15+
var template = fs.readFileSync('./src/templates/docs/helvetica/index.html', 'utf8')
16+
var tpl = _.template(template)
17+
var html = tpl({
18+
navDocs: navDocs,
19+
siteFooter: siteFooter,
20+
googleAnalytics: googleAnalytics,
21+
head: head,
22+
siteHeader: siteHeader
23+
})
24+
25+
fs.writeFileSync('./docs/typography/font-family/helvetica/index.html', html)

src/modules/times.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
var _ = require('lodash')
2+
var fs = require('fs')
3+
var gzip = require('gzip-size')
4+
var filesize = require('filesize')
5+
var cssstats = require('cssstats')
6+
7+
8+
var navDocs = fs.readFileSync('./src/templates/nav_docs.html', 'utf8')
9+
var siteFooter = fs.readFileSync('./src/templates/footer.html', 'utf8')
10+
var siteHeader = fs.readFileSync('./src/templates/header.html', 'utf8')
11+
var head = fs.readFileSync('./src/templates/head.html', 'utf8')
12+
var googleAnalytics = fs.readFileSync('./src/templates/ga.html', 'utf8')
13+
14+
15+
var template = fs.readFileSync('./src/templates/docs/times/index.html', 'utf8')
16+
var tpl = _.template(template)
17+
var html = tpl({
18+
navDocs: navDocs,
19+
siteFooter: siteFooter,
20+
googleAnalytics: googleAnalytics,
21+
head: head,
22+
siteHeader: siteHeader
23+
})
24+
25+
fs.writeFileSync('./docs/typography/font-family/times/index.html', html)

0 commit comments

Comments
 (0)