diff --git a/.gitignore b/.gitignore index 219e5e3..007888d 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,5 @@ dist npm-debug.log .env .DS_Store -.vscode \ No newline at end of file +.vscode +public \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 0f9eaf6..ed8921b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,10 @@ # Changelog All notable changes to this project will be documented in this file. +## [0.4.0] - 2019-01-28 +### Added +- Use static site generator for docs + ## [0.3.1] - 2019-01-27 ### Added - Add option to style text selection colors diff --git a/README.md b/README.md index a0d44da..cb7dd01 100644 --- a/README.md +++ b/README.md @@ -1,33 +1,35 @@ # Terminal CSS -Modern and minimalistic CSS framework for *terminal* lovers ❤️. +Modern and minimal CSS framework for terminal lovers. Visit the website [terminalcss.xyz](https://terminalcss.xyz/) -## Goal +## Project Goals -There are so many CSS frameworks out there with great features but most of them come at the cost of *bloated* html code. **Terminal CSS** is here for purists who want minimal overhead and maximal control. +Terminal CSS has no overhead and is lightweight **(<= 2.9k gzip)**. +The source is written in **pure css** to be accessible for everybody and easy to contribute. -## Credits +## Markdown ❤️ Terminal CSS -This project is heavily inspired by [@egoist's](https://egoist.sh/) work - [hack.css](https://hackcss.egoist.moe/) +It's perfect for your *personal website*, *blog*, or *side project*. -## Usage +## How to use -#### NPM - -Install with `npm i terminal.css`. +When using something like Webpack just install with `npm i terminal.css`. ```js import 'terminal.css' ``` -#### UNPKG CDN +Terminal CSS is also available via [CDN](https://unpkg.com/terminal.css@0.4.0/dist/terminal.min.css) -The css is available via [CDN](https://unpkg.com/terminal.css@0.3.2/dist/terminal.min.css) ```html - + ``` +## Themes + +To create your own theme just open the dev-tools and edit the CSS Variables. Copy and paste it to your website. Done! + ## Development - `npm install` diff --git a/docs/dark/index.html b/docs/dark/index.html deleted file mode 100644 index 1eb1672..0000000 --- a/docs/dark/index.html +++ /dev/null @@ -1,648 +0,0 @@ - - - - - - - Terminal CSS - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - -
-
-
-

- Modern and minimalistic CSS framework for terminal lovers ❤️ -

-
-

Goal

-

- There are so many CSS frameworks out there with great features but - most of them come at the cost of bloated html code. - Terminal CSS is here for purists who want minimal overhead and - maximal control. -

-
-
-

Dark Version

-

To create your own Terminal CSS theme just edit the `:root` CSS Variables

-
-
-

Credits

-

- This project is heavily inspired by - @egoist's - work - - hack.css -

-
-
-
- -
-

Grid System

-

- Terminal CSS doens't come with a build in grid system. It encourages - you to use your own - whether it's Flexbox or CSS Grid. -

-
- random image - random image - random image - random image - random image - random image - random image -
-
-
- -
- - -
-
-
-

Lists

-
-
    -
  • This is a list item
  • -
  • So is this - there could be more
  • -
  • - Make sure to style list items to: -
      -
    • Not forgetting child list items
    • -
    • Not forgetting child list items
    • -
    • Not forgetting child list items
    • -
    • Not forgetting child list items
    • -
    -
  • -
  • A couple more
  • -
  • top level list items
  • -
-

Don't forget Ordered lists:

-
    -
  1. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  2. -
  3. - Aliquam tincidunt mauris eu risus. -
      -
    1. - Lorem ipsum dolor sit amet, consectetuer adipiscing elit. -
    2. -
    3. Aliquam tincidunt mauris eu risus.
    4. -
    -
  4. -
  5. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  6. -
  7. Aliquam tincidunt mauris eu risus.
  8. -
-

Description lists are also included.

-
-
Description list title 01
-
Description list description 01
-
Description list title 02
-
Description list description 02
-
Description list description 03
-
-
-
-
-

Typography

-

Level 1 Heading

-

- Pellentesque habitant morbi tristique senectus et netus et - malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat - vitae, ultricies eget, tempor sit amet, ante. -

-

Level 2 Heading

-

- Pellentesque habitant morbi tristique senectus et netus et - malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat - vitae, ultricies eget, tempor sit amet, ante. -

-

Level 3 Heading

-

- Pellentesque habitant morbi tristique senectus et netus et - malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat - vitae, ultricies eget, tempor sit amet, ante. -

-

Level 4 Heading

-
Level 5 Heading
-
Level 5 Heading
-
-
-
-

Tables

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Most Downloaded Movies on BitTorrent, 2011 -
RankMovieDownloadsGrosses
torrentfreak.com
1Fast Five9,260,000$626,137,675
2The Hangover II8,840,000$581,464,305
3Thor8,330,000$449,326,618
4Source Code7,910,000$123,278,618
5I Am Number Four7,670,000$144,500,437
6Sucker Punch7,200,000$89,792,502
7127 Hours6,910,000$60,738,797
8Rango6,480,000$245,155,348
9The King’s Speech6,250,000$414,211,549
10Harry Potter and the Deathly Hallows Part 26,030,000$1,328,111,219
-
- -

Special Elements

-

Terminal CSS also supports a range of special elements.

- -

Blockquote

-
-

- This is a properly formatted blockquote, btw. Measuring - programming progress by lines of code is like measuring aircraft - building progress by weight. -

- -
- -

Code Blocks

-
-            
-              :root {
-                    --global-font-size: 14px;
-                    --global-line-height: 1.4rem;
-                    --global-space: 10px;
-                    --font-stack: 'Fira Code',Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif;
-                    --background-color: #fff;
-                    --page-width: 70em;
-                    --primary-color: rgb(206, 4, 105);
-                    --font-color: #151513;
-                    --tertiary-color: #727680;
-                    --grid-gap: 1em;
-              }                           
-            
-          
- -

Misc

-

- I am the a tag example
- I am the abbr tag example
- I am the acronym tag example
- I am the b tag example
- I am the big tag example
- I am the cite tag example
- I am the code tag example
- I am the del tag example
- I am the dfn tag example
- I am the em tag example
- I am the i tag example
- I am the ins tag example
- I am the kbd tag example
- I am the q tag example
- I am the samp tag example
- I am the small tag example
- I am the span tag example
- I am the strong tag example
- I am the sub tag example
- I am the sup tag example
- I am the tt tag example
- I am the var tag example
- I am the small class example
- I am the large class example
- I am the quiet class example
-

- -

- Address -

-
- Mozilla Foundation
- 1981 Landings Drive
- Building K
- Mountain View, CA 94043-0801
- USA -
-
-

Forms

-
-
- Form legend -
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
-
- -
-

Progress Bar

-

With only an arrow

-
-
-
- -

With a percentage showing above the arrow

-
-
-
- -

Without arrow

-
-
-
- -
-

Buttons

-

-

-

-

-

-

-

-

Button Group

-
- - - -
- -
-

Cards

-
-
title
-
- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Expedita, quas ex vero enim in doloribus officiis ullam vel nam esse sapiente velit incidunt. Eaque quod et, aut maiores excepturi sint. -
-
-
-

Alerts

-
Default message
-
Primary message
-
Error message
-
-

Media

-
-
-
Picsum
-
-
-
Media Left Element
-
This is the media content
-
-
-
-
-
Media Right Element
-
This is the media content
-
-
-
Picsum
-
-
-
-

Image with caption

-
- Image with caption -
- Image with caption -
-
-
-

Version: 0.3.2 Top

- -
-
-
- - - - diff --git a/docs/index.html b/docs/index.html deleted file mode 100644 index b5482de..0000000 --- a/docs/index.html +++ /dev/null @@ -1,627 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - Terminal CSS - - - - - - - -
-
- - -
-
-
-

- Modern and minimalistic CSS framework for terminal lovers ❤️ -

-
-

Goal

-

- There are so many CSS frameworks out there with great features but - most of them come at the cost of bloated html code. - Terminal CSS is here for purists who want minimal overhead and - maximal control. -

-
-
-

Credits

-

- This project is heavily inspired by - @egoist's - work - - hack.css -

-
-
-
- -
-

Grid System

-

- Terminal CSS doens't come with a build in grid system. It encourages - you to use your own - whether it's Flexbox or CSS Grid. -

-
- random image - random image - random image - random image - random image - random image - random image -
-
-
- -
- - -
-
-
-

Lists

-
-
    -
  • This is a list item
  • -
  • So is this - there could be more
  • -
  • - Make sure to style list items to: -
      -
    • Not forgetting child list items
    • -
    • Not forgetting child list items
    • -
    • Not forgetting child list items
    • -
    • Not forgetting child list items
    • -
    -
  • -
  • A couple more
  • -
  • top level list items
  • -
-

Don't forget Ordered lists:

-
    -
  1. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  2. -
  3. - Aliquam tincidunt mauris eu risus. -
      -
    1. - Lorem ipsum dolor sit amet, consectetuer adipiscing elit. -
    2. -
    3. Aliquam tincidunt mauris eu risus.
    4. -
    -
  4. -
  5. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  6. -
  7. Aliquam tincidunt mauris eu risus.
  8. -
-

Description lists are also included.

-
-
Description list title 01
-
Description list description 01
-
Description list title 02
-
Description list description 02
-
Description list description 03
-
-
-
-
-

Typography

-

Level 1 Heading

-

- Pellentesque habitant morbi tristique senectus et netus et - malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat - vitae, ultricies eget, tempor sit amet, ante. -

-

Level 2 Heading

-

- Pellentesque habitant morbi tristique senectus et netus et - malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat - vitae, ultricies eget, tempor sit amet, ante. -

-

Level 3 Heading

-

- Pellentesque habitant morbi tristique senectus et netus et - malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat - vitae, ultricies eget, tempor sit amet, ante. -

-

Level 4 Heading

-
Level 5 Heading
-
Level 5 Heading
-
-
-
-

Tables

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Most Downloaded Movies on BitTorrent, 2011 -
RankMovieDownloadsGrosses
torrentfreak.com
1Fast Five9,260,000$626,137,675
2The Hangover II8,840,000$581,464,305
3Thor8,330,000$449,326,618
4Source Code7,910,000$123,278,618
5I Am Number Four7,670,000$144,500,437
6Sucker Punch7,200,000$89,792,502
7127 Hours6,910,000$60,738,797
8Rango6,480,000$245,155,348
9The King’s Speech6,250,000$414,211,549
10Harry Potter and the Deathly Hallows Part 26,030,000$1,328,111,219
-
- -

Special Elements

-

Terminal CSS also supports a range of special elements.

- -

Blockquote

-
-

- This is a properly formatted blockquote, btw. Measuring - programming progress by lines of code is like measuring aircraft - building progress by weight. -

- -
- -

Code Blocks

-
-            
-              :root {
-                    --global-font-size: 14px;
-                    --global-line-height: 1.4rem;
-                    --global-space: 10px;
-                    --font-stack: 'Fira Code',Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif;
-                    --background-color: #fff;
-                    --page-width: 70em;
-                    --primary-color: rgb(206, 4, 105);
-                    --font-color: #151513;
-                    --tertiary-color: #727680;
-                    --grid-gap: 1em;
-              }                           
-            
-          
- -

Misc

-

- I am the a tag example
- I am the abbr tag example
- I am the acronym tag example
- I am the b tag example
- I am the big tag example
- I am the cite tag example
- I am the code tag example
- I am the del tag example
- I am the dfn tag example
- I am the em tag example
- I am the i tag example
- I am the ins tag example
- I am the kbd tag example
- I am the q tag example
- I am the samp tag example
- I am the small tag example
- I am the span tag example
- I am the strong tag example
- I am the sub tag example
- I am the sup tag example
- I am the tt tag example
- I am the var tag example
- I am the small class example
- I am the large class example
- I am the quiet class example
-

- -

- Address -

-
- Mozilla Foundation
- 1981 Landings Drive
- Building K
- Mountain View, CA 94043-0801
- USA -
-
-

Forms

-
-
- Form legend -
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
-
- -
-

Progress Bar

-

With only an arrow

-
-
-
- -

With a percentage showing above the arrow

-
-
-
- -

Without arrow

-
-
-
- -
-

Buttons

-

-

-

-

-

-

-

-

Button Group

-
- - - -
- -
-

Cards

-
-
title
-
- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Expedita, quas ex vero enim in doloribus officiis ullam vel nam esse sapiente velit incidunt. Eaque quod et, aut maiores excepturi sint. -
-
-
-

Alerts

-
Default message
-
Primary message
-
Error message
-
-

Media

-
-
-
Picsum
-
-
-
Media Left Element
-
This is the media content
-
-
-
-
-
Media Right Element
-
This is the media content
-
-
-
Picsum
-
-
-
-

Image with caption

-
- Image with caption -
- Image with caption -
-
-
-

Version: 0.3.2 Top

- -
-
-
- - - - diff --git a/docs/terminal.min.css b/docs/terminal.min.css deleted file mode 100644 index 951d68d..0000000 --- a/docs/terminal.min.css +++ /dev/null @@ -1 +0,0 @@ -:root{--global-font-size:14px;--global-line-height:1.4em;--global-space:10px;--font-stack:'Fira Code',Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif;--background-color:#fff;--page-width:60em;--font-color:#151515;--invert-font-color:#fff;--secondary-color:#6a737b;--tertiary-color:#6a737b;--primary-color:#511378;--error-color:#d20962;--progress-bar-background:#6a737b;--progress-bar-fill:#151515}*{-webkit-box-sizing:border-box;box-sizing:border-box;text-rendering:geometricPrecision}::-moz-selection{background:var(--primary-color);color:var(--invert-font-color)}::selection{background:var(--primary-color);color:var(--invert-font-color)}body{font-size:var(--global-font-size);color:var(--font-color);line-height:var(--global-line-height);margin:0;font-family:var(--font-stack);word-wrap:break-word;background-color:var(--background-color)}.logo,h1,h2,h3,h4,h5,h6{line-height:var(--global-line-height)}fieldset{border:none;padding:0;margin:0}pre{display:block;word-break:break-all;word-wrap:break-word;color:var(--secondary-color);background-color:var(--background-color);border:1px solid var(--secondary-color);padding:var(--global-space);white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}pre code{overflow-x:scroll;padding:0;margin:0;display:inline-block;min-width:100%}a{cursor:pointer;color:var(--primary-color);text-decoration:none;border-bottom:1px solid var(--primary-color)}a:hover{background-color:var(--primary-color);color:var(--invert-font-color)}.logo,blockquote,code,em,h1,h2,h3,h4,h5,h6,strong{font-size:var(--global-font-size);font-style:normal;font-family:var(--font-stack);color:var(--font-color)}blockquote,code,em,strong{line-height:var(--global-line-height)}.logo,blockquote,code,footer,h1,h2,h3,h4,h5,h6,header,li,ol,p,section,ul{float:none;margin:0;padding:0}.logo,blockquote,h1,ol,p,ul{margin-top:calc(var(--global-space) * 2);margin-bottom:calc(var(--global-space) * 2)}ul ul{margin-top:0;margin-bottom:0}ol ol{margin-top:0;margin-bottom:0}.logo,h1{position:relative;display:inline-block;display:table-cell;padding:calc(var(--global-space) * 2) 0 calc(var(--global-space) * 2);margin:0;overflow:hidden;font-weight:600}h1:after{content:"====================================================================================================";position:absolute;bottom:5px;left:0}.logo+*,h1+*{margin-top:0}h2,h3,h4,h5,h6{position:relative;margin-bottom:var(--global-line-height);font-weight:600}li{position:relative;display:block;padding-left:calc(var(--global-space) * 2)}li:after{position:absolute;top:0;left:0}ul>li:after{content:"-"}ol{counter-reset:item}ol li:before{content:counters(item, ".") ". ";counter-increment:item}ol ol li:before{content:counters(item, ".") " ";counter-increment:item}ol li:nth-child(n+10):after{left:-7px}blockquote{position:relative;padding-left:calc(var(--global-space) * 2);padding-left:2ch;overflow:hidden}blockquote:after{content:">\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>\A>";white-space:pre;position:absolute;top:0;left:0;line-height:var(--global-line-height);color:#9ca2ab}pre code:after,pre code:before{content:""}code{font-weight:inherit}code:after,code:before{content:"`";display:inline}hr{position:relative;height:calc(var(--global-space) * 2);overflow:hidden;border:0;margin:calc(var(--global-space) * 2) 0}hr:after{content:"--------------------------------------------------------------------------------------------------------------------";position:absolute;top:0;left:0;line-height:calc(var(--global-space) * 2);width:100%;word-wrap:break-word}-ones ol>li:after{content:"1."}p{margin:0 0 var(--global-line-height);color:var(--global-font-color)}.container{max-width:var(--page-width)}.container,.container-fluid{margin:0 auto;padding:0 calc(var(--global-space) * 2)}img{width:100%}.progress-bar{height:8px;background-color:var(--progress-bar-background);margin:12px 0}.progress-bar.progress-bar-show-percent{margin-top:38px}.progress-bar-filled{background-color:var(--progress-bar-fill);height:100%;-webkit-transition:width .3s ease;-o-transition:width .3s ease;transition:width .3s ease;position:relative;width:0}.progress-bar-filled:before{content:"";border:6px solid transparent;border-top-color:var(--progress-bar-fill);position:absolute;top:-12px;right:-6px}.progress-bar-filled:after{color:var(--progress-bar-fill);content:attr(data-filled);display:block;font-size:12px;white-space:nowrap;position:absolute;border:6px solid transparent;top:-38px;right:0;-ms-transform:translateX(50%);-webkit-transform:translateX(50%);transform:translateX(50%)}.progress-bar-no-arrow>.progress-bar-filled:after,.progress-bar-no-arrow>.progress-bar-filled:before{content:"";display:none;visibility:hidden;opacity:0}table{width:100%;border-collapse:collapse;margin:var(--global-line-height) 0;color:var(--font-color);font-size:var(--global-font-size)}table tfoot tr th{font-weight:500}table caption{font-size:1em;margin:0 0 1em 0}table td,table th{vertical-align:top;border:1px solid var(--font-color);line-height:var(--global-line-height);padding:calc(var(--global-space)/ 2);font-size:1em}table thead th{font-size:1em}table tbody td:first-child{font-weight:700;color:var(var(--secondary-color))}.form{width:100%}fieldset{border:1px solid var(--font-color);padding:1em}label{font-size:1em;color:var(--font-color)}input[type=email],input[type=number],input[type=password],input[type=search],input[type=text]{border:1px dashed var(--font-color);width:100%;padding:.5em;font-size:1em;font-family:var(--font-stack)}input[type=email]:active,input[type=number]:active,input[type=number]:focus,input[type=password]:active,input[type=password]:focus,input[type=search]:active input[type=email]:focus,input[type=search]:focus,input[type=text]:active,input[type=text]:focus{outline:0;-webkit-appearance:none;border:1px solid var(--font-color)}input[type=email]:not(:placeholder-shown):invalid,input[type=number]:not(:placeholder-shown):invalid,input[type=password]:not(:placeholder-shown):invalid,input[type=search]:not(:placeholder-shown):invalid,input[type=text]:not(:placeholder-shown):invalid{border-color:var(--error-color)}.form-group{margin-bottom:var(--global-line-height);overflow:auto}textarea{height:auto;width:100%;resize:none;border:1px dashed var(--font-color);width:100%;padding:.5em;font-size:1em;font-family:var(--font-stack)}textarea:focus{outline:0;-webkit-appearance:none;border:1px solid var(--font-color)}textarea:not(:placeholder-shown):invalid{border-color:var(--error-color)}input,textarea{color:var(--font-color);background-color:var(--background-color);-webkit-appearance:none;border-radius:0}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:var(--secondary-color)!important;opacity:1}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--secondary-color)!important;opacity:1}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--secondary-color)!important;opacity:1}input::placeholder,textarea::placeholder{color:var(--secondary-color)!important;opacity:1}.btn{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;cursor:pointer;outline:0;padding:.65em 2em;font-size:1em;font-family:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;z-index:1}.btn:active{-webkit-box-shadow:none;box-shadow:none}.btn.btn-ghost{border-color:var(--font-color);color:var(--font-color);background-color:transparent}.btn.btn-ghost:focus,.btn.btn-ghost:hover{border-color:var(--tertiary-color);color:var(--tertiary-color);z-index:2}.btn.btn-ghost:hover{background-color:transparent}.btn-block{width:100%;display:-ms-flexbox;display:flex}.btn-default{background-color:var(--font-color);border-color:var(--invert-font-color);color:var(--invert-font-color)}.btn-default:focus:not(.btn-ghost),.btn-default:hover{background-color:var(--secondary-color);color:var(--invert-font-color)}.btn-default.btn-ghost:focus,.btn-default.btn-ghost:hover{border-color:var(--secondary-color);color:var(--secondary-color);z-index:2}.btn-error{color:var(--invert-font-color);background-color:var(--error-color);border:1px solid var(--error-color)}.btn-error:focus:not(.btn-ghost),.btn-error:hover{background-color:var(--error-color);border-color:var(--error-color)}.btn-error.btn-ghost{border-color:var(--error-color);color:var(--error-color)}.btn-error.btn-ghost:focus,.btn-error.btn-ghost:hover{border-color:var(--error-color);color:var(--error-color);z-index:2}.btn-primary{color:var(--invert-font-color);background-color:var(--primary-color);border:1px solid var(--primary-color)}.btn-primary:focus:not(.btn-ghost),.btn-primary:hover{background-color:var(--primary-color);border-color:var(--primary-color)}.btn-primary.btn-ghost{border-color:var(--primary-color);color:var(--primary-color)}.btn-primary.btn-ghost:focus,.btn-primary.btn-ghost:hover{border-color:var(--primary-color);color:var(--primary-color);z-index:2}.btn-group{overflow:auto}.btn-group .btn{float:left}.btn-group .btn-ghost:not(:first-child){margin-left:-1px}.card{border:1px solid var(--secondary-color)}.card>header{color:var(--font-color);text-align:center;background-color:var(--secondary-color);padding:.5em 0}.card>div:first-of-type{padding:var(--global-space)}.alert{color:var(--font-color);padding:1em;border:1px solid var(--font-color);margin-bottom:var(--global-space)}.alert-error{color:var(--error-color);border-color:var(--error-color)}.alert-primary{color:var(--primary-color);border-color:var(--primary-color)}.terminal-menu{width:100%}.terminal-header{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.terminal-logo{-ms-flex-negative:1;flex-shrink:1;margin-right:20px;white-space:nowrap}.terminal-logo a{color:var(--font-color);text-decoration:none;font-weight:600;border:none}.terminal-logo a:active,.terminal-logo a:hover,.terminal-logo a:visited{background:0 0;border:none;color:var(--font-color)}.terminal-menu ul{list-style-type:none;padding:0!important;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;-ms-flex-positive:1;flex-grow:1;font-size:var(--global-font-size)}.terminal-menu li{display:-ms-flexbox;display:flex;margin:0 0 .5em 0;padding:0}.terminal-menu li:last-child{margin-bottom:0}.terminal-menu li::after,.terminal-menu li::before{display:none}.terminal-menu li a{text-decoration:none;display:block;width:100%;border:none}.terminal-menu li a.active{font-weight:600}@media screen and (max-width:960px){label{display:block;width:100%}pre::-webkit-scrollbar{height:3px}}@media screen and (max-width:480px){form{width:100%}}@media only screen and (min-width:30em){.terminal-header{-ms-flex-direction:row;flex-direction:row}.terminal-menu ul{-ms-flex-direction:row;flex-direction:row;justify-items:flex-end;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.terminal-menu li{margin:0;margin-right:2em}.terminal-menu li:last-child{margin-right:0}}.terminal-media:not(:last-child){margin-bottom:1.25rem}.terminal-media-left{padding-right:var(--global-space)}.terminal-media-left,.terminal-media-right{display:table-cell;vertical-align:top}.terminal-media-right{padding-left:var(--global-space)}.terminal-media-body{display:table-cell;vertical-align:top}.terminal-media-heading{font-size:1em;font-weight:700}.terminal-media-content{margin-top:.3rem}.terminal-placeholder{background-color:var(--secondary-color);text-align:center;color:var(--font-color);font-size:1rem;border:1px solid var(--secondary-color)}.terminal-avatarholder{width:calc(var(--global-space) * 5);height:calc(var(--global-space) * 5)}.terminal-avatarholder img{padding:0}figure{margin:0}figure>img{padding:0}figure>figcaption{color:var(--tertiary-color);text-align:center}.hljs{display:block;overflow-x:auto;padding:.5em;background:var(--block-background-color);color:var(--font-color)}.hljs-comment,.hljs-quote{color:var(--secondary-color)}.hljs-variable{color:var(--font-color)}.hljs-built_in,.hljs-keyword,.hljs-name,.hljs-selector-tag,.hljs-tag{color:var(--primary-color)}.hljs-addition,.hljs-attribute,.hljs-literal,.hljs-section,.hljs-string,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type{color:var(--secondary-color)}.hljs-string{color:var(--secondary-color)}.hljs-deletion,.hljs-meta,.hljs-selector-attr,.hljs-selector-pseudo{color:var(--primary-color)}.hljs-doctag{color:var(--secondary-color)}.hljs-attr{color:var(--primary-color)}.hljs-bullet,.hljs-link,.hljs-symbol{color:var(--primary-color)}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} \ No newline at end of file diff --git a/src/terminal.css b/lib/terminal.css similarity index 95% rename from src/terminal.css rename to lib/terminal.css index 33b0957..cf24ef8 100644 --- a/src/terminal.css +++ b/lib/terminal.css @@ -3,8 +3,9 @@ --global-line-height: 1.4em; --global-space: 10px; --font-stack: 'Fira Code',Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif; + --mono-font-stack: 'Fira Code',Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif; --background-color: #fff; - --page-width: 60em; + --page-width: 65em; --font-color: #151515; --invert-font-color: #fff; --secondary-color: #6a737b; @@ -13,12 +14,13 @@ --error-color: #d20962; --progress-bar-background: #6a737b; --progress-bar-fill: #151515; + --code-bg-color: #dce2e7; } * { box-sizing: border-box; text-rendering: geometricPrecision; -} +} *::-moz-selection { background: var(--primary-color); color: var(--invert-font-color); } *::selection { background: var(--primary-color); color: var(--invert-font-color); } @@ -64,6 +66,7 @@ pre code { margin: 0; display: inline-block; min-width: 100%; + font-family: var(--mono-font-stack); } a { @@ -78,7 +81,14 @@ a:hover { color: var(--invert-font-color); } -blockquote, code, em, h1, h2, h3, h4, h5, h6, strong, .logo { +em { + font-size: var(--global-font-size); + font-style: italic; + font-family: var(--font-stack); + color: var(--font-color); +} + +blockquote, code, h1, h2, h3, h4, h5, h6, strong, .logo { font-size: var(--global-font-size); font-style: normal; font-family: var(--font-stack); @@ -194,6 +204,8 @@ pre code:after, pre code:before { code { font-weight: inherit; + background-color: var(--code-bg-color); + font-family: var(--mono-font-stack); } code:after, code:before { @@ -519,34 +531,34 @@ input::placeholder, textarea::placeholder { margin-left: -1px; } -.card { +.terminal-card { border: 1px solid var(--secondary-color); } -.card > header { +.terminal-card > header { color: var(--font-color); text-align: center; background-color: var(--secondary-color); padding: .5em 0; } -.card > div:first-of-type { +.terminal-card > div:first-of-type { padding: var(--global-space); } -.alert { +.terminal-alert { color: var(--font-color); padding: 1em; border: 1px solid var(--font-color); margin-bottom: var(--global-space); } -.alert-error { +.terminal-alert-error { color: var(--error-color); border-color: var(--error-color); } -.alert-primary { +.terminal-alert-primary { color: var(--primary-color); border-color: var(--primary-color); } @@ -555,7 +567,7 @@ input::placeholder, textarea::placeholder { width: 100%; } -.terminal-header { +.terminal-nav { display: flex; flex-direction: column; } @@ -632,7 +644,7 @@ input::placeholder, textarea::placeholder { } @media only screen and (min-width: 30em) { - .terminal-header { + .terminal-nav { flex-direction: row; } .terminal-menu ul { diff --git a/package-lock.json b/package-lock.json index 2c8b15c..0af7096 100644 --- a/package-lock.json +++ b/package-lock.json @@ -93,6 +93,15 @@ "integrity": "sha512-XxNTUzKnz1ctK3ZIcI2XUPlD96wbHP2nGqkPKpvk/HNRlPveYrXIVSTk9m3LcqOgDPg3B1nMvdV/K8wZd7PG4w==", "dev": true }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", @@ -111,12 +120,24 @@ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", "dev": true }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", "dev": true }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, "assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", @@ -302,6 +323,12 @@ "node-releases": "^1.1.3" } }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, "bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", @@ -331,6 +358,17 @@ "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", "dev": true }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, "caniuse-lite": { "version": "1.0.30000932", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000932.tgz", @@ -407,6 +445,21 @@ "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", "dev": true }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-spinners": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", + "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", + "dev": true + }, "clipboardy": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.3.tgz", @@ -434,6 +487,12 @@ } } }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true + }, "collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", @@ -541,6 +600,18 @@ "vary": "^1" } }, + "cp-file": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.0.0.tgz", + "integrity": "sha512-OtHMgPugkgwHlbph25wlMKd358lZNhX1Y2viUpPoFmlBPlEiPIRhztYWha11grbGPnlM+urp5saVmwsChCIOEg==", + "requires": { + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "nested-error-stacks": "^2.0.0", + "pify": "^3.0.0", + "safe-buffer": "^5.0.1" + } + }, "cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", @@ -552,6 +623,15 @@ "which": "^1.2.9" } }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -561,6 +641,30 @@ "ms": "2.0.0" } }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "dependencies": { + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + } + } + }, "decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", @@ -573,6 +677,15 @@ "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "requires": { + "clone": "^1.0.2" + } + }, "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", @@ -638,6 +751,12 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", "dev": true }, + "ejs": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.6.1.tgz", + "integrity": "sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==", + "dev": true + }, "electron-to-chromium": { "version": "1.3.108", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.108.tgz", @@ -650,6 +769,15 @@ "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", "dev": true }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -662,6 +790,12 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, "etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", @@ -895,6 +1029,15 @@ "unpipe": "~1.0.0" } }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -922,6 +1065,32 @@ "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=", "dev": true }, + "front-matter": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-2.3.0.tgz", + "integrity": "sha1-cgOviWzjV+4E4qpFFp6pHtf2dQQ=", + "dev": true, + "requires": { + "js-yaml": "^3.10.0" + } + }, + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, "fsevents": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.7.tgz", @@ -1463,6 +1632,20 @@ "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", "dev": true }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, "glob-parent": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", @@ -1487,8 +1670,7 @@ "graceful-fs": { "version": "4.1.15", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" }, "has-flag": { "version": "3.0.0", @@ -1528,6 +1710,12 @@ } } }, + "hosted-git-info": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", + "dev": true + }, "http-auth": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/http-auth/-/http-auth-3.1.3.tgz", @@ -1566,6 +1754,22 @@ "integrity": "sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w==", "dev": true }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", @@ -1598,6 +1802,12 @@ } } }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, "is-binary-path": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", @@ -1613,6 +1823,15 @@ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", "dev": true }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "dev": true, + "requires": { + "builtin-modules": "^1.0.0" + } + }, "is-data-descriptor": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", @@ -1699,6 +1918,12 @@ } } }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", @@ -1744,12 +1969,37 @@ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", "dev": true }, + "js-yaml": { + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.1.tgz", + "integrity": "sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", @@ -1777,12 +2027,53 @@ "serve-index": "^1.9.1" } }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", "dev": true }, + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, "lru-cache": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", @@ -1793,12 +2084,26 @@ "yallist": "^2.1.2" } }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "requires": { + "pify": "^3.0.0" + } + }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", "dev": true }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, "map-stream": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz", @@ -1814,6 +2119,29 @@ "object-visit": "^1.0.0" } }, + "marked": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.5.2.tgz", + "integrity": "sha512-fdZvBa7/vSQIZCi4uuwo2N3q+7jJURpMVCcbaX0S1Mg65WZ5ilXvC67MviJAsdjqqgD+CEq4RKo5AYGgINkVAA==", + "dev": true + }, + "meow": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", + "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0", + "yargs-parser": "^10.0.0" + } + }, "micromatch": { "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", @@ -1856,6 +2184,12 @@ "mime-db": "~1.37.0" } }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -1871,6 +2205,16 @@ "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true }, + "minimist-options": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", + "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, "mixin-deep": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", @@ -1935,6 +2279,25 @@ "dev": true, "optional": true }, + "nanogen": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/nanogen/-/nanogen-0.4.2.tgz", + "integrity": "sha512-UCoso7CDgAJF1H6NbQsf6NXu//HvA95aapgfwy3BCLpSRUmmDXinP7a/Iv5nzNnOSinTO1kR/UqL+DMqH6GE8w==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "chokidar": "^2.0.4", + "ejs": "^2.6.1", + "front-matter": "^2.3.0", + "fs-extra": "^7.0.0", + "glob": "^7.1.3", + "live-server": "^1.2.0", + "lodash.debounce": "^4.0.8", + "marked": "^0.5.1", + "meow": "^5.0.0", + "ora": "^3.0.0" + } + }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", @@ -1960,6 +2323,11 @@ "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", "dev": true }, + "nested-error-stacks": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz", + "integrity": "sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug==" + }, "node-releases": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.3.tgz", @@ -1969,6 +2337,18 @@ "semver": "^5.3.0" } }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, "normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", @@ -2069,6 +2449,24 @@ "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=", "dev": true }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, "opn": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", @@ -2078,12 +2476,60 @@ "is-wsl": "^1.1.0" } }, + "ora": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-3.0.0.tgz", + "integrity": "sha512-LBS97LFe2RV6GJmXBi6OKcETKyklHNMV0xw7BtsVn2MlsgsydyZetSCbCANr+PFLmDyv4KV88nn0eCKza665Mg==", + "dev": true, + "requires": { + "chalk": "^2.3.1", + "cli-cursor": "^2.1.0", + "cli-spinners": "^1.1.0", + "log-symbols": "^2.2.0", + "strip-ansi": "^4.0.0", + "wcwidth": "^1.0.1" + } + }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", "dev": true }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, "parseurl": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", @@ -2102,6 +2548,12 @@ "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", "dev": true }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -2126,6 +2578,15 @@ "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==", "dev": true }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, "pause-stream": { "version": "0.0.11", "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", @@ -2135,6 +2596,11 @@ "through": "~2.3" } }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -2215,6 +2681,12 @@ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, + "quick-lru": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", + "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "dev": true + }, "range-parser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", @@ -2233,6 +2705,27 @@ "strip-json-comments": "~2.0.1" } }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, "readable-stream": { "version": "2.3.6", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", @@ -2259,6 +2752,16 @@ "readable-stream": "^2.0.2" } }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, "regex-not": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", @@ -2312,6 +2815,16 @@ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", "dev": true }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, "ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", @@ -2321,8 +2834,7 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safe-regex": { "version": "1.1.0", @@ -2621,6 +3133,38 @@ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", "dev": true }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz", + "integrity": "sha512-uBIcIl3Ih6Phe3XHK1NqboJLdGfwr1UN3k6wSD1dZpmPsIkb8AGNbZYJ1fOBk834+Gxy8rpfDxrS6XLEMZMY2g==", + "dev": true + }, "split": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", @@ -2639,6 +3183,12 @@ "extend-shallow": "^3.0.0" } }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -2703,12 +3253,24 @@ "ansi-regex": "^3.0.0" } }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, "strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", "dev": true }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -2781,6 +3343,12 @@ "repeat-string": "^1.6.1" } }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + }, "union-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", @@ -2816,6 +3384,12 @@ } } }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, "unix-crypt-td-js": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unix-crypt-td-js/-/unix-crypt-td-js-1.0.0.tgz", @@ -2923,12 +3497,31 @@ "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", "dev": true }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", "dev": true }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "requires": { + "defaults": "^1.0.3" + } + }, "websocket-driver": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", @@ -2963,11 +3556,26 @@ "string-width": "^2.1.1" } }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", "dev": true + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } } } } diff --git a/package.json b/package.json index 39ebbe1..4d26adb 100644 --- a/package.json +++ b/package.json @@ -1,15 +1,14 @@ { "name": "terminal.css", "version": "0.3.2", - "description": "Modern and minimalistic CSS framework for terminal enthusiasts", + "description": "Modern and minimal CSS framework for terminal lovers.", "main": "dist/terminal.min.css", "directories": { - "docs": "docs", - "dist": "dist" + "doc": "docs" }, "scripts": { "start": "node ./scripts/start.js", - "build": "node ./scripts/build.js", + "build": "node ./scripts/build.js && node ./scripts/copyFiles.js", "test": "echo \"Error: no test specified\" && exit 1", "prepublish": "npm run build" }, @@ -36,7 +35,11 @@ "clean-css": "^4.2.1", "live-server": "^1.2.1", "mkdirp": "^0.5.1", + "nanogen": "^0.4.2", "postcss": "^7.0.14", "serve": "^10.1.1" + }, + "dependencies": { + "cp-file": "^6.0.0" } } diff --git a/scripts/build.js b/scripts/build.js index 66029a4..f41bec2 100644 --- a/scripts/build.js +++ b/scripts/build.js @@ -1,8 +1,14 @@ const build = require('./utils/build-fn') const path = require('path') +const nanogen = require('nanogen') +const staticSiteOptions = require('../site.config'); -build.run({ - sourceFile: path.resolve(__dirname, '../src/terminal.css'), - distFolder: path.resolve(__dirname, '../dist'), - docsFolder: path.resolve(__dirname, '../docs'), -}) \ No newline at end of file +const options = { + sourceFile: path.resolve(__dirname, '../lib/terminal.css'), + distFolder: path.resolve(__dirname, '../dist'), + docsFolder: path.resolve(__dirname, '../public'), + docsSrcFolder: path.resolve(__dirname, '../src') + } + +build.run(options); +nanogen.build({ site: staticSiteOptions.site }) diff --git a/scripts/copyFiles.js b/scripts/copyFiles.js new file mode 100644 index 0000000..1c83e0b --- /dev/null +++ b/scripts/copyFiles.js @@ -0,0 +1,8 @@ +const cpFile = require('cp-file'); +const path = require('path'); + +(async () => { + await cpFile(path.resolve(__dirname, '../src/browserconfig.xml'), './public/browserconfig.xml'); + await cpFile(path.resolve(__dirname, '../src/manifest.json'), './public/manifest.json'); + console.log('browserconfig and manifest copied'); +})(); \ No newline at end of file diff --git a/scripts/start.js b/scripts/start.js index 0c77215..f604ad0 100644 --- a/scripts/start.js +++ b/scripts/start.js @@ -2,6 +2,8 @@ const chokidar = require('chokidar'); const liveServer = require('live-server'); const build = require('./utils/build-fn'); const path = require('path'); +const nanogen = require('nanogen') +const staticSiteOptions = require('../site.config'); function debounce(func, wait, immediate) { var timeout; @@ -25,12 +27,14 @@ const serve = (flags) => { console.log(`Starting local server at http://localhost:${flags.port}`); const options = { - sourceFile: path.resolve(__dirname, '../src/terminal.css'), + sourceFile: path.resolve(__dirname, '../lib/terminal.css'), distFolder: path.resolve(__dirname, '../dist'), - docsFolder: path.resolve(__dirname, '../docs') + docsFolder: path.resolve(__dirname, '../public'), + docsSrcFolder: path.resolve(__dirname, '../src') } build.run(options); + nanogen.build({ site: staticSiteOptions.site }) liveServer.start({ port: flags.port, root: options.docsFolder, @@ -38,10 +42,11 @@ const serve = (flags) => { logLevel: 0 }); - chokidar.watch(options.sourceFile, { ignoreInitial: true }).on( + chokidar.watch([options.sourceFile, options.docsSrcFolder], { ignoreInitial: true }).on( 'all', debounce(() => { build.run(options); + nanogen.build({ site: staticSiteOptions.site }) console.log('Waiting for changes...'); }, 500) ); diff --git a/site.config.js b/site.config.js new file mode 100755 index 0000000..2400779 --- /dev/null +++ b/site.config.js @@ -0,0 +1,14 @@ +const pkg = require('./package.json') + +module.exports = { + build: { + srcPath: './src', + outputPath: './public' + }, + site: { + title: 'Terminal CSS', + libVersion: pkg.version, + description: pkg.description, + keywords: pkg.keywords + } +}; diff --git a/docs/favicon/android-icon-144x144.png b/src/assets/favicon/android-icon-144x144.png similarity index 100% rename from docs/favicon/android-icon-144x144.png rename to src/assets/favicon/android-icon-144x144.png diff --git a/docs/favicon/android-icon-192x192.png b/src/assets/favicon/android-icon-192x192.png similarity index 100% rename from docs/favicon/android-icon-192x192.png rename to src/assets/favicon/android-icon-192x192.png diff --git a/docs/favicon/android-icon-36x36.png b/src/assets/favicon/android-icon-36x36.png similarity index 100% rename from docs/favicon/android-icon-36x36.png rename to src/assets/favicon/android-icon-36x36.png diff --git a/docs/favicon/android-icon-48x48.png b/src/assets/favicon/android-icon-48x48.png similarity index 100% rename from docs/favicon/android-icon-48x48.png rename to src/assets/favicon/android-icon-48x48.png diff --git a/docs/favicon/android-icon-72x72.png b/src/assets/favicon/android-icon-72x72.png similarity index 100% rename from docs/favicon/android-icon-72x72.png rename to src/assets/favicon/android-icon-72x72.png diff --git a/docs/favicon/android-icon-96x96.png b/src/assets/favicon/android-icon-96x96.png similarity index 100% rename from docs/favicon/android-icon-96x96.png rename to src/assets/favicon/android-icon-96x96.png diff --git a/docs/favicon/apple-icon-114x114.png b/src/assets/favicon/apple-icon-114x114.png similarity index 100% rename from docs/favicon/apple-icon-114x114.png rename to src/assets/favicon/apple-icon-114x114.png diff --git a/docs/favicon/apple-icon-120x120.png b/src/assets/favicon/apple-icon-120x120.png similarity index 100% rename from docs/favicon/apple-icon-120x120.png rename to src/assets/favicon/apple-icon-120x120.png diff --git a/docs/favicon/apple-icon-144x144.png b/src/assets/favicon/apple-icon-144x144.png similarity index 100% rename from docs/favicon/apple-icon-144x144.png rename to src/assets/favicon/apple-icon-144x144.png diff --git a/docs/favicon/apple-icon-152x152.png b/src/assets/favicon/apple-icon-152x152.png similarity index 100% rename from docs/favicon/apple-icon-152x152.png rename to src/assets/favicon/apple-icon-152x152.png diff --git a/docs/favicon/apple-icon-180x180.png b/src/assets/favicon/apple-icon-180x180.png similarity index 100% rename from docs/favicon/apple-icon-180x180.png rename to src/assets/favicon/apple-icon-180x180.png diff --git a/docs/favicon/apple-icon-57x57.png b/src/assets/favicon/apple-icon-57x57.png similarity index 100% rename from docs/favicon/apple-icon-57x57.png rename to src/assets/favicon/apple-icon-57x57.png diff --git a/docs/favicon/apple-icon-60x60.png b/src/assets/favicon/apple-icon-60x60.png similarity index 100% rename from docs/favicon/apple-icon-60x60.png rename to src/assets/favicon/apple-icon-60x60.png diff --git a/docs/favicon/apple-icon-72x72.png b/src/assets/favicon/apple-icon-72x72.png similarity index 100% rename from docs/favicon/apple-icon-72x72.png rename to src/assets/favicon/apple-icon-72x72.png diff --git a/docs/favicon/apple-icon-76x76.png b/src/assets/favicon/apple-icon-76x76.png similarity index 100% rename from docs/favicon/apple-icon-76x76.png rename to src/assets/favicon/apple-icon-76x76.png diff --git a/docs/favicon/apple-icon-precomposed.png b/src/assets/favicon/apple-icon-precomposed.png similarity index 100% rename from docs/favicon/apple-icon-precomposed.png rename to src/assets/favicon/apple-icon-precomposed.png diff --git a/docs/favicon/apple-icon.png b/src/assets/favicon/apple-icon.png similarity index 100% rename from docs/favicon/apple-icon.png rename to src/assets/favicon/apple-icon.png diff --git a/docs/favicon/favicon-16x16.png b/src/assets/favicon/favicon-16x16.png similarity index 100% rename from docs/favicon/favicon-16x16.png rename to src/assets/favicon/favicon-16x16.png diff --git a/docs/favicon/favicon-32x32.png b/src/assets/favicon/favicon-32x32.png similarity index 100% rename from docs/favicon/favicon-32x32.png rename to src/assets/favicon/favicon-32x32.png diff --git a/docs/favicon/favicon-96x96.png b/src/assets/favicon/favicon-96x96.png similarity index 100% rename from docs/favicon/favicon-96x96.png rename to src/assets/favicon/favicon-96x96.png diff --git a/docs/favicon/favicon.ico b/src/assets/favicon/favicon.ico similarity index 100% rename from docs/favicon/favicon.ico rename to src/assets/favicon/favicon.ico diff --git a/docs/favicon/ms-icon-144x144.png b/src/assets/favicon/ms-icon-144x144.png similarity index 100% rename from docs/favicon/ms-icon-144x144.png rename to src/assets/favicon/ms-icon-144x144.png diff --git a/docs/favicon/ms-icon-150x150.png b/src/assets/favicon/ms-icon-150x150.png similarity index 100% rename from docs/favicon/ms-icon-150x150.png rename to src/assets/favicon/ms-icon-150x150.png diff --git a/docs/favicon/ms-icon-310x310.png b/src/assets/favicon/ms-icon-310x310.png similarity index 100% rename from docs/favicon/ms-icon-310x310.png rename to src/assets/favicon/ms-icon-310x310.png diff --git a/docs/favicon/ms-icon-70x70.png b/src/assets/favicon/ms-icon-70x70.png similarity index 100% rename from docs/favicon/ms-icon-70x70.png rename to src/assets/favicon/ms-icon-70x70.png diff --git a/docs/fonts/eot/FiraCode-Bold.eot b/src/assets/fonts/eot/FiraCode-Bold.eot similarity index 100% rename from docs/fonts/eot/FiraCode-Bold.eot rename to src/assets/fonts/eot/FiraCode-Bold.eot diff --git a/docs/fonts/eot/FiraCode-Light.eot b/src/assets/fonts/eot/FiraCode-Light.eot similarity index 100% rename from docs/fonts/eot/FiraCode-Light.eot rename to src/assets/fonts/eot/FiraCode-Light.eot diff --git a/docs/fonts/eot/FiraCode-Medium.eot b/src/assets/fonts/eot/FiraCode-Medium.eot similarity index 100% rename from docs/fonts/eot/FiraCode-Medium.eot rename to src/assets/fonts/eot/FiraCode-Medium.eot diff --git a/docs/fonts/eot/FiraCode-Regular.eot b/src/assets/fonts/eot/FiraCode-Regular.eot similarity index 100% rename from docs/fonts/eot/FiraCode-Regular.eot rename to src/assets/fonts/eot/FiraCode-Regular.eot diff --git a/docs/fonts/otf/FiraCode-Bold.otf b/src/assets/fonts/otf/FiraCode-Bold.otf similarity index 100% rename from docs/fonts/otf/FiraCode-Bold.otf rename to src/assets/fonts/otf/FiraCode-Bold.otf diff --git a/docs/fonts/otf/FiraCode-Light.otf b/src/assets/fonts/otf/FiraCode-Light.otf similarity index 100% rename from docs/fonts/otf/FiraCode-Light.otf rename to src/assets/fonts/otf/FiraCode-Light.otf diff --git a/docs/fonts/otf/FiraCode-Medium.otf b/src/assets/fonts/otf/FiraCode-Medium.otf similarity index 100% rename from docs/fonts/otf/FiraCode-Medium.otf rename to src/assets/fonts/otf/FiraCode-Medium.otf diff --git a/docs/fonts/otf/FiraCode-Regular.otf b/src/assets/fonts/otf/FiraCode-Regular.otf similarity index 100% rename from docs/fonts/otf/FiraCode-Regular.otf rename to src/assets/fonts/otf/FiraCode-Regular.otf diff --git a/docs/fonts/otf/FiraCode-Retina.otf b/src/assets/fonts/otf/FiraCode-Retina.otf similarity index 100% rename from docs/fonts/otf/FiraCode-Retina.otf rename to src/assets/fonts/otf/FiraCode-Retina.otf diff --git a/docs/fonts/ttf/FiraCode-Bold.ttf b/src/assets/fonts/ttf/FiraCode-Bold.ttf similarity index 100% rename from docs/fonts/ttf/FiraCode-Bold.ttf rename to src/assets/fonts/ttf/FiraCode-Bold.ttf diff --git a/docs/fonts/ttf/FiraCode-Light.ttf b/src/assets/fonts/ttf/FiraCode-Light.ttf similarity index 100% rename from docs/fonts/ttf/FiraCode-Light.ttf rename to src/assets/fonts/ttf/FiraCode-Light.ttf diff --git a/docs/fonts/ttf/FiraCode-Medium.ttf b/src/assets/fonts/ttf/FiraCode-Medium.ttf similarity index 100% rename from docs/fonts/ttf/FiraCode-Medium.ttf rename to src/assets/fonts/ttf/FiraCode-Medium.ttf diff --git a/docs/fonts/ttf/FiraCode-Regular.ttf b/src/assets/fonts/ttf/FiraCode-Regular.ttf similarity index 100% rename from docs/fonts/ttf/FiraCode-Regular.ttf rename to src/assets/fonts/ttf/FiraCode-Regular.ttf diff --git a/docs/fonts/ttf/FiraCode-Retina.ttf b/src/assets/fonts/ttf/FiraCode-Retina.ttf similarity index 100% rename from docs/fonts/ttf/FiraCode-Retina.ttf rename to src/assets/fonts/ttf/FiraCode-Retina.ttf diff --git a/docs/fonts/woff/FiraCode-Bold.woff b/src/assets/fonts/woff/FiraCode-Bold.woff similarity index 100% rename from docs/fonts/woff/FiraCode-Bold.woff rename to src/assets/fonts/woff/FiraCode-Bold.woff diff --git a/docs/fonts/woff/FiraCode-Light.woff b/src/assets/fonts/woff/FiraCode-Light.woff similarity index 100% rename from docs/fonts/woff/FiraCode-Light.woff rename to src/assets/fonts/woff/FiraCode-Light.woff diff --git a/docs/fonts/woff/FiraCode-Medium.woff b/src/assets/fonts/woff/FiraCode-Medium.woff similarity index 100% rename from docs/fonts/woff/FiraCode-Medium.woff rename to src/assets/fonts/woff/FiraCode-Medium.woff diff --git a/docs/fonts/woff/FiraCode-Regular.woff b/src/assets/fonts/woff/FiraCode-Regular.woff similarity index 100% rename from docs/fonts/woff/FiraCode-Regular.woff rename to src/assets/fonts/woff/FiraCode-Regular.woff diff --git a/docs/fonts/woff2/FiraCode-Bold.woff2 b/src/assets/fonts/woff2/FiraCode-Bold.woff2 similarity index 100% rename from docs/fonts/woff2/FiraCode-Bold.woff2 rename to src/assets/fonts/woff2/FiraCode-Bold.woff2 diff --git a/docs/fonts/woff2/FiraCode-Light.woff2 b/src/assets/fonts/woff2/FiraCode-Light.woff2 similarity index 100% rename from docs/fonts/woff2/FiraCode-Light.woff2 rename to src/assets/fonts/woff2/FiraCode-Light.woff2 diff --git a/docs/fonts/woff2/FiraCode-Medium.woff2 b/src/assets/fonts/woff2/FiraCode-Medium.woff2 similarity index 100% rename from docs/fonts/woff2/FiraCode-Medium.woff2 rename to src/assets/fonts/woff2/FiraCode-Medium.woff2 diff --git a/docs/fonts/woff2/FiraCode-Regular.woff2 b/src/assets/fonts/woff2/FiraCode-Regular.woff2 similarity index 100% rename from docs/fonts/woff2/FiraCode-Regular.woff2 rename to src/assets/fonts/woff2/FiraCode-Regular.woff2 diff --git a/docs/browserconfig.xml b/src/browserconfig.xml similarity index 100% rename from docs/browserconfig.xml rename to src/browserconfig.xml diff --git a/src/dark.css b/src/dark.css deleted file mode 100644 index 7ea78b1..0000000 --- a/src/dark.css +++ /dev/null @@ -1,16 +0,0 @@ -:root { - --global-font-size: 14px; - --global-line-height: 1.4em; - --global-space: 10px; - --font-stack: 'Fira Code',Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif; - --background-color: #14171a; - --page-width: 70em; - --font-color: #d9e0e2; - --invert-font-color: #131719; - --secondary-color: #657786; - --tertiary-color: #14171a; - --primary-color: #1da1f2; - --error-color: rgb(224, 36, 94); - --progress-bar-background: #e1e8ed; - --progress-bar-fill: #aab8c2; -} \ No newline at end of file diff --git a/src/layouts/dark.ejs b/src/layouts/dark.ejs new file mode 100644 index 0000000..b257fce --- /dev/null +++ b/src/layouts/dark.ejs @@ -0,0 +1,42 @@ + + + + <%- include('partials/head') %> + + + + <%- include('partials/git-corner') %> + <%- include('partials/navigation', { "page": "dark" }) %> +
+

+ <%- site.description %> +

+ + <%- body %> +
+
+ <%- include('partials/aside') %> + <%- include('partials/components') %> +
+
+ <%- include('partials/bottom-scripts') %> + + diff --git a/src/layouts/default.ejs b/src/layouts/default.ejs new file mode 100644 index 0000000..d519357 --- /dev/null +++ b/src/layouts/default.ejs @@ -0,0 +1,23 @@ + + + + <%- include('partials/head') %> + + + <%- include('partials/git-corner') %> + <%- include('partials/navigation', { "page": "main" }) %> +
+

+ <%- site.description %> +

+ + <%- body %> +
+
+ <%- include('partials/aside') %> + <%- include('partials/components') %> +
+
+ <%- include('partials/bottom-scripts') %> + + diff --git a/src/layouts/sans.ejs b/src/layouts/sans.ejs new file mode 100644 index 0000000..a97f7ca --- /dev/null +++ b/src/layouts/sans.ejs @@ -0,0 +1,30 @@ + + + + <%- include('partials/head') %> + + + + <%- include('partials/git-corner') %> + <%- include('partials/navigation', { "page": "sans" }) %> +
+

+ <%- site.description %> +

+ + <%- body %> +
+
+ <%- include('partials/aside') %> + <%- include('partials/components') %> +
+
+ <%- include('partials/bottom-scripts') %> + + diff --git a/docs/manifest.json b/src/manifest.json similarity index 100% rename from docs/manifest.json rename to src/manifest.json diff --git a/src/pages/dark.md b/src/pages/dark.md new file mode 100644 index 0000000..a66178d --- /dev/null +++ b/src/pages/dark.md @@ -0,0 +1,31 @@ +--- +title: Terminal CSS - Dark +layout: dark +--- + +## Project Goals + +Terminal CSS has no overhead and is lightweight **(<= 2.9k gzip)**. +The source is written in **pure css** to be accessible for everybody and easy to contribute. + +## Markdown ❤️ Terminal CSS + +It's perfect for your *personal website*, *blog*, or *side project*. + +## How to use + +When using something like Webpack just install with `npm i terminal.css`. + +```js +import 'terminal.css' +``` + +Terminal CSS is also available via [CDN](https://unpkg.com/terminal.css@0.4.0/dist/terminal.min.css) + +```html + +``` + +## Themes + +To create your own theme just open the dev-tools and edit the CSS Variables. Copy and paste it to your website. Done! \ No newline at end of file diff --git a/src/pages/index.md b/src/pages/index.md new file mode 100644 index 0000000..8e1e204 --- /dev/null +++ b/src/pages/index.md @@ -0,0 +1,31 @@ +--- +title: Terminal CSS +layout: default +--- + +## Project Goals + +Terminal CSS has no overhead and is lightweight **(<= 2.9k gzip)**. +The source is written in **pure css** to be accessible for everybody and easy to contribute. + +## Markdown ❤️ Terminal CSS + +It's perfect for your *personal website*, *blog*, or *side project*. + +## How to use + +When using something like Webpack just install with `npm i terminal.css`. + +```js +import 'terminal.css' +``` + +Terminal CSS is also available via [CDN](https://unpkg.com/terminal.css@0.4.0/dist/terminal.min.css) + +```html + +``` + +## Themes + +To create your own theme just open the dev-tools and edit the CSS Variables. Copy and paste it to your website. Done! \ No newline at end of file diff --git a/src/pages/sans-serif.md b/src/pages/sans-serif.md new file mode 100644 index 0000000..528d935 --- /dev/null +++ b/src/pages/sans-serif.md @@ -0,0 +1,31 @@ +--- +title: Terminal CSS +layout: sans +--- + +## Project Goals + +Terminal CSS has no overhead and is lightweight **(<= 2.9k gzip)**. +The source is written in **pure css** to be accessible for everybody and easy to contribute. + +## Markdown ❤️ Terminal CSS + +It's perfect for your *personal website*, *blog*, or *side project*. + +## How to use + +When using something like Webpack just install with `npm i terminal.css`. + +```js +import 'terminal.css' +``` + +Terminal CSS is also available via [CDN](https://unpkg.com/terminal.css@0.4.0/dist/terminal.min.css) + +```html + +``` + +## Themes + +To create your own theme just open the dev-tools and edit the CSS Variables. Copy and paste it to your website. Done! \ No newline at end of file diff --git a/src/partials/aside.ejs b/src/partials/aside.ejs new file mode 100644 index 0000000..9e95584 --- /dev/null +++ b/src/partials/aside.ejs @@ -0,0 +1,26 @@ + diff --git a/src/partials/bottom-scripts.ejs b/src/partials/bottom-scripts.ejs new file mode 100644 index 0000000..534fadb --- /dev/null +++ b/src/partials/bottom-scripts.ejs @@ -0,0 +1,8 @@ + + diff --git a/src/partials/components.ejs b/src/partials/components.ejs new file mode 100644 index 0000000..f150047 --- /dev/null +++ b/src/partials/components.ejs @@ -0,0 +1,31 @@ +
+ <%- include('components/grid') %> +
+ <%- include('components/nav') %> +
+ <%- include('components/lists') %> +
+ <%- include('components/typography') %> +
+ <%- include('components/tables') %> +
+ <%- include('components/special-elements') %> +
+ <%- include('components/forms') %> +
+ <%- include('components/progress') %> +
+ <%- include('components/buttons') %> +
+ <%- include('components/card') %> +
+ <%- include('components/alerts') %> +
+ <%- include('components/figure') %> +
+ <%- include('components/highlight-js.ejs') %> +
+ <%- include('footer') %> +
+ <%- include('version') %> +
\ No newline at end of file diff --git a/src/partials/components/alerts.ejs b/src/partials/components/alerts.ejs new file mode 100644 index 0000000..8d301df --- /dev/null +++ b/src/partials/components/alerts.ejs @@ -0,0 +1,6 @@ +
+

Alerts

+
Default message
+
Primary message
+
Error message
+
\ No newline at end of file diff --git a/src/partials/components/buttons.ejs b/src/partials/components/buttons.ejs new file mode 100644 index 0000000..ccd1cc5 --- /dev/null +++ b/src/partials/components/buttons.ejs @@ -0,0 +1,18 @@ +
+

Buttons

+

+

+

+

+

+

+

+

Button Group

+
+ + + +
+
+
diff --git a/src/partials/components/card.ejs b/src/partials/components/card.ejs new file mode 100644 index 0000000..860be34 --- /dev/null +++ b/src/partials/components/card.ejs @@ -0,0 +1,12 @@ +
+

Cards

+
+
Card Title
+
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit. Expedita, quas + ex vero enim in doloribus officiis ullam vel nam esse sapiente velit + incidunt. Eaque quod et, aut maiores excepturi sint. +
+
+
+
diff --git a/src/partials/components/figure.ejs b/src/partials/components/figure.ejs new file mode 100644 index 0000000..2c694ab --- /dev/null +++ b/src/partials/components/figure.ejs @@ -0,0 +1,11 @@ +
+

Image with caption

+
+ Image with caption +
Image with caption
+
+
diff --git a/src/partials/components/forms.ejs b/src/partials/components/forms.ejs new file mode 100644 index 0000000..9645b12 --- /dev/null +++ b/src/partials/components/forms.ejs @@ -0,0 +1,47 @@ +
+

Forms

+
+
+ Form legend +
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+
\ No newline at end of file diff --git a/src/partials/components/grid.ejs b/src/partials/components/grid.ejs new file mode 100644 index 0000000..31e0c42 --- /dev/null +++ b/src/partials/components/grid.ejs @@ -0,0 +1,59 @@ +
+
+

Grid System

+

+ Terminal CSS has no build in grid system, however, you can roll your own with Flexbox or CSS Grid. +

+
+
+ random image + random image + random image + random image + random image + random image + random image +
+
\ No newline at end of file diff --git a/src/partials/components/highlight-js.ejs b/src/partials/components/highlight-js.ejs new file mode 100644 index 0000000..a570fdc --- /dev/null +++ b/src/partials/components/highlight-js.ejs @@ -0,0 +1,80 @@ +
+
+

Supports Highlight.js

+

Terminal CSS comes with a build in theme for Highlight.js

+
+
+
+.hljs {
+  display: block;
+  overflow-x: auto;
+  padding: 0.5em;
+  background: var(--block-background-color);
+  color: var(--font-color);
+}
+
+.hljs-comment,
+.hljs-quote {
+  color: var(--secondary-color);
+}
+
+.hljs-variable {
+    color: var(--font-color);
+}
+
+.hljs-keyword,
+.hljs-selector-tag,
+.hljs-built_in,
+.hljs-name,
+.hljs-tag {
+  color: var(--primary-color);
+}
+
+.hljs-string,
+.hljs-title,
+.hljs-section,
+.hljs-attribute,
+.hljs-literal,
+.hljs-template-tag,
+.hljs-template-variable,
+.hljs-type,
+.hljs-addition {
+  color: var(--secondary-color);
+}
+
+.hljs-string {
+    color: var(--secondary-color);
+}
+
+.hljs-deletion,
+.hljs-selector-attr,
+.hljs-selector-pseudo,
+.hljs-meta {
+  color: var(--primary-color);
+}
+
+.hljs-doctag {
+  color: var(--secondary-color);
+}
+
+.hljs-attr {
+  color: var(--primary-color);
+}
+
+.hljs-symbol,
+.hljs-bullet,
+.hljs-link {
+  color: var(--primary-color);
+}
+
+
+.hljs-emphasis {
+  font-style: italic;
+}
+
+.hljs-strong {
+  font-weight: bold;
+}
+
+
+
\ No newline at end of file diff --git a/src/partials/components/lists.ejs b/src/partials/components/lists.ejs new file mode 100644 index 0000000..cf8fa4e --- /dev/null +++ b/src/partials/components/lists.ejs @@ -0,0 +1,39 @@ +
+

Lists

+ +

Don'tforgetOrderedlists:

+
    +
  1. Loremipsumdolorsitamet,consectetueradipiscingelit.
  2. +
  3. + Aliquamtinciduntmauriseurisus. +
      +
    1. Loremipsumdolorsitamet,consectetueradipiscingelit.
    2. +
    3. Aliquamtinciduntmauriseurisus.
    4. +
    +
  4. +
  5. Loremipsumdolorsitamet,consectetueradipiscingelit.
  6. +
  7. Aliquamtinciduntmauriseurisus.
  8. +
+

Descriptionlistsarealsoincluded.

+
+
Descriptionlisttitle01
+
Descriptionlistdescription01
+
Descriptionlisttitle02
+
Descriptionlistdescription02
+
Descriptionlistdescription03
+
+
diff --git a/src/partials/components/nav.ejs b/src/partials/components/nav.ejs new file mode 100644 index 0000000..d91e2b9 --- /dev/null +++ b/src/partials/components/nav.ejs @@ -0,0 +1,15 @@ +
+
+
+ + +
+
diff --git a/src/partials/components/progress.ejs b/src/partials/components/progress.ejs new file mode 100644 index 0000000..2bc0c40 --- /dev/null +++ b/src/partials/components/progress.ejs @@ -0,0 +1,25 @@ +
+

Progress Bar

+
+

With only an arrow

+
+
+
+

With a percentage showing above the arrow

+
+
+
+

Without arrow

+
+
+
+
+
diff --git a/src/partials/components/special-elements.ejs b/src/partials/components/special-elements.ejs new file mode 100644 index 0000000..e941a02 --- /dev/null +++ b/src/partials/components/special-elements.ejs @@ -0,0 +1,48 @@ +
+

Special Elements

+

Terminal CSS also supports a range of special elements.

+ +

Blockquote

+
+

+ This is a properly formatted blockquote, btw. Measuring + programming progress by lines of code is like measuring aircraft building + progress by weight. +

+ +
+

Misc

+

+ I am the a tag example
+ I am the abbr tag example
+ I am the b tag example
+ I am the cite tag example
+ I am the code tag example
+ I am the del tag example
+ I am the dfn tag example
+ I am the em tag example
+ I am the i tag example
+ I am the ins tag example
+ I am the kbd tag example
+ I am the q tag example
+ I am the samp tag example
+ I am the small tag example
+ I am the span tag example
+ I am the strong tag example
+ I am the sub tag example
+ I am the sup tag example
+ I am the var tag example
+

+ +

Address

+
+ Mozilla Foundation
+ 1981 Landings Drive
+ Building K
+ Mountain View, CA 94043-0801
+ USA +
+
+
diff --git a/src/partials/components/tables.ejs b/src/partials/components/tables.ejs new file mode 100644 index 0000000..d17a2e9 --- /dev/null +++ b/src/partials/components/tables.ejs @@ -0,0 +1,85 @@ +
+
+

Tables

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Most Downloaded Movies on BitTorrent, 2011 +
RankMovieDownloadsGrosses
torrentfreak.com
1Fast Five9,260,000$626,137,675
2The Hangover II8,840,000$581,464,305
3Thor8,330,000$449,326,618
4Source Code7,910,000$123,278,618
5I Am Number Four7,670,000$144,500,437
6Sucker Punch7,200,000$89,792,502
7127 Hours6,910,000$60,738,797
8Rango6,480,000$245,155,348
9The King’s Speech6,250,000$414,211,549
10Harry Potter and the Deathly Hallows Part 26,030,000$1,328,111,219
+
\ No newline at end of file diff --git a/src/partials/components/typography.ejs b/src/partials/components/typography.ejs new file mode 100644 index 0000000..c4a1ff7 --- /dev/null +++ b/src/partials/components/typography.ejs @@ -0,0 +1,26 @@ +
+
+

Typography

+

Level 1 Heading

+

+ Pellentesque habitant morbi tristique senectus et netus et malesuada fames + ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, + tempor sit amet, ante. +

+

Level 2 Heading

+

+ Pellentesque habitant morbi tristique senectus et netus et malesuada fames + ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, + tempor sit amet, ante. +

+

Level 3 Heading

+

+ Pellentesque habitant morbi tristique senectus et netus et malesuada fames + ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, + tempor sit amet, ante. +

+

Level 4 Heading

+
Level 5 Heading
+
Level 5 Heading
+
+
diff --git a/src/partials/footer.ejs b/src/partials/footer.ejs new file mode 100644 index 0000000..d01d5c9 --- /dev/null +++ b/src/partials/footer.ejs @@ -0,0 +1,10 @@ + diff --git a/src/partials/git-corner.ejs b/src/partials/git-corner.ejs new file mode 100644 index 0000000..8a61334 --- /dev/null +++ b/src/partials/git-corner.ejs @@ -0,0 +1,21 @@ + + + + + + + diff --git a/src/partials/head.ejs b/src/partials/head.ejs new file mode 100644 index 0000000..cfbcd35 --- /dev/null +++ b/src/partials/head.ejs @@ -0,0 +1,155 @@ + + + + + + + <%- site.title %> + + + + + + + + + + + + + + + + diff --git a/src/partials/navigation.ejs b/src/partials/navigation.ejs new file mode 100644 index 0000000..60ac8bf --- /dev/null +++ b/src/partials/navigation.ejs @@ -0,0 +1,24 @@ +
+
+ + +
+
diff --git a/src/partials/version.ejs b/src/partials/version.ejs new file mode 100644 index 0000000..435c53d --- /dev/null +++ b/src/partials/version.ejs @@ -0,0 +1,4 @@ +
+
+

Version: <%- site.libVersion %> Top

+
\ No newline at end of file