├── .eleventy.js
├── .gitignore
├── LICENSE
├── _process
├── js
│ ├── App.vue
│ ├── app.js
│ └── script.js
├── prism
│ └── prism-xonokai.css
└── scss
│ ├── _custom.scss
│ └── style.scss
├── _site
├── 404.md
├── _data
│ └── metadata.json
├── _templates
│ ├── getTagList.js
│ ├── header.njk
│ ├── items.njk
│ ├── layouts
│ │ ├── base.njk
│ │ ├── nohero.njk
│ │ ├── page-home.njk
│ │ ├── page.njk
│ │ └── post.njk
│ ├── links.njk
│ ├── navbar.njk
│ ├── pagination.njk
│ ├── postitem.njk
│ ├── search.njk
│ ├── sidebar.njk
│ ├── social.njk
│ └── tags.njk
├── about
│ └── index.md
├── courses
│ ├── 2011-11-19-adaptive-websites-for-multiple-screens.md
│ ├── 2012-01-20-css-styling-forms.md
│ ├── 2012-05-25-view-source.md
│ ├── 2013-01-18-javascript-ajax.md
│ ├── 2013-03-15-javascript-json.md
│ ├── 2013-04-23-javacript-php-processing-forms.md
│ ├── 2013-06-10-javascript-dom.md
│ ├── 2013-07-31-emmet-coding-faster.md
│ ├── 2013-08-13-bootstrap-3-advanced-web-development.md
│ ├── 2013-09-05-reveal-js-presentations.md
│ ├── 2013-09-17-javascript-events.md
│ ├── 2013-10-30-sass-compass-responsive-css.md
│ ├── 2013-12-16-javascript-functions.md
│ ├── 2014-06-23-gulp-js-git-browserify.md
│ ├── 2015-02-15-bootstrap-3-layouts-reponsive-single-page-design.md
│ ├── 2015-06-13-grunt-js-workflows.md
│ ├── 2015-07-06-git-github.md
│ ├── 2015-08-26-bootstrap-3-essential-training.md
│ ├── 2015-10-06-sass-essential-training.md
│ ├── 2015-11-10-angular-js-1-form-validation.md
│ ├── 2015-12-23-markdown-learning.md
│ ├── 2016-01-14-postcss-first-look.md
│ ├── 2016-01-22-postcss-responsive-single-page-design.md
│ ├── 2016-06-23-full-stack-vs-front-end.md
│ ├── 2016-09-29-npm-tooling-with-scripts.md
│ ├── 2016-11-17-electron-building-cross-platform-desktop-apps.md
│ ├── 2016-12-13-progressive-web-app.md
│ ├── 2016-12-21-angularjs-1-registration.md
│ ├── 2017-01-24-angular-js-1-building-a-data-driven-application.md
│ ├── 2017-02-08-angular-js-2-learning.md
│ ├── 2017-03-31-bootstrap-4-essential-training.md
│ ├── 2017-04-28-post-css-next-generation-design.md
│ ├── 2017-05-25-d3-js-data-visualization.md
│ ├── 2017-10-11-vue-js-building-an-interface.md
│ ├── 2017-11-08-angular-js-1-learning.md
│ ├── 2017-12-19-web-developer-interview-code.md
│ ├── 2018-04-19-jquery-building-an-interface.md
│ ├── 2018-08-06-javascript-code-clinic.md
│ ├── 2018-09-17-bootstrap-4-layouts.md
│ ├── 2018-11-07-react-single-page-applications.md
│ ├── 2018-12-03-Learning-Atom.md
│ ├── 2018-12-13-github-actions-first-look.md
│ ├── 2019-01-11-angular-building-an-interface.md
│ ├── 2019-02-13-react-js-building-an-interface.md
│ └── _index.njk
├── css
│ └── prism
│ │ ├── prism-a11y-dark.css
│ │ ├── prism-atom-dark.css
│ │ ├── prism-base16-ateliersulphurpool.light.css
│ │ ├── prism-cb.css
│ │ ├── prism-darcula.css
│ │ ├── prism-duotone-dark.css
│ │ ├── prism-duotone-earth.css
│ │ ├── prism-duotone-forest.css
│ │ ├── prism-duotone-light.css
│ │ ├── prism-duotone-sea.css
│ │ ├── prism-duotone-space.css
│ │ ├── prism-ghcolors.css
│ │ ├── prism-hopscotch.css
│ │ ├── prism-pojoaque.css
│ │ ├── prism-vs.css
│ │ └── prism-xonokai.css
├── feed
│ ├── feed.njk
│ └── htaccess.njk
├── images
│ ├── courses
│ │ ├── adaptive.jpg
│ │ ├── adaptive_tn.png
│ │ ├── ajax.jpg
│ │ ├── ajax_tn.png
│ │ ├── angular-interface.jpg
│ │ ├── angular-interface_tn.png
│ │ ├── angular1-registration.jpg
│ │ ├── angular1-registration_tn.png
│ │ ├── angularjs1-datadriven.jpg
│ │ ├── angularjs1-datadriven_tn.png
│ │ ├── angularjs1-formvalidation.jpg
│ │ ├── angularjs1-formvalidation_tn.png
│ │ ├── angularjs1-learning.jpg
│ │ ├── angularjs1-learning_tn.png
│ │ ├── angularjs2.jpg
│ │ ├── angularjs2_tn.png
│ │ ├── bootstrap-singlepagedesign.jpg
│ │ ├── bootstrap-singlepagedesign_tn.png
│ │ ├── bootstrap3-advanced.jpg
│ │ ├── bootstrap3-advanced_tn.png
│ │ ├── bootstrap3.jpg
│ │ ├── bootstrap3_tn.png
│ │ ├── bootstrap4.jpg
│ │ ├── bootstrap4_tn.png
│ │ ├── bootstrap4layouts.jpg
│ │ ├── bootstrap4layouts_tn.png
│ │ ├── codeclinicjs.jpg
│ │ ├── codeclinicjs_tn.png
│ │ ├── cssforms.jpg
│ │ ├── cssforms_tn.png
│ │ ├── cssnext.jpg
│ │ ├── cssnext_tn.png
│ │ ├── d3.jpg
│ │ ├── d3_tn.png
│ │ ├── electron.jpg
│ │ ├── electron_tn.png
│ │ ├── emmet.jpg
│ │ ├── emmet_tn.png
│ │ ├── express.jpg
│ │ ├── express_tn.png
│ │ ├── fireworks.jpg
│ │ ├── fireworks_tn.png
│ │ ├── fullstackvsfrontend.jpg
│ │ ├── fullstackvsfrontend_tn.png
│ │ ├── gitandgithub.jpg
│ │ ├── gitandgithub_tn.png
│ │ ├── githubactions.jpg
│ │ ├── githubactions_tn.png
│ │ ├── javascript-dom.jpg
│ │ ├── javascript-dom_tn.png
│ │ ├── javascript-events.jpg
│ │ ├── javascript-events_tn.png
│ │ ├── javascript-functions.jpg
│ │ ├── javascript-functions_tn.png
│ │ ├── javascriptphp-forms.jpg
│ │ ├── javascriptphp-forms_tn.png
│ │ ├── jqueryinterface.jpg
│ │ ├── jqueryinterface_tn.png
│ │ ├── json.jpg
│ │ ├── json_tn.png
│ │ ├── learnatom.jpg
│ │ ├── learnatom_tn.png
│ │ ├── markdown.jpg
│ │ ├── markdown_tn.png
│ │ ├── masteringwebdeveloper.jpg
│ │ ├── masteringwebdeveloper_tn.png
│ │ ├── npm.jpg
│ │ ├── npm_tn.png
│ │ ├── npmscripts.jpg
│ │ ├── npmscripts_tn.png
│ │ ├── postcss.jpg
│ │ ├── postcss_tn.png
│ │ ├── postcssfirstlook.jpg
│ │ ├── postcssfirstlook_tn.png
│ │ ├── progressivewebapp.jpg
│ │ ├── progressivewebapp_tn.png
│ │ ├── react-interface.jpg
│ │ ├── react-interface_tn.png
│ │ ├── react-spas.jpg
│ │ ├── react-spas_tn.png
│ │ ├── react.jpg
│ │ ├── react_tn.png
│ │ ├── reveal.jpg
│ │ ├── reveal_tn.png
│ │ ├── sass.jpg
│ │ ├── sass_tn.png
│ │ ├── sasscompass.jpg
│ │ ├── sasscompass_tn.png
│ │ ├── screenshot.png
│ │ ├── viewsource.jpg
│ │ ├── viewsource_tn.png
│ │ ├── vue.jpg
│ │ ├── vue_tn.png
│ │ ├── workflows-grunt.jpg
│ │ ├── workflows-grunt_tn.png
│ │ ├── workflows-gulp.jpg
│ │ └── workflows-gulp_tn.png
│ ├── posts
│ │ ├── 2016predictions.jpg
│ │ ├── 2016predictions_tn.png
│ │ ├── angular.jpg
│ │ ├── angular_tn.png
│ │ ├── animation.jpg
│ │ ├── animation_tn.png
│ │ ├── beforeframework.jpg
│ │ ├── beforeframework_tn.png
│ │ ├── chromeextensions.png
│ │ ├── chromeextensions_tn.png
│ │ ├── coding.jpg
│ │ ├── coding_tn.png
│ │ ├── dataformats.png
│ │ ├── dataformats_tn.png
│ │ ├── effectivevideo.jpg
│ │ ├── effectivevideo_tn.png
│ │ ├── express.jpg
│ │ ├── express_tn.png
│ │ ├── frontendfullstack.jpg
│ │ ├── frontendfullstack_tn.png
│ │ ├── graduates.png
│ │ ├── graduates_tn.png
│ │ ├── graphics.png
│ │ ├── graphics_tn.png
│ │ ├── horizontally.png
│ │ ├── horizontally_tn.png
│ │ ├── ignite.jpg
│ │ ├── ignite_tn.png
│ │ ├── jsfrontend.png
│ │ ├── jsfrontend_tn.png
│ │ ├── json.png
│ │ ├── json01-dialog-ray.png
│ │ ├── json01-dialog-ray_tn.png
│ │ ├── json02-rayjanuary.png
│ │ ├── json02-rayjanuary_tn.png
│ │ ├── json03-johnjones.png
│ │ ├── json03-johnjones_tn.png
│ │ ├── json_tn.png
│ │ ├── jsonarticle.png
│ │ ├── jsonarticle_tn.png
│ │ ├── photographerweekly.jpg
│ │ ├── photographerweekly_tn.png
│ │ ├── postcss.jpg
│ │ ├── postcss_tn.png
│ │ ├── react.jpg
│ │ ├── react_tn.png
│ │ ├── resiliency.png
│ │ ├── resiliency_tn.png
│ │ ├── rightsocialmedia.png
│ │ ├── rightsocialmedia_tn.png
│ │ ├── svggraphics.png
│ │ ├── svggraphics_tn.png
│ │ ├── threethings.jpg
│ │ ├── threethings_tn.png
│ │ ├── vector.png
│ │ ├── vector_tn.png
│ │ ├── wanttogethired.jpg
│ │ ├── wanttogethired_tn.png
│ │ ├── weekly-artist.jpg
│ │ ├── weekly-artist_tn.png
│ │ ├── weekly-unusual.jpg
│ │ ├── weekly-unusual_tn.png
│ │ ├── weekly-ux.jpg
│ │ ├── weekly-ux_tn.png
│ │ ├── weekly-worksmarter.jpg
│ │ └── weekly-worksmarter_tn.png
│ └── screenshot.png
├── index.njk
├── js
│ └── data.json.njk
├── posts
│ ├── 2015-02-07-chrome-developer-extensions.md
│ ├── 2015-02-11-centered-navigation-table-css.md
│ ├── 2015-02-19-Understanding-Data-Formats.md
│ ├── 2015-03-01-online-graphic-formats.md
│ ├── 2015-03-02-data-vizualization-formats.md
│ ├── 2015-03-03-creating-SVG-graphics.md
│ ├── 2015-08-13-Getting-the-Right-Social-Media-Followers.md
│ ├── 2015-12-16-before-you-learn-framework.md
│ ├── 2015-12-21-javascript-you-should-already-know.md
│ ├── 2016-01-21-youre-going-to-love-postcss.md
│ ├── 2016-02-18-whats-wrong-with-angular-2.md
│ ├── 2016-08-13-learning-reactjs.md
│ ├── 2016-12-20-build-your-next-site-node-and-expressjs.md
│ ├── 2017-06-28-landing-a-job-front-end-developer.md
│ ├── 2017-08-05-five-unusual-skills.md
│ ├── 2017-08-25-weekly-series-3D-animation.md
│ ├── 2017-08-25-weekly-series-artist-designer.md
│ ├── 2017-08-25-weekly-series-front-end-full-stack-ux.md
│ ├── 2017-08-25-weekly-series-photography-motion.md
│ ├── 2017-08-25-weekly-series-work-smarter.md
│ ├── 2017-08-29-crafting-effective-video-campaign.md
│ ├── 2017-09-12-three-things-i-learned-from-six-years-teacher.md
│ ├── 2017-09-25-first-time-at-ignite.md
│ ├── 2017-12-07-want-to-get-hired-linkedin-career-.md
│ ├── 2018-03-28-resiliency-9-bosses-5-years.md
│ ├── 2018-10-12-json-tutorial.md
│ └── _index.njk
├── sitemap.xml.njk
├── tags-list.njk
└── tags.njk
├── package-lock.json
├── package.json
└── webpack.config.js
/.eleventy.js:
--------------------------------------------------------------------------------
1 | const { DateTime } = require("luxon");
2 | const pluginRss = require("@11ty/eleventy-plugin-rss");
3 | const pluginSyntaxHighlight = require("@11ty/eleventy-plugin-syntaxhighlight");
4 |
5 | module.exports = function(eleventyConfig) {
6 | eleventyConfig.addPlugin(pluginRss);
7 | eleventyConfig.addPlugin(pluginSyntaxHighlight);
8 |
9 | eleventyConfig.addFilter("simpleDate", dateObj => {
10 | return DateTime.fromJSDate(dateObj, { zone: "utc" }).toFormat(
11 | "LLL dd, yyyy"
12 | );
13 | });
14 |
15 | // Get the first `n` elements of a collection.
16 | eleventyConfig.addFilter("head", (array, n) => {
17 | if (n < 0) {
18 | return array.slice(n);
19 | }
20 |
21 | return array.slice(0, n);
22 | });
23 |
24 | // https://html.spec.whatwg.org/multipage/common-microsyntaxes.html#valid-date-string
25 | eleventyConfig.addFilter("htmlDateString", dateObj => {
26 | return DateTime.fromJSDate(dateObj).toFormat("yyyy-LL-dd");
27 | });
28 |
29 | // only content in the `posts/` directory
30 | eleventyConfig.addCollection("posts", function(collection) {
31 | return collection.getFilteredByGlob("./_site/posts/*.md").reverse();
32 | });
33 |
34 | // only content in the `posts/` directory
35 | eleventyConfig.addCollection("courses", function(collection) {
36 | return collection.getFilteredByGlob("./_site/courses/*.md").reverse();
37 | });
38 |
39 | eleventyConfig.addCollection("searchable", function(collection) {
40 | return collection
41 | .getFilteredByGlob(["./_site/courses/*.md", "./_site/posts/*.md"])
42 | .reverse();
43 | });
44 |
45 | eleventyConfig.addCollection(
46 | "tagList",
47 | require("./_site/_templates/getTagList")
48 | );
49 |
50 | eleventyConfig.addPassthroughCopy("./_site/images");
51 | eleventyConfig.addPassthroughCopy("./_site/css");
52 | eleventyConfig.addPassthroughCopy("./_site/js");
53 |
54 | /* Markdown Plugins */
55 | let markdownIt = require("markdown-it");
56 | let markdownItAnchor = require("markdown-it-anchor");
57 | let options = {
58 | html: true,
59 | breaks: true,
60 | linkify: true
61 | };
62 | let opts = {
63 | permalink: true,
64 | permalinkClass: "direct-link",
65 | permalinkSymbol: "#"
66 | };
67 |
68 | eleventyConfig.setLibrary(
69 | "md",
70 | markdownIt(options).use(markdownItAnchor, opts)
71 | );
72 |
73 | return {
74 | templateFormats: ["md", "njk", "html", "liquid"],
75 |
76 | // If your site lives in a different subdirectory, change this.
77 | // Leading or trailing slashes are all normalized away, so don’t worry about it.
78 | // If you don’t have a subdirectory, use "" or "/" (they do the same thing)
79 | // This is only used for URLs (it does not affect your file structure)
80 | pathPrefix: "/",
81 |
82 | markdownTemplateEngine: "liquid",
83 | htmlTemplateEngine: "njk",
84 | dataTemplateEngine: "njk",
85 | passthroughFileCopy: true,
86 | dir: {
87 | input: "_site",
88 | includes: "_templates",
89 | data: "_data",
90 | output: "dist"
91 | }
92 | };
93 | };
94 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | dist
3 | build
4 | _site/css/*.css
5 | _site/css/*.css.map
6 | _site/js/script.js
7 | .vscode/
8 | .cache
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 Ray Villalobos
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/_process/js/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
46 |
47 |
48 |
49 |
83 |
95 |
--------------------------------------------------------------------------------
/_process/js/app.js:
--------------------------------------------------------------------------------
1 | import Vue from "vue";
2 | import App from "./App.vue";
3 | new Vue({
4 | el: ".searchbox",
5 | render: h => h(App)
6 | });
7 |
--------------------------------------------------------------------------------
/_process/js/script.js:
--------------------------------------------------------------------------------
1 | import 'popper.js';
2 | import 'bootstrap';
3 | import '@fortawesome/fontawesome-free/js/all.js';
4 |
5 | $(document).ready(function() {
6 | // When Scrollspy Detects a change
7 | $(window).on('activate.bs.scrollspy', function() {
8 | var hash = $('.site-nav')
9 | .find('a.active')
10 | .attr('href');
11 |
12 | if (hash == '#main-content') {
13 | $('.site-nav').addClass('inbody');
14 | } else {
15 | $('.site-nav').removeClass('inbody');
16 | }
17 | });
18 |
19 | $(window).trigger('scroll');
20 | $(window).on('scroll', function() {
21 | var top = $(window).scrollTop();
22 | $('#page-hero')
23 | .css('transform', 'translate3d(0px, ' + top / 5 + 'px, 0px)')
24 | .css('opacity', 1 - Math.max(top / (window.innerHeight * 0.7), 0));
25 | });
26 | });
27 |
--------------------------------------------------------------------------------
/_process/prism/prism-xonokai.css:
--------------------------------------------------------------------------------
1 | /**
2 | * xonokai theme for JavaScript, CSS and HTML
3 | * based on: https://github.com/MoOx/sass-prism-theme-base by Maxime Thirouin ~ MoOx --> http://moox.fr/ , which is Loosely based on Monokai textmate theme by http://www.monokai.nl/
4 | * license: MIT; http://moox.mit-license.org/
5 | */
6 | code[class*="language-"],
7 | pre[class*="language-"] {
8 | -moz-tab-size: 2;
9 | -o-tab-size: 2;
10 | tab-size: 2;
11 | -webkit-hyphens: none;
12 | -moz-hyphens: none;
13 | -ms-hyphens: none;
14 | hyphens: none;
15 | white-space: pre;
16 | white-space: pre-wrap;
17 | word-wrap: normal;
18 | font-family: Menlo, Monaco, "Courier New", monospace;
19 | font-size: 14px;
20 | color: #76d9e6;
21 | text-shadow: none;
22 | }
23 | pre[class*="language-"],
24 | :not(pre)>code[class*="language-"] {
25 | background: #2a2a2a;
26 | }
27 | pre[class*="language-"] {
28 | padding: 15px;
29 | border-radius: 4px;
30 | border: 1px solid #e1e1e8;
31 | overflow: auto;
32 | }
33 |
34 | pre[class*="language-"] {
35 | position: relative;
36 | }
37 | pre[class*="language-"] code {
38 | white-space: pre;
39 | display: block;
40 | }
41 |
42 | :not(pre)>code[class*="language-"] {
43 | padding: 0.15em 0.2em 0.05em;
44 | border-radius: .3em;
45 | border: 0.13em solid #7a6652;
46 | box-shadow: 1px 1px 0.3em -0.1em #000 inset;
47 | }
48 | .token.namespace {
49 | opacity: .7;
50 | }
51 | .token.comment,
52 | .token.prolog,
53 | .token.doctype,
54 | .token.cdata {
55 | color: #6f705e;
56 | }
57 | .token.operator,
58 | .token.boolean,
59 | .token.number {
60 | color: #a77afe;
61 | }
62 | .token.attr-name,
63 | .token.string {
64 | color: #e6d06c;
65 | }
66 | .token.entity,
67 | .token.url,
68 | .language-css .token.string,
69 | .style .token.string {
70 | color: #e6d06c;
71 | }
72 | .token.selector,
73 | .token.inserted {
74 | color: #a6e22d;
75 | }
76 | .token.atrule,
77 | .token.attr-value,
78 | .token.keyword,
79 | .token.important,
80 | .token.deleted {
81 | color: #ef3b7d;
82 | }
83 | .token.regex,
84 | .token.statement {
85 | color: #76d9e6;
86 | }
87 | .token.placeholder,
88 | .token.variable {
89 | color: #fff;
90 | }
91 | .token.important,
92 | .token.statement,
93 | .token.bold {
94 | font-weight: bold;
95 | }
96 | .token.punctuation {
97 | color: #bebec5;
98 | }
99 | .token.entity {
100 | cursor: help;
101 | }
102 | .token.italic {
103 | font-style: italic;
104 | }
105 |
106 | code.language-markup {
107 | color: #f9f9f9;
108 | }
109 | code.language-markup .token.tag {
110 | color: #ef3b7d;
111 | }
112 | code.language-markup .token.attr-name {
113 | color: #a6e22d;
114 | }
115 | code.language-markup .token.attr-value {
116 | color: #e6d06c;
117 | }
118 | code.language-markup .token.style,
119 | code.language-markup .token.script {
120 | color: #76d9e6;
121 | }
122 | code.language-markup .token.script .token.keyword {
123 | color: #76d9e6;
124 | }
125 |
126 | /* Line highlight plugin */
127 | pre[class*="language-"][data-line] {
128 | position: relative;
129 | padding: 1em 0 1em 3em;
130 | }
131 | pre[data-line] .line-highlight {
132 | position: absolute;
133 | left: 0;
134 | right: 0;
135 | padding: 0;
136 | margin-top: 1em;
137 | background: rgba(255, 255, 255, 0.08);
138 | pointer-events: none;
139 | line-height: inherit;
140 | white-space: pre;
141 | }
142 | pre[data-line] .line-highlight:before,
143 | pre[data-line] .line-highlight[data-end]:after {
144 | content: attr(data-start);
145 | position: absolute;
146 | top: .4em;
147 | left: .6em;
148 | min-width: 1em;
149 | padding: 0.2em 0.5em;
150 | background-color: rgba(255, 255, 255, 0.4);
151 | color: black;
152 | font: bold 65%/1 sans-serif;
153 | height: 1em;
154 | line-height: 1em;
155 | text-align: center;
156 | border-radius: 999px;
157 | text-shadow: none;
158 | box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);
159 | }
160 | pre[data-line] .line-highlight[data-end]:after {
161 | content: attr(data-end);
162 | top: auto;
163 | bottom: .4em;
164 | }
--------------------------------------------------------------------------------
/_process/scss/_custom.scss:
--------------------------------------------------------------------------------
1 | $headings-font-family: Asap;
2 | $primary: #00adb5;
3 | $secondary: #f8b500;
4 | $body-bg: #393e46;
5 | $text-muted: #6c757d;
6 | $body-color: $text-muted;
7 | $border-radius: 8px;
8 |
9 | $enable-responsive-font-sizes: true;
10 | $rfs-base-font-size: 1rem;
11 | $enable-caret: false;
12 |
13 | $enable-shadows: true;
14 |
15 | $theme-colors: (
16 | 'special': #e01c55
17 | );
18 |
19 | $spacer: 1rem;
20 |
21 | $spacers: (
22 | 6: (
23 | $spacer * 8
24 | ),
25 | 5: (
26 | $spacer * 5
27 | )
28 | );
29 |
30 | $sizes: (
31 | 33: 33%
32 | );
33 |
34 | $grid-breakpoints: (
35 | xs: 0,
36 | sm: 320px,
37 | //576px
38 | md: 768px,
39 | lg: 992px,
40 | xl: 1200px
41 | );
42 |
43 | $container-max-widths: (
44 | sm: 320px,
45 | //540px
46 | md: 720px,
47 | lg: 960px,
48 | xl: 1140px
49 | );
50 |
51 | $grid-gutter-width: 16px;
52 |
53 | $pagination-bg: $primary;
54 | $pagination-color: darken($primary, 20%);
55 | $pagination-border-color: darken($body-bg, 7%);
56 |
57 | $pagination-active-bg: $secondary;
58 | $pagination-active-border-color: darken($body-bg, 7%);
59 |
60 | $pagination-disabled-bg: darken($body-bg, 3%);
61 | $pagination-disabled-border-color: darken($body-bg, 7%);
62 |
63 | $pagination-hover-bg: $secondary;
64 | $pagination-hover-border-color: darken($body-bg, 7%);
65 |
66 | $card-border-radius: 0;
67 | $list-group-bg: $body-bg;
68 | $list-group-active-bg: $secondary;
69 |
--------------------------------------------------------------------------------
/_process/scss/style.scss:
--------------------------------------------------------------------------------
1 | @import url('https://fonts.googleapis.com/css?family=Asap:700');
2 |
3 | @import './custom';
4 | @import '../../node_modules/bootstrap/scss/bootstrap';
5 |
6 | @import '../../node_modules/animate.css/animate';
7 | @import '../prism/prism-xonokai';
8 |
9 | .page-section-title {
10 | @include font-size(5rem);
11 | }
12 |
13 | .page-section-text {
14 | @include font-size(1.7rem);
15 | }
16 |
17 | .h2 {
18 | @include font-size(2rem);
19 | }
20 |
21 | .site-header {
22 | background-position: center center;
23 | background-repeat: no-repeat;
24 | background-size: cover;
25 | }
26 |
27 | .site-nav.inbody {
28 | background: $primary;
29 | }
30 |
31 | .layout-social {
32 | font-size: 1.4em;
33 | }
34 |
35 | a.text-primary:hover {
36 | color: lighten(theme-color('primary'), 20%);
37 | }
38 |
39 | .list-group-item:hover {
40 | background: $gray-700;
41 | }
42 |
--------------------------------------------------------------------------------
/_site/404.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/page.njk
3 | permalink: 404.html
4 | excludeFromSitemap: true
5 | ---
6 |
7 | # Content not found.
8 |
9 | {% comment %}
10 | This will work for both GitHub pages and Netlify:
11 |
12 | - https://help.github.com/articles/creating-a-custom-404-page-for-your-github-pages-site/
13 | - https://www.netlify.com/docs/redirects/#custom-404
14 | {% endcomment %}
15 |
--------------------------------------------------------------------------------
/_site/_data/metadata.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "Seven",
3 | "description": "An Eleventy theme based on bootstrap and bootstrap4layouts",
4 | "url": "seventy.tech",
5 | "feed": {
6 | "summary": "An Eleventy theme based on bootstrap and bootstrap4layouts",
7 | "filename": "feed.xml",
8 | "path": "/feed/feed.xml",
9 | "url": "https://raybo.org/seven/feed/feed.xml",
10 | "id": "https://raybo.org/seven"
11 | },
12 | "author": {
13 | "name": "Ray Villalobos",
14 | "bio": "Ray Villalobos is a Full Stack Web Development Author. He’s a full time Staff Author at LInkedIn Learning and Lynda.com.",
15 | "social": {
16 | "email": "ray@planetoftheweb.com",
17 | "linkedin": "https://linkedin.com/in/planetoftheweb",
18 | "github": "https://github.com/planetoftheweb",
19 | "twitter": "https://twitter.com/planetoftheweb",
20 | "dribbble": "https://dribbble.com/planetoftheweb",
21 | "flickr": "https://www.flickr.com/photos/planetoftheweb/sets/72157602932636630/",
22 | "youtube": "https://www.youtube.com/user/planetoftheweb",
23 | "instagram": "https://www.instagram.com/iviewsource"
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/_site/_templates/getTagList.js:
--------------------------------------------------------------------------------
1 | module.exports = function(collection) {
2 | let tagSet = new Set();
3 | collection.getAllSorted().forEach(function(item) {
4 | if ("tags" in item.data) {
5 | let tags = item.data.tags;
6 | if (typeof tags === "string") {
7 | tags = [tags];
8 | }
9 |
10 | tags = tags.filter(function(item) {
11 | switch (item) {
12 | // this list should match the `filter` list in tags.njk
13 | case "all":
14 | case "nav":
15 | case "post":
16 | case "posts":
17 | case "course":
18 | case "courses":
19 | return false;
20 | }
21 | return true;
22 | });
23 |
24 | for (const tag of tags) {
25 | tagSet.add(tag);
26 | }
27 | }
28 | });
29 |
30 | // returning an array in addCollection works in Eleventy 0.5.3
31 | return [...tagSet];
32 | };
33 |
--------------------------------------------------------------------------------
/_site/_templates/header.njk:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
{{title}}
6 |
{{summary | url}}
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/_site/_templates/items.njk:
--------------------------------------------------------------------------------
1 | {% set defaultURL = '' %}{% if item.data.links[0] %}{% for name, link in item.data.links[0] %}{% set defaultURL = link %}{% endfor %}{% else %}{% set defaultURL = item.url %}{% endif %}
2 |
3 | {% if r/external/g.test(item.data.tags) or r/course/g.test(item.data.tags) %}{% set external = true %}{% endif %}
4 |
5 |
6 | {% if item.data.thumb %}
7 |
8 |
9 |
10 |
11 |
{{ item.date | simpleDate | safe }}
12 |
13 | {% endif %}
14 |
15 |
25 |
--------------------------------------------------------------------------------
/_site/_templates/layouts/base.njk:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | {{ metadata.title }}
9 |
10 |
11 |
12 | {% include "navbar.njk" %}
13 | {{ content | safe }}
14 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/_site/_templates/layouts/nohero.njk:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/base.njk
3 | ---
4 |
6 |
7 |
8 | {{title}}
9 | {{ content | safe }}
10 |
11 |
--------------------------------------------------------------------------------
/_site/_templates/layouts/page-home.njk:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/base.njk
3 | ---
4 |
19 |
20 | {{ content | safe }}
21 |
22 |
--------------------------------------------------------------------------------
/_site/_templates/layouts/page.njk:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/base.njk
3 | ---
4 |
6 |
7 | {{ content | safe }}
8 |
9 |
--------------------------------------------------------------------------------
/_site/_templates/layouts/post.njk:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/base.njk
3 | ---
4 |
7 |
8 | {{ title }}
9 | {{ content | safe }}
10 |
--------------------------------------------------------------------------------
/_site/_templates/links.njk:
--------------------------------------------------------------------------------
1 |
2 | {% if item.data.links != null %}
3 |
4 | {% for item in item.data.links %}
5 | {% if item.lil != null %}
on LinkedIn {% endif %}
6 | {% if item.repo != null %}
repo {% endif %}
7 | {% if item.demo != null %}
demo {% endif %}
8 | {% endfor %}
9 |
10 | {% endif %}
11 |
--------------------------------------------------------------------------------
/_site/_templates/navbar.njk:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
{{ metadata.title }} {% if navtitle %}
| {{ navtitle }} {% endif %}
9 |
10 |
11 |
12 |
13 | {# These next two links are hidden are allow scrollspy to detect the current page #}
14 |
hero target
15 |
nav target
16 |
17 | {% if navtitle != 'Home' %}
{% endif %}
18 | {%- for nav in collections.nav | reverse -%}
19 | {% if nav.url == page.url %}
20 |
{{ nav.data.navtitle }}
21 | {% else %}
22 |
{{ nav.data.navtitle }}
23 | {% endif %}
24 | {%- endfor -%}
25 |
69 |
70 | {% include "search.njk" %}
71 |
72 |
73 |
74 |
--------------------------------------------------------------------------------
/_site/_templates/pagination.njk:
--------------------------------------------------------------------------------
1 |
2 |
26 |
27 |
--------------------------------------------------------------------------------
/_site/_templates/postitem.njk:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | {% if item.thumb %}
5 |
6 |
7 |
8 | {% endif %}
9 |
10 |
18 |
19 |
--------------------------------------------------------------------------------
/_site/_templates/search.njk:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/_site/_templates/sidebar.njk:
--------------------------------------------------------------------------------
1 |
2 | {% set defaultURL = '' %}{% if item.data.links[0] %}{% for name, link in item.data.links[0] %}{% set defaultURL = link %}{% endfor %}{% else %}{% set defaultURL = item.url %}{% endif %}
3 |
4 | {% if r/external/g.test(item.data.tags) or r/course/g.test(item.data.tags) %}{% set external = true %}{% endif %}
5 | {% if item.data.thumb %}
6 |
7 | {% endif %}
8 |
{{ item.date | simpleDate }}
9 |
{{item.data.title}}{% if external %} {% endif %}
10 |
{{ item.data.summary }}
11 | {% include "links.njk" %}
12 |
{% include "tags.njk" %}
13 |
--------------------------------------------------------------------------------
/_site/_templates/social.njk:
--------------------------------------------------------------------------------
1 |
2 |
3 | {% if metadata.author.social.linkedin %}
4 |
5 |
6 |
7 | {% endif %}
8 |
9 | {% if metadata.author.social.github %}
10 |
11 |
12 |
13 | {% endif %}
14 |
15 | {% if metadata.author.social.twitter %}
16 |
17 |
18 |
19 | {% endif %}
20 |
21 | {% if metadata.author.social.youtube %}
22 |
23 |
24 |
25 | {% endif %}
26 |
27 | {% if metadata.author.social.dribbble %}
28 |
29 |
30 |
31 | {% endif %}
32 |
33 | {% if metadata.author.social.flickr %}
34 |
35 |
36 |
37 | {% endif %}
38 |
39 | {% if metadata.author.social.facebook %}
40 |
41 |
42 |
43 | {% endif %}
44 |
45 |
--------------------------------------------------------------------------------
/_site/_templates/tags.njk:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/_site/about/index.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/nohero.njk
3 | title: About Me
4 | hero: http://pixelprowess.com/i/computers/computing-cloud-229316069.jpg
5 | navtitle: About
6 | ---
7 |
8 | Ray Villalobos is a full-stack design/development teacher and senior staff instructor at [LinkedIn Learning](https://www.linkedin.com/learning/instructors/ray-villalobos). His courses are focused on front-end design and development topics such as JavaScript, AngularJS, React, and Sass, plus frameworks like Bootstrap and tools that can make you a faster, more efficient developer. He has a clear and practical teaching style and will help you improve your skills through real-world exercises and projects.
9 |
10 | Previously, as a director of multimedia for Entravision Communications, Ray managed a network of radio and TV station websites on the East Coast. He also designed large newspaper sites and created interactive projects/games for the Tribune network of newspapers. You can reach him on LinkedIn or through other social networks @planetoftheweb. Check out his personal blog at [raybo.org](http://raybo.org).
11 |
--------------------------------------------------------------------------------
/_site/courses/2011-11-19-adaptive-websites-for-multiple-screens.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Creating an Adaptive Web Site for Multiple Screens"
3 | summary: "How to build a web site that automatically adapts its layout to various screen sizes, orientations, and resolutions on desktop browsers and mobile devices."
4 | thumb: "/images/courses/adaptive_tn.png"
5 | hero: "/images/courses/adaptive.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fcreating-an-adaptive-web-site-for-multiple-screens
8 | - lynda: https://www.lynda.com/HTML-tutorials/Creating-an-Adaptive-Web-Site-for-Multiple-Screens/85083-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - web designer
15 | - web developer
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/courses/2012-01-20-css-styling-forms.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "CSS: Styling Forms"
3 | summary: CSS best practices and techniques for styling and structuring HTML and HTML5 forms.
4 | thumb: "/images/courses/cssforms_tn.png"
5 | hero: "/images/courses/cssforms.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fcss-styling-forms
8 | - lynda: https://www.lynda.com/Web-Interactive-CSS-tutorials/CSS-Styling-Forms/90368-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - web designer
15 | - web developer
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/courses/2012-05-25-view-source.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: View Source
3 | summary: Ten-minute projects on intermediate and advanced web design topics, covering technologies such as HTML, PHP, jQuery, and CSS, as well as content management solutions like WordPress and integration with Twitter, YouTube, and more.
4 | thumb: "/images/courses/viewsource_tn.png"
5 | hero: "/images/courses/viewsource.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fview-source
8 | - lynda: https://www.lynda.com/Web-Interactive-Projects-tutorials/View-Source/93388-2.html
9 | tags:
10 | - course
11 | - video tutorial
12 | - css
13 | - sass
14 | - javascript
15 | - html
16 | - web designer
17 | - web developer
18 | ---
19 |
--------------------------------------------------------------------------------
/_site/courses/2013-01-18-javascript-ajax.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: JavaScript and AJAX
3 | summary: Explore how to load dynamic content from JavaScript and jQuery using AJAX methods.
4 | thumb: "/images/courses/ajax_tn.png"
5 | hero: "/images/courses/ajax.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fjavascript-and-ajax-integration-techniques
8 | - lynda: https://www.lynda.com/Developer-tutorials/JavaScript-and-AJAX/114900-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - web designer
15 | - web developer
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/courses/2013-03-15-javascript-json.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: JavaScript and JSON
3 | summary: Explore how the JavaScript Object Notation (JSON) format works and how you can use it to read and share data in your web projects.
4 | thumb: "/images/courses/json_tn.png"
5 | hero: "/images/courses/json.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fjavascript-and-json-integration-techniques
8 | - lynda: https://www.lynda.com/JavaScript-tutorials/JavaScript-JSON/114901-2.html
9 | - repo: https://github.com/planetoftheweb/json
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/courses/2013-04-23-javacript-php-processing-forms.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Validating and Processing Forms with JavaScript and PHP
3 | summary: Learn how to ensure the data submitted to your web forms is complete, accurate, and nonmalicious with HTML5, JavaScript, jQuery, and PHP form processing and validation.
4 | thumb: "/images/courses/javascriptphp-forms_tn.png"
5 | hero: "/images/courses/javascriptphp-forms.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fvalidating-and-processing-forms-with-javascript-and-php
8 | - lynda: https://www.lynda.com/Developer-Databases-tutorials/Validating-Processing-Forms-JavaScript-PHP/120466-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - php
15 | - web designer
16 | - web developer
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/courses/2013-06-10-javascript-dom.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "JavaScript: Enhancing the DOM"
3 | summary: Learn to modify the DOM (Document Object Model), one of the core components of every HTML page, with JavaScript.
4 | thumb: "/images/courses/javascript-dom_tn.png"
5 | hero: "/images/courses/javascript-dom.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fjavascript-enhancing-the-dom
8 | - lynda: https://www.lynda.com/HTML-tutorials/JavaScript-Enhancing-DOM/122462-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - web designer
15 | - web developer
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/courses/2013-07-31-emmet-coding-faster.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Coding Faster with Emmet
3 | summary: Learn to use Emmet's abbreviated shortcuts to write full-fledged HTML, XML, CSS, and code faster and more efficiently.
4 | thumb: "/images/courses/emmet_tn.png"
5 | hero: "/images/courses/emmet.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fcoding-faster-with-emmet
8 | - lynda: https://www.lynda.com/Emmet-tutorials/Coding-Faster-Emmet/133353-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - web designer
15 | - web developer
16 | - tools
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/courses/2013-08-13-bootstrap-3-advanced-web-development.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Bootstrap 3: Advanced Web Development"
3 | summary: "Generate an interactive website from scratch with Bootstrap."
4 | thumb: "/images/courses/bootstrap3-advanced_tn.png"
5 | hero: "/images/courses/bootstrap3-advanced.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fbootstrap-3-advanced-web-development
8 | - lynda: https://www.lynda.com/Bootstrap-tutorials/Bootstrap-3-Advanced-Web-Development/124079-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - web designer
15 | - web developer
16 | - frameworks
17 | - bootstrap
18 | ---
19 |
--------------------------------------------------------------------------------
/_site/courses/2013-09-05-reveal-js-presentations.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Online Presentations with reveal.js
3 | summary: Build slideshows that harness the full power of the web with reveal.js.
4 | thumb: "/images/courses/reveal_tn.png"
5 | hero: "/images/courses/reveal.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Freveal-js-online-presentations
8 | - lynda: https://www.lynda.com/CSS-tutorials/Online-Presentations-revealjs/137904-2.html
9 | tags:
10 | - course
11 | - video tutorial
12 | - web designer
13 | - web developer
14 | - tools
15 | ---
16 |
--------------------------------------------------------------------------------
/_site/courses/2013-09-17-javascript-events.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "JavaScript: Events"
3 | summary: Learn to use JavaScript events to respond to clicks, form input, and touch gestures in your web applications.
4 | thumb: "/images/courses/javascript-events_tn.png"
5 | hero: "/images/courses/javascript-events.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fjavascript-events
8 | - lynda: https://www.lynda.com/JavaScript-tutorials/JavaScript-Events/140780-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - web designer
15 | - web developer
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/courses/2013-10-30-sass-compass-responsive-css.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Responsive CSS with Sass and Compass
3 | category: course
4 | summary: Learn how Compass (powered by Sass) can help you build a responsive layout workflow that is easier, faster, and more compatible than CSS alone.
5 | thumb: "/images/courses/sasscompass_tn.png"
6 | hero: "/images/courses/sasscompass.jpg"
7 | links:
8 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Flinkedin-learning.pxf.io%2Fc%2F1252977%2F449670%2F8005%3Fu%3Dhttps%253A%252F%252Fwww.linkedin.com%252Flearning%252Flearning-angularjs-1-2
9 | - lynda: https://www.lynda.com/CSS-tutorials/Responsive-CSS-Sass-Compass/140777-2.html
10 | - repo: https://github.com/planetoftheweb/responsive
11 | tags:
12 | - course
13 | - video tutorial
14 | - css
15 | - sass
16 | - javascript
17 | - html
18 | - web designer
19 | - web developer
20 | ---
21 |
--------------------------------------------------------------------------------
/_site/courses/2013-12-16-javascript-functions.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "JavaScript: Functions"
3 | summary: Learn the different ways of declaring and invoking JavaScript functions, the "subprograms" that power your code.
4 | thumb: "/images/courses/javascript-functions_tn.png"
5 | hero: "/images/courses/javascript-functions.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fjavascript-functions
8 | - lynda: https://www.lynda.com/JavaScript-tutorials/JavaScript-Functions/148137-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - web designer
15 | - web developer
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/courses/2014-06-23-gulp-js-git-browserify.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Web Project Workflows with Gulp.js, Git, and Browserify
3 | summary: Learn how to generate a workflow that makes it easier to build your own websites, track and share project files, and leverage JavaScript and jQuery code libraries.
4 | thumb: "/images/courses/workflows-gulp_tn.png"
5 | hero: "/images/courses/workflows-gulp.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fgulp-js-git-and-browserify-web-project-workflows
8 | - lynda: https://www.lynda.com/Web-Web-Design-tutorials/Web-Project-Workflows-Gulpjs-Git-Browserify/154416-2.html
9 | - repo: https://github.com/planetoftheweb/workflows
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - tools
18 | - git
19 | - github
20 | ---
21 |
--------------------------------------------------------------------------------
/_site/courses/2015-02-15-bootstrap-3-layouts-reponsive-single-page-design.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Bootstrap 3 Layouts: Responsive Single-Page Design"
3 | summary: Find out how Bootstrap can transform your standard HTML websites into inspired single-page designs.
4 | thumb: "/images/courses/bootstrap-singlepagedesign_tn.png"
5 | hero: "/images/courses/bootstrap-singlepagedesign.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fbootstrap-layouts-responsive-single-page-design
8 | - lynda: https://www.lynda.com/Bootstrap-tutorials/Bootstrap-Layouts-Responsive-Single-Page-Design/186538-2.html
9 | - repo: https://github.com/planetoftheweb/responsivebootstrap
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - frameworks
18 | - bootstrap
19 | - project
20 | ---
21 |
--------------------------------------------------------------------------------
/_site/courses/2015-06-13-grunt-js-workflows.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Web Workflows with Grunt.js
3 | summary: Program, test, and deploy your web applications more easily and efficiently with a Grunt.js development workflow.
4 | thumb: "/images/courses/workflows-grunt_tn.png"
5 | hero: "/images/courses/workflows-grunt.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fgrunt-js-web-workflows
8 | - lynda: https://www.lynda.com/Grunt.js-tutorials/Web-Workflows-Grunt.js/368921-2.html
9 | - repo: https://github.com/planetoftheweb/gruntworkflows
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - tools
18 | - grunt
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2015-07-06-git-github.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Up and Running with Git and GitHub
3 | summary: Learning Git and GitHub Preview. Learn to work with the most common Git commands, and use GitHub to clone, explore, and create templates from existing projects.
4 | thumb: "/images/courses/gitandgithub_tn.png"
5 | hero: "/images/courses/gitandgithub.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Flearning-git-and-github
8 | - lynda: https://www.lynda.com/Git-tutorials/Up-Running-Git-GitHub/409275-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - web designer
15 | - web developer
16 | - tools
17 | - git
18 | - github
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2015-08-26-bootstrap-3-essential-training.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Bootstrap 3 Essential Training
3 | summary: Everything you need to know to get started building responsive, accessible, mobile-first websites with Bootstrap 3.
4 | thumb: "/images/courses/bootstrap3_tn.png"
5 | hero: "/images/courses/bootstrap3.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fbootstrap-3-essential-training
8 | - lynda: https://www.lynda.com/Bootstrap-tutorials/Bootstrap-3-Essential-Training/417641-2.html
9 | - repo: https://github.com/planetoftheweb/bootstrap
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - bootstrap
18 | - frameworks
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2015-10-06-sass-essential-training.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Sass Essential Training
3 | summary: Learn the fundamentals of Syntactically Awesome Stylesheets (Sass), a modern web development language that helps you write CSS better, faster, and with more advanced features.
4 | thumb: "/images/courses/sass_tn.png"
5 | hero: "/images/courses/sass.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fsass-essential-training
8 | - lynda: https://www.lynda.com/Sass-tutorials/Sass-Essential-Training/375925-2.html
9 | - repo: https://github.com/planetoftheweb/sassEssentials
10 | tags:
11 | - course
12 | - video tutorial
13 | - css
14 | - sass
15 | - javascript
16 | - html
17 | - web designer
18 | - web developer
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2015-11-10-angular-js-1-form-validation.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "AngularJS: Form Validation"
3 | summary: Learn how to implement dynamic form validation on any HTML form using the built-in validation properties and methods in AngularJS.
4 | thumb: /images/courses/angularjs1-formvalidation_tn.png
5 | hero: /images/courses/angularjs1-formvalidation.jpg
6 | links:
7 | - lil: https://www.linkedin.com/learning/angularjs-1-form-validation?u=104
8 | - lynda: https://www.lynda.com/AngularJS-tutorials/AngularJS-Form-Validation/438886-2.html
9 | - repo: https://github.com/planetoftheweb/angularformvalidation
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - angular
18 | - frameworks
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2015-12-23-markdown-learning.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Learning Markdown
3 | summary: Get started with Markdown, the lightweight text format that allows you to create documents, rich text, or HTML markup using any plain text editor.
4 | thumb: "/images/courses/markdown_tn.png"
5 | hero: "/images/courses/markdown.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Flearning-markdown%2Fwhat-is-markdown
8 | - lynda: https://www.lynda.com/Web-Development-tutorials/Up-Running-Markdown/438888-2.html
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - web designer
15 | - web developer
16 | - tools
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/courses/2016-01-14-postcss-first-look.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "PostCSS: First Look"
3 | summary: Want to write CSS faster and more efficiently? Get a first look at PostCSS, the engine for processing CSS with JavaScript.
4 | thumb: "/images/courses/postcssfirstlook_tn.png"
5 | hero: "/images/courses/postcssfirstlook.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fpostcss-first-look%2Fwhat-is-postcss
8 | - lynda: https://www.lynda.com/CSS-tutorials/PostCSS-First-Look/442850-2.html
9 | - repo: https://github.com/planetoftheweb/postcss
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - postcss
18 | ---
19 |
--------------------------------------------------------------------------------
/_site/courses/2016-01-22-postcss-responsive-single-page-design.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Building a Responsive Single-Page Design with PostCSS
3 | summary: Learn how to create animated single-page websites with PostCSS, the CSS post-processor that extends the power of CSS through JavaScript.
4 | thumb: "/images/courses/postcss_tn.png"
5 | hero: "/images/courses/postcss.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fbuilding-a-responsive-single-page-design-with-postcss
8 | - lynda: https://www.lynda.com/CSS-tutorials/Building-Responsive-Single-Page-Design-PostCSS/417644-2.html
9 | - repo: https://github.com/planetoftheweb/postcsslayouts
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - responsive design
18 | - project
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2016-06-23-full-stack-vs-front-end.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Web Development Foundations: Full-Stack vs Front-End"
3 | summary: "Do you want to become a web developer? Learn about the skills and tools you need to get a job as a front-end, back-end, or full-stack web developer."
4 | thumb: "/images/courses/fullstackvsfrontend_tn.png"
5 | hero: "/images/courses/fullstackvsfrontend.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fweb-development-foundations-full-stack-vs-front-end
8 | - lynda: https://www.lynda.com/Web-tutorials/Becoming-Web-Developer-Full-Stack-vs-Front-End/483022-2.html
9 | tags:
10 | - course
11 | - video tutorial
12 | - web designer
13 | - web developer
14 | - frameworks
15 | - Vue
16 | - project tutorial
17 | - building an interface
18 | ---
19 |
--------------------------------------------------------------------------------
/_site/courses/2016-09-29-npm-tooling-with-scripts.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Tooling with NPM Scripts
3 | summary: Looking for an alternative build tool? Try npm, the node package manager. Learn how to create npm scripts to automate all sorts of build tasks.
4 | thumb: "/images/courses/npmscripts_tn.png"
5 | hero: "/images/courses/npmscripts.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Ftooling-with-npm-scripts
8 | - lynda: https://www.lynda.com/NPM-tutorials/Tooling-NPM-Scripts/495275-2.html
9 | - repo: https://github.com/planetoftheweb/npmtooling
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - tools
18 | - nodejs
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2016-11-17-electron-building-cross-platform-desktop-apps.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Electron: Building Cross Platform Desktop Apps"
3 | summary: Create compelling cross-platform desktop apps with a few lines of JavaScript, HTML, and CSS code with Electron.
4 | thumb: "/images/courses/electron_tn.png"
5 | hero: "/images/courses/electron.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Felectron-building-cross-platform-desktop-apps
8 | - lynda: https://www.lynda.com/Electron-tutorials/Electron-Building-Cross-Platform-Desktop-Apps/518051-2.html
9 | - repo: https://github.com/planetoftheweb/electron
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - frameworks
18 | - electron
19 | - project
20 | ---
21 |
--------------------------------------------------------------------------------
/_site/courses/2016-12-13-progressive-web-app.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Building a Progressive Web App
3 | summary: Make your mobile web apps act like native iOS, Android, or Windows Phone applications. Make them progressive! Learn techniques to make web apps responsive and secure, work offline, and launch from the home screen.
4 | thumb: "/images/courses/progressivewebapp_tn.png"
5 | hero: "/images/courses/progressivewebapp.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fbuilding-a-progressive-web-app
8 | - lynda: https://www.lynda.com/CSS-tutorials/Building-Progressive-Web-App/518052-2.html
9 | - repo: https://github.com/planetoftheweb/angularregistration
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/courses/2016-12-21-angularjs-1-registration.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "AngularJS 1: Adding Registration to Your Application"
3 | summary: In this short course, we'll create a simple and straightforward registration system that allows users to log in and log out of an application. The techniques use AngularJS and Google Firebase, a mobile development platform that makes registration easy and secure.
4 | thumb: "/images/courses/angular1-registration_tn.png"
5 | hero: "/images/courses/angular1-registration.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fangularjs-1-adding-registration-to-your-application-2
8 | - lynda: https://www.lynda.com/AngularJS-tutorials/AngularJS-1-Adding-Registration-Your-Application/560052-2.html
9 | - repo: https://github.com/planetoftheweb/angularregistration
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - angular
18 | - frameworks
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2017-01-24-angular-js-1-building-a-data-driven-application.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "AngularJS: Building a Data Driven Application"
3 | summary: "Learn how to add data-driven functionality to your web applications with AngularJS. This project shows you how to check users in and out of a system and randomly select checked-in users to reward with prizes."
4 | thumb: "/images/courses/angularjs1-datadriven_tn.png"
5 | hero: "/images/courses/angularjs1-datadriven.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fangularjs-1-building-a-data-driven-app-2
8 | - lynda: https://www.lynda.com/AngularJS-tutorials/AngularJS-Building-Data-Driven-App/421230-2.html
9 | - repo: https://github.com/planetoftheweb/angulardata
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - angular
18 | - frameworks
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2017-02-08-angular-js-2-learning.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Learning Angular JS 2
3 | summary: 'Learn AngularJS 2, the "superheroic" JavaScript framework for building single-page mobile and web applications fast. Find out how to use AngularJS templates, create components, and work with events.'
4 | thumb: "/images/courses/angularjs2_tn.png"
5 | hero: "/images/courses/angularjs2.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Flearning-angularjs-2
8 | - lynda: https://www.lynda.com/AngularJS-tutorials/Learn-AngularJS-2-Basics/428058-2.html
9 | - demo: https://github.com/planetoftheweb/angular2
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - angular
18 | - frameworks
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2017-03-31-bootstrap-4-essential-training.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Bootstrap 4 Essential Training
3 | summary: Learn the essentials of Bootstrap. Discover how to work with this popular front-end framework to quickly and easily build responsive, mobile-ready websites that are cross-browser compatible.
4 | thumb: "/images/courses/bootstrap4_tn.png"
5 | hero: "/images/courses/bootstrap4.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fbootstrap-4-essential-training
8 | - lynda: https://www.lynda.com/Bootstrap-tutorials/Bootstrap-4-Essential-Training/372545-2.html
9 | - repo: https://github.com/planetoftheweb/bootstrap4
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - frameworks
18 | - bootstrap
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2017-04-28-post-css-next-generation-design.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Next Generation CSS Design with PostCSS and CSSNext
3 | summary: Learn how to work with PostCSS and CSSNext. Discover how to create a realistic single-page site that uses cutting-edge CSS features while maintaining compatibility with older browsers.
4 | thumb: "/images/courses/cssnext_tn.png"
5 | hero: "/images/courses/cssnext.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fnext-generation-css-design-with-postcss-and-cssnext
8 | - lynda: https://www.lynda.com/CSS-tutorials/Next-Generation-CSS-Design-PostCSS-CSSNext/483024-2.html
9 | - repo: https://github.com/planetoftheweb/nextgen
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - postcss
18 | ---
19 |
--------------------------------------------------------------------------------
/_site/courses/2017-05-25-d3-js-data-visualization.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Learning Data Visualization with D3.js
3 | summary: Bring your data to life with D3.js. Create interactive, visually exciting infographics and visualizations with HTML, CSS, JavaScript, and SVG graphics.
4 | thumb: "/images/courses/d3_tn.png"
5 | hero: "/images/courses/d3.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Flearning-data-visualization-with-d3-js
8 | - lynda: https://www.lynda.com/D3js-tutorials/Data-Visualization-D3js/162449-2.html
9 | - repo: https://github.com/planetoftheweb/d3
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - frameworks
18 | - bootstrap
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2017-10-11-vue-js-building-an-interface.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Vue.js: Building an Interface"
3 | summary: The perfect way to learn Vue.js is to use Vue.js. Learn to create an application interface for a product rating system using this flexible JavaScript library.
4 | thumb: "/images/courses/vue_tn.png"
5 | hero: "/images/courses/vue.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fvue-js-building-an-interface%2Fcreating-a-named-component
8 | - lynda: https://www.lynda.com/JavaScript-tutorials/Vue-js-Building-Interface/609025-2.html
9 | - repo: https://github.com/planetoftheweb/vueinterface
10 | tags:
11 | - course
12 | - video tutorial
13 | - css
14 | - sass
15 | - javascript
16 | - html
17 | - web designer
18 | - web developer
19 | - frameworks
20 | - Vue
21 | - project based
22 | - building an interface
23 | ---
24 |
--------------------------------------------------------------------------------
/_site/courses/2017-11-08-angular-js-1-learning.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Learning Angular JS 1
3 | summary: AngularJS is still a major player in the web dev world. Learn how to quickly build full-featured web applications with this important JavaScript framework.
4 | thumb: "/images/courses/angularjs1-learning_tn.png"
5 | hero: "/images/courses/angularjs1-learning.jpg"
6 | links:
7 | - lil: "https://www.linkedin.com/learning/learning-angularjs-1-2?u=104"
8 | - lynda: "https://www.lynda.com/Angular-tutorials/Learning-AngularJS-1/648940-2.html"
9 | - repo: "https://github.com/planetoftheweb/learnangular"
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - angular
18 | - frameworks
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2017-12-19-web-developer-interview-code.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Mastering Web Developer Interview Code
3 | summary: "In this weekly series, senior staff author explores front-end and full-stack coding concepts that every developer should have in their toolkit. Tune in every Tuesday for a new tip."
4 | thumb: "/images/courses/masteringwebdeveloper_tn.png"
5 | hero: "/images/courses/masteringwebdeveloper.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fmastering-web-developer-interview-code
8 | - lynda: https://www.lynda.com/Web-Development-tutorials/Mastering-Web-Developer-Interview-Code
9 | tags:
10 | - course
11 | - video tutorial
12 | - css
13 | - sass
14 | - javascript
15 | - html
16 | - web designer
17 | - web developer
18 | - frameworks
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2018-04-19-jquery-building-an-interface.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "jQuery: Building an Interface"
3 | summary: Create an interactive user interface that uses the strengths of jQuery, Bootstrap, Underscore.js, and the vast library of jQuery plugins.
4 | thumb: "/images/courses/jqueryinterface_tn.png"
5 | hero: "/images/courses/jqueryinterface.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fjquery-building-an-interface
8 | - lynda: https://www.lynda.com/jQuery-tutorials/jQuery-Building-Interface/645062-2.html
9 | - demo: https://github.com/LinkedInLearning/jquery-interface-645062-
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | - frameworks
18 | - jquery
19 | ---
20 |
--------------------------------------------------------------------------------
/_site/courses/2018-08-06-javascript-code-clinic.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Code Clinic: JavaScript"
3 | summary: "Code Clinic is a series of courses where our instructors solve the same problems using different programming languages. Here, Ray Villalobos works with JavaScript. Throughout the course, Ray introduces challenges and then provides an overview of his solutions in JavaScript."
4 | thumb: "/images/courses/codeclinicjs_tn.png"
5 | hero: "/images/courses/codeclinicjs.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?subId1=linkedin&u=https%3A%2F%2Flinkedin-learning.pxf.io%2Fc%2F1252977%2F449670%2F8005
8 | - lynda: https://www.lynda.com/JavaScript-tutorials/Code-Clinic-JavaScript/706928-2.html
9 | - demo: https://github.com/LinkedInLearning/codeclinic2
10 | tags:
11 | - course
12 | - css
13 | - javascript
14 | - html
15 | - web designer
16 | - web developer
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/courses/2018-09-17-bootstrap-4-layouts.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Bootstrap 4 Layouts: Responsive Single-Page Design"
3 | summary: Find out how Bootstrap 4 can transform your standard HTML websites into inspired single-page designs.
4 | thumb: "/images/courses/bootstrap4layouts_tn.png"
5 | hero: "/images/courses/bootstrap4layouts.jpg"
6 | links:
7 | - lil: https://linkedin-learning.pxf.io/c/1252977/449670/8005?subId1=linkedin&u=https%3A%2F%2Fwww.linkedin.com%2Flearning%2Fbootstrap-4-layouts-responsive-single-page-design
8 | - lynda: https://www.lynda.com/Bootstrap-tutorials/Bootstrap-4-Layouts-Responsive-Single-Page-Design/417642-2.html
9 | - repo: https://github.com/LinkedInLearning/bootstrap4-layouts-417642
10 | - demo: http://www.raybo.org/bootstrap4-layouts-417642/demo/
11 | tags:
12 | - course
13 | - css
14 | - javascript
15 | - html
16 | - web designer
17 | - web developer
18 | - frameworks
19 | - bootstrap
20 | - project
21 | ---
22 |
--------------------------------------------------------------------------------
/_site/courses/2018-11-07-react-single-page-applications.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "React: Single Page Applications"
3 | summary: This course shows you how to build a polished single-page application (SPA), with tools for managing users and reading writing and editing data from Google's Firebase a real time multi-user database.
4 | thumb: "/images/courses/react-spas_tn.png"
5 | hero: "/images/courses/react-spas.jpg"
6 | links:
7 | - lil: https://www.linkedin.com/learning/react-spas/working-with-exercises
8 | - repo: https://github.com/planetoftheweb/react-spas-774920
9 | tags:
10 | - course
11 | - react
12 | - javascript
13 | - firebase
14 | - routing
15 | - registration
16 | - authentication
17 | - project
18 | - CRUD
19 | - searching
20 | - filtering
21 | ---
22 |
--------------------------------------------------------------------------------
/_site/courses/2018-12-03-Learning-Atom.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Learning Atom"
3 | summary: "In this course, Ray Villalobos shows how to use and customize Atom for web, front-end, stack, or any other kind of development. Learn how to write and edit text, use selections, move around code folders, and use the powerful Find and Replace feature. Then find out how to customize the interface and editing experience with Atom themes, packages, and snippets.
4 | "
5 | thumb: "/images/courses/learnatom_tn.png"
6 | hero: "/images/courses/learnatom.jpg"
7 | links:
8 | - lil: https://www.linkedin.com/learning/learning-atom-2/editing-with-atom?u=104
9 | tags:
10 | - course
11 | - css
12 | - javascript
13 | - html
14 | - text editor
15 | - web developer
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/courses/2018-12-13-github-actions-first-look.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Github Actions: First Look"
3 | summary: This course shows you how to build a polished single-page application (SPA), with tools for managing users and reading writing and editing data from Google's Firebase a real time multi-user database.
4 | thumb: "/images/courses/githubactions_tn.png"
5 | hero: "/images/courses/githubactions.jpg"
6 | links:
7 | - lil: https://www.linkedin.com/learning/react-spas/working-with-exercises
8 | - repo: https://github.com/planetoftheweb/react-spas-774920
9 | tags:
10 | - course
11 | - Github
12 | - Actions
13 | - Continuous Integration
14 | - Automation
15 | - Git
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/courses/2019-01-11-angular-building-an-interface.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Building a Web Interface with Angular
3 | summary: "Get started with Angular by learning how to use it to build an interface. Start an Angular project with the CLI, learn components, events and search/sort list data."
4 | thumb: "/images/courses/angular-interface_tn.png"
5 | hero: "/images/courses/angular-interface.jpg"
6 | links:
7 | - lil: https://www.linkedin.com/learning/angular-building-an-interface/building-an-interface-with-angular
8 | - repo: https://github.com/planetoftheweb/angularinterface
9 | tags:
10 | - course
11 | - angular
12 | - javascript
13 | - frameworks
14 | - angular cli
15 | - project
16 | - interface
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/courses/2019-02-13-react-js-building-an-interface.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "React: Building a Web Interface"
3 | summary: "In this practical, hands-on course, featuring a realistic sample project that showcases the strengths of React: an online appointment scheduling tool."
4 | thumb: "/images/courses/react-interface_tn.png"
5 | hero: "/images/courses/react-interface.jpg"
6 | links:
7 | - lil: https://www.linkedin.com/learning/react-js-building-an-interface-2
8 | - repo: https://github.com/planetoftheweb/reactinterface2
9 | tags:
10 | - course
11 | - react
12 | - javascript
13 | - frameworks
14 | - components
15 | - project
16 | - interface
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/courses/_index.njk:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/page.njk
3 | hero: https://lil-cdn.com/585273/computing-floating-apps-226149059.jpg
4 | tags:
5 | - nav
6 | pagination:
7 | data: collections.courses
8 | size: 10
9 | navtitle: Courses
10 | iconclass: fas fa-graduation-cap
11 | permalink: /courses/{{pagination.pageNumber}}/
12 | ---
13 | {% include "pagination.njk" %}
14 | {%- for item in pagination.items %}
15 | {% include "items.njk" %}
16 | {% endfor -%}
17 | {% include "pagination.njk" %}
18 |
19 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-a11y-dark.css:
--------------------------------------------------------------------------------
1 | /**
2 | * a11y-dark theme for JavaScript, CSS, and HTML
3 | * Based on the okaidia theme: https://github.com/PrismJS/prism/blob/gh-pages/themes/prism-okaidia.css
4 | * @author ericwbailey
5 | */
6 |
7 | code[class*="language-"],
8 | pre[class*="language-"] {
9 | color: #f8f8f2;
10 | background: none;
11 | font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
12 | text-align: left;
13 | white-space: pre;
14 | word-spacing: normal;
15 | word-break: normal;
16 | word-wrap: normal;
17 | line-height: 1.5;
18 |
19 | -moz-tab-size: 4;
20 | -o-tab-size: 4;
21 | tab-size: 4;
22 |
23 | -webkit-hyphens: none;
24 | -moz-hyphens: none;
25 | -ms-hyphens: none;
26 | hyphens: none;
27 | }
28 |
29 | /* Code blocks */
30 | pre[class*="language-"] {
31 | padding: 1em;
32 | margin: 0.5em 0;
33 | overflow: auto;
34 | border-radius: 0.3em;
35 | }
36 |
37 | :not(pre) > code[class*="language-"],
38 | pre[class*="language-"] {
39 | background: #2b2b2b;
40 | }
41 |
42 | /* Inline code */
43 | :not(pre) > code[class*="language-"] {
44 | padding: 0.1em;
45 | border-radius: 0.3em;
46 | white-space: normal;
47 | }
48 |
49 | .token.comment,
50 | .token.prolog,
51 | .token.doctype,
52 | .token.cdata {
53 | color: #d4d0ab;
54 | }
55 |
56 | .token.punctuation {
57 | color: #fefefe;
58 | }
59 |
60 | .token.property,
61 | .token.tag,
62 | .token.constant,
63 | .token.symbol,
64 | .token.deleted {
65 | color: #ffa07a;
66 | }
67 |
68 | .token.boolean,
69 | .token.number {
70 | color: #00e0e0;
71 | }
72 |
73 | .token.selector,
74 | .token.attr-name,
75 | .token.string,
76 | .token.char,
77 | .token.builtin,
78 | .token.inserted {
79 | color: #abe338;
80 | }
81 |
82 | .token.operator,
83 | .token.entity,
84 | .token.url,
85 | .language-css .token.string,
86 | .style .token.string,
87 | .token.variable {
88 | color: #00e0e0;
89 | }
90 |
91 | .token.atrule,
92 | .token.attr-value,
93 | .token.function {
94 | color: #ffd700;
95 | }
96 |
97 | .token.keyword {
98 | color: #00e0e0;
99 | }
100 |
101 | .token.regex,
102 | .token.important {
103 | color: #ffd700;
104 | }
105 |
106 | .token.important,
107 | .token.bold {
108 | font-weight: bold;
109 | }
110 | .token.italic {
111 | font-style: italic;
112 | }
113 |
114 | .token.entity {
115 | cursor: help;
116 | }
117 |
118 | @media screen and (-ms-high-contrast: active) {
119 | code[class*="language-"],
120 | pre[class*="language-"] {
121 | color: windowText;
122 | background: window;
123 | }
124 |
125 | :not(pre) > code[class*="language-"],
126 | pre[class*="language-"] {
127 | background: window;
128 | }
129 |
130 | .token.important {
131 | background: highlight;
132 | color: window;
133 | font-weight: normal;
134 | }
135 |
136 | .token.atrule,
137 | .token.attr-value,
138 | .token.function,
139 | .token.keyword,
140 | .token.operator,
141 | .token.selector {
142 | font-weight: bold;
143 | }
144 |
145 | .token.attr-value,
146 | .token.comment,
147 | .token.doctype,
148 | .token.function,
149 | .token.keyword,
150 | .token.operator,
151 | .token.property,
152 | .token.string {
153 | color: highlight;
154 | }
155 |
156 | .token.attr-value,
157 | .token.url {
158 | font-weight: normal;
159 | }
160 | }
161 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-atom-dark.css:
--------------------------------------------------------------------------------
1 | /**
2 | * atom-dark theme for `prism.js`
3 | * Based on Atom's `atom-dark` theme: https://github.com/atom/atom-dark-syntax
4 | * @author Joe Gibson (@gibsjose)
5 | */
6 |
7 | code[class*="language-"],
8 | pre[class*="language-"] {
9 | color: #c5c8c6;
10 | text-shadow: 0 1px rgba(0, 0, 0, 0.3);
11 | font-family: Inconsolata, Monaco, Consolas, 'Courier New', Courier, monospace;
12 | direction: ltr;
13 | text-align: left;
14 | white-space: pre;
15 | word-spacing: normal;
16 | word-break: normal;
17 | line-height: 1.5;
18 |
19 | -moz-tab-size: 4;
20 | -o-tab-size: 4;
21 | tab-size: 4;
22 |
23 | -webkit-hyphens: none;
24 | -moz-hyphens: none;
25 | -ms-hyphens: none;
26 | hyphens: none;
27 | }
28 |
29 | /* Code blocks */
30 | pre[class*="language-"] {
31 | padding: 1em;
32 | margin: .5em 0;
33 | overflow: auto;
34 | border-radius: 0.3em;
35 | }
36 |
37 | :not(pre) > code[class*="language-"],
38 | pre[class*="language-"] {
39 | background: #1d1f21;
40 | }
41 |
42 | /* Inline code */
43 | :not(pre) > code[class*="language-"] {
44 | padding: .1em;
45 | border-radius: .3em;
46 | }
47 |
48 | .token.comment,
49 | .token.prolog,
50 | .token.doctype,
51 | .token.cdata {
52 | color: #7C7C7C;
53 | }
54 |
55 | .token.punctuation {
56 | color: #c5c8c6;
57 | }
58 |
59 | .namespace {
60 | opacity: .7;
61 | }
62 |
63 | .token.property,
64 | .token.keyword,
65 | .token.tag {
66 | color: #96CBFE;
67 | }
68 |
69 | .token.class-name {
70 | color: #FFFFB6;
71 | text-decoration: underline;
72 | }
73 |
74 | .token.boolean,
75 | .token.constant {
76 | color: #99CC99;
77 | }
78 |
79 | .token.symbol,
80 | .token.deleted {
81 | color: #f92672;
82 | }
83 |
84 | .token.number {
85 | color: #FF73FD;
86 | }
87 |
88 | .token.selector,
89 | .token.attr-name,
90 | .token.string,
91 | .token.char,
92 | .token.builtin,
93 | .token.inserted {
94 | color: #A8FF60;
95 | }
96 |
97 | .token.variable {
98 | color: #C6C5FE;
99 | }
100 |
101 | .token.operator {
102 | color: #EDEDED;
103 | }
104 |
105 | .token.entity {
106 | color: #FFFFB6;
107 | /* text-decoration: underline; */
108 | }
109 |
110 | .token.url {
111 | color: #96CBFE;
112 | }
113 |
114 | .language-css .token.string,
115 | .style .token.string {
116 | color: #87C38A;
117 | }
118 |
119 | .token.atrule,
120 | .token.attr-value {
121 | color: #F9EE98;
122 | }
123 |
124 | .token.function {
125 | color: #DAD085;
126 | }
127 |
128 | .token.regex {
129 | color: #E9C062;
130 | }
131 |
132 | .token.important {
133 | color: #fd971f;
134 | }
135 |
136 | .token.important,
137 | .token.bold {
138 | font-weight: bold;
139 | }
140 | .token.italic {
141 | font-style: italic;
142 | }
143 |
144 | .token.entity {
145 | cursor: help;
146 | }
147 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-base16-ateliersulphurpool.light.css:
--------------------------------------------------------------------------------
1 | /*
2 |
3 | Name: Base16 Atelier Sulphurpool Light
4 | Author: Bram de Haan (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/sulphurpool)
5 |
6 | Prism template by Bram de Haan (http://atelierbram.github.io/syntax-highlighting/prism/)
7 | Original Base16 color scheme by Chris Kempson (https://github.com/chriskempson/base16)
8 |
9 | */
10 | code[class*="language-"],
11 | pre[class*="language-"] {
12 | font-family: Consolas, Menlo, Monaco, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", "Courier New", Courier, monospace;
13 | font-size: 14px;
14 | line-height: 1.375;
15 | direction: ltr;
16 | text-align: left;
17 | white-space: pre;
18 | word-spacing: normal;
19 | word-break: normal;
20 | -moz-tab-size: 4;
21 | -o-tab-size: 4;
22 | tab-size: 4;
23 | -webkit-hyphens: none;
24 | -moz-hyphens: none;
25 | -ms-hyphens: none;
26 | hyphens: none;
27 | background: #f5f7ff;
28 | color: #5e6687;
29 | }
30 |
31 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
32 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
33 | text-shadow: none;
34 | background: #dfe2f1;
35 | }
36 |
37 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
38 | code[class*="language-"]::selection, code[class*="language-"] ::selection {
39 | text-shadow: none;
40 | background: #dfe2f1;
41 | }
42 |
43 | /* Code blocks */
44 | pre[class*="language-"] {
45 | padding: 1em;
46 | margin: .5em 0;
47 | overflow: auto;
48 | }
49 |
50 | /* Inline code */
51 | :not(pre) > code[class*="language-"] {
52 | padding: .1em;
53 | border-radius: .3em;
54 | }
55 |
56 | .token.comment,
57 | .token.prolog,
58 | .token.doctype,
59 | .token.cdata {
60 | color: #898ea4;
61 | }
62 |
63 | .token.punctuation {
64 | color: #5e6687;
65 | }
66 |
67 | .token.namespace {
68 | opacity: .7;
69 | }
70 |
71 | .token.operator,
72 | .token.boolean,
73 | .token.number {
74 | color: #c76b29;
75 | }
76 |
77 | .token.property {
78 | color: #c08b30;
79 | }
80 |
81 | .token.tag {
82 | color: #3d8fd1;
83 | }
84 |
85 | .token.string {
86 | color: #22a2c9;
87 | }
88 |
89 | .token.selector {
90 | color: #6679cc;
91 | }
92 |
93 | .token.attr-name {
94 | color: #c76b29;
95 | }
96 |
97 | .token.entity,
98 | .token.url,
99 | .language-css .token.string,
100 | .style .token.string {
101 | color: #22a2c9;
102 | }
103 |
104 | .token.attr-value,
105 | .token.keyword,
106 | .token.control,
107 | .token.directive,
108 | .token.unit {
109 | color: #ac9739;
110 | }
111 |
112 | .token.statement,
113 | .token.regex,
114 | .token.atrule {
115 | color: #22a2c9;
116 | }
117 |
118 | .token.placeholder,
119 | .token.variable {
120 | color: #3d8fd1;
121 | }
122 |
123 | .token.deleted {
124 | text-decoration: line-through;
125 | }
126 |
127 | .token.inserted {
128 | border-bottom: 1px dotted #202746;
129 | text-decoration: none;
130 | }
131 |
132 | .token.italic {
133 | font-style: italic;
134 | }
135 |
136 | .token.important,
137 | .token.bold {
138 | font-weight: bold;
139 | }
140 |
141 | .token.important {
142 | color: #c94922;
143 | }
144 |
145 | .token.entity {
146 | cursor: help;
147 | }
148 |
149 | pre > code.highlight {
150 | outline: 0.4em solid #c94922;
151 | outline-offset: .4em;
152 | }
153 |
154 | /* overrides color-values for the Line Numbers plugin
155 | * http://prismjs.com/plugins/line-numbers/
156 | */
157 | .line-numbers .line-numbers-rows {
158 | border-right-color: #dfe2f1;
159 | }
160 |
161 | .line-numbers-rows > span:before {
162 | color: #979db4;
163 | }
164 |
165 | /* overrides color-values for the Line Highlight plugin
166 | * http://prismjs.com/plugins/line-highlight/
167 | */
168 | .line-highlight {
169 | background: rgba(107, 115, 148, 0.2);
170 | background: -webkit-linear-gradient(left, rgba(107, 115, 148, 0.2) 70%, rgba(107, 115, 148, 0));
171 | background: linear-gradient(to right, rgba(107, 115, 148, 0.2) 70%, rgba(107, 115, 148, 0));
172 | }
173 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-cb.css:
--------------------------------------------------------------------------------
1 | /*
2 | * Based on Plugin: Syntax Highlighter CB
3 | * Plugin URI: http://wp.tutsplus.com/tutorials/plugins/adding-a-syntax-highlighter-shortcode-using-prism-js
4 | * Description: Highlight your code snippets with an easy to use shortcode based on Lea Verou's Prism.js.
5 | * Version: 1.0.0
6 | * Author: c.bavota
7 | * Author URI: http://bavotasan.comhttp://wp.tutsplus.com/tutorials/plugins/adding-a-syntax-highlighter-shortcode-using-prism-js/ */
8 | /* http://cbavota.bitbucket.org/syntax-highlighter/ */
9 |
10 | /* ===== ===== */
11 | code[class*="language-"],
12 | pre[class*="language-"] {
13 | color: #fff;
14 | text-shadow: 0 1px 1px #000;
15 | font-family: Menlo, Monaco, "Courier New", monospace;
16 | direction: ltr;
17 | text-align: left;
18 | word-spacing: normal;
19 | white-space: pre;
20 | word-wrap: normal;
21 | line-height: 1.4;
22 | background: none;
23 | border: 0;
24 |
25 | -moz-tab-size: 4;
26 | -o-tab-size: 4;
27 | tab-size: 4;
28 |
29 | -webkit-hyphens: none;
30 | -moz-hyphens: none;
31 | -ms-hyphens: none;
32 | hyphens: none;
33 | }
34 |
35 | pre[class*="language-"] code {
36 | float: left;
37 | padding: 0 15px 0 0;
38 | }
39 |
40 | pre[class*="language-"],
41 | :not(pre) > code[class*="language-"] {
42 | background: #222;
43 | }
44 |
45 | /* Code blocks */
46 | pre[class*="language-"] {
47 | padding: 15px;
48 | margin: 1em 0;
49 | overflow: auto;
50 | -moz-border-radius: 8px;
51 | -webkit-border-radius: 8px;
52 | border-radius: 8px;
53 | }
54 |
55 | /* Inline code */
56 | :not(pre) > code[class*="language-"] {
57 | padding: 5px 10px;
58 | line-height: 1;
59 | -moz-border-radius: 3px;
60 | -webkit-border-radius: 3px;
61 | border-radius: 3px;
62 | }
63 |
64 | .token.comment,
65 | .token.prolog,
66 | .token.doctype,
67 | .token.cdata {
68 | color: #797979;
69 | }
70 |
71 | .token.selector,
72 | .token.operator,
73 | .token.punctuation {
74 | color: #fff;
75 | }
76 |
77 | .token.namespace {
78 | opacity: .7;
79 | }
80 |
81 | .token.tag,
82 | .token.boolean {
83 | color: #ffd893;
84 | }
85 |
86 | .token.atrule,
87 | .token.attr-value,
88 | .token.hex,
89 | .token.string {
90 | color: #B0C975;
91 | }
92 |
93 | .token.property,
94 | .token.entity,
95 | .token.url,
96 | .token.attr-name,
97 | .token.keyword {
98 | color: #c27628;
99 | }
100 |
101 | .token.regex {
102 | color: #9B71C6;
103 | }
104 |
105 | .token.entity {
106 | cursor: help;
107 | }
108 |
109 | .token.function,
110 | .token.constant {
111 | color: #e5a638;
112 | }
113 |
114 | .token.variable {
115 | color: #fdfba8;
116 | }
117 |
118 | .token.number {
119 | color: #8799B0;
120 | }
121 |
122 | .token.important,
123 | .token.deliminator {
124 | color: #E45734;
125 | }
126 |
127 | /* Line highlight plugin */
128 | pre[data-line] {
129 | position: relative;
130 | padding: 1em 0 1em 3em;
131 | }
132 |
133 | .line-highlight {
134 | position: absolute;
135 | left: 0;
136 | right: 0;
137 | margin-top: 1em; /* Same as .prism's padding-top */
138 | background: rgba(255,255,255,.2);
139 | pointer-events: none;
140 | line-height: inherit;
141 | white-space: pre;
142 | }
143 |
144 | .line-highlight:before,
145 | .line-highlight[data-end]:after {
146 | content: attr(data-start);
147 | position: absolute;
148 | top: .3em;
149 | left: .6em;
150 | min-width: 1em;
151 | padding: 0 .5em;
152 | background-color: rgba(255,255,255,.3);
153 | color: #fff;
154 | font: bold 65%/1.5 sans-serif;
155 | text-align: center;
156 | -moz-border-radius: 8px;
157 | -webkit-border-radius: 8px;
158 | border-radius: 8px;
159 | text-shadow: none;
160 | }
161 |
162 | .line-highlight[data-end]:after {
163 | content: attr(data-end);
164 | top: auto;
165 | bottom: .4em;
166 | }
167 |
168 | /* for line numbers */
169 | .line-numbers-rows {
170 | margin: 0;
171 | }
172 |
173 | .line-numbers-rows span {
174 | padding-right: 10px;
175 | border-right: 3px #d9d336 solid;
176 | }
177 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-darcula.css:
--------------------------------------------------------------------------------
1 | /**
2 | * Darcula theme
3 | *
4 | * Adapted from a theme based on:
5 | * IntelliJ Darcula Theme (https://github.com/bulenkov/Darcula)
6 | *
7 | * @author Alexandre Paradis
8 | * @version 1.0
9 | */
10 |
11 | code[class*="language-"],
12 | pre[class*="language-"] {
13 | color: #a9b7c6;
14 | font-family: Consolas, Monaco, 'Andale Mono', monospace;
15 | direction: ltr;
16 | text-align: left;
17 | white-space: pre;
18 | word-spacing: normal;
19 | word-break: normal;
20 | line-height: 1.5;
21 |
22 | -moz-tab-size: 4;
23 | -o-tab-size: 4;
24 | tab-size: 4;
25 |
26 | -webkit-hyphens: none;
27 | -moz-hyphens: none;
28 | -ms-hyphens: none;
29 | hyphens: none;
30 | }
31 |
32 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
33 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
34 | color: inherit;
35 | background: rgba(33,66,131,.85);
36 | }
37 |
38 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
39 | code[class*="language-"]::selection, code[class*="language-"] ::selection {
40 | color: inherit;
41 | background: rgba(33,66,131,.85);
42 | }
43 |
44 | /* Code blocks */
45 | pre[class*="language-"] {
46 | padding: 1em;
47 | margin: .5em 0;
48 | overflow: auto;
49 | }
50 |
51 | :not(pre) > code[class*="language-"],
52 | pre[class*="language-"] {
53 | background: #2b2b2b;
54 | }
55 |
56 | /* Inline code */
57 | :not(pre) > code[class*="language-"] {
58 | padding: .1em;
59 | border-radius: .3em;
60 | }
61 |
62 | .token.comment,
63 | .token.prolog,
64 | .token.cdata {
65 | color: #808080;
66 | }
67 |
68 | .token.delimiter,
69 | .token.boolean,
70 | .token.keyword,
71 | .token.selector,
72 | .token.important,
73 | .token.atrule {
74 | color: #cc7832;
75 | }
76 |
77 | .token.operator,
78 | .token.punctuation,
79 | .token.attr-name {
80 | color: #a9b7c6;
81 | }
82 |
83 | .token.tag,
84 | .token.tag .punctuation,
85 | .token.doctype,
86 | .token.builtin {
87 | color: #e8bf6a;
88 | }
89 |
90 | .token.entity,
91 | .token.number,
92 | .token.symbol {
93 | color: #6897bb;
94 | }
95 |
96 | .token.property,
97 | .token.constant,
98 | .token.variable {
99 | color: #9876aa;
100 | }
101 |
102 | .token.string,
103 | .token.char {
104 | color: #6a8759;
105 | }
106 |
107 | .token.attr-value,
108 | .token.attr-value .punctuation {
109 | color: #a5c261;
110 | }
111 | .token.attr-value .punctuation:first-child {
112 | color: #a9b7c6;
113 | }
114 |
115 | .token.url {
116 | color: #287bde;
117 | text-decoration: underline;
118 | }
119 |
120 | .token.function {
121 | color: #ffc66d;
122 | }
123 |
124 | .token.regex {
125 | background: #364135;
126 | }
127 |
128 | .token.bold {
129 | font-weight: bold;
130 | }
131 |
132 | .token.italic {
133 | font-style: italic;
134 | }
135 |
136 | .token.inserted {
137 | background: #294436;
138 | }
139 |
140 | .token.deleted {
141 | background: #484a4a;
142 | }
143 |
144 | /*code.language-css .token.punctuation {
145 | color: #cc7832;
146 | }*/
147 |
148 | code.language-css .token.property,
149 | code.language-css .token.property + .token.punctuation {
150 | color: #a9b7c6;
151 | }
152 |
153 | code.language-css .token.id {
154 | color: #ffc66d;
155 | }
156 |
157 | code.language-css .token.selector > .token.class,
158 | code.language-css .token.selector > .token.attribute,
159 | code.language-css .token.selector > .token.pseudo-class,
160 | code.language-css .token.selector > .token.pseudo-element {
161 | color: #ffc66d;
162 | }
--------------------------------------------------------------------------------
/_site/css/prism/prism-duotone-dark.css:
--------------------------------------------------------------------------------
1 | /*
2 | Name: Duotone Dark
3 | Author: Simurai, adapted from DuoTone themes for Atom (http://simurai.com/projects/2016/01/01/duotone-themes)
4 |
5 | Conversion: Bram de Haan (http://atelierbram.github.io/Base2Tone-prism/output/prism/prism-base2tone-evening-dark.css)
6 | Generated with Base16 Builder (https://github.com/base16-builder/base16-builder)
7 | */
8 |
9 | code[class*="language-"],
10 | pre[class*="language-"] {
11 | font-family: Consolas, Menlo, Monaco, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", "Courier New", Courier, monospace;
12 | font-size: 14px;
13 | line-height: 1.375;
14 | direction: ltr;
15 | text-align: left;
16 | white-space: pre;
17 | word-spacing: normal;
18 | word-break: normal;
19 |
20 | -moz-tab-size: 4;
21 | -o-tab-size: 4;
22 | tab-size: 4;
23 |
24 | -webkit-hyphens: none;
25 | -moz-hyphens: none;
26 | -ms-hyphens: none;
27 | hyphens: none;
28 | background: #2a2734;
29 | color: #9a86fd;
30 | }
31 |
32 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
33 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
34 | text-shadow: none;
35 | background: #6a51e6;
36 | }
37 |
38 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
39 | code[class*="language-"]::selection, code[class*="language-"] ::selection {
40 | text-shadow: none;
41 | background: #6a51e6;
42 | }
43 |
44 | /* Code blocks */
45 | pre[class*="language-"] {
46 | padding: 1em;
47 | margin: .5em 0;
48 | overflow: auto;
49 | }
50 |
51 | /* Inline code */
52 | :not(pre) > code[class*="language-"] {
53 | padding: .1em;
54 | border-radius: .3em;
55 | }
56 |
57 | .token.comment,
58 | .token.prolog,
59 | .token.doctype,
60 | .token.cdata {
61 | color: #6c6783;
62 | }
63 |
64 | .token.punctuation {
65 | color: #6c6783;
66 | }
67 |
68 | .token.namespace {
69 | opacity: .7;
70 | }
71 |
72 | .token.tag,
73 | .token.operator,
74 | .token.number {
75 | color: #e09142;
76 | }
77 |
78 | .token.property,
79 | .token.function {
80 | color: #9a86fd;
81 | }
82 |
83 | .token.tag-id,
84 | .token.selector,
85 | .token.atrule-id {
86 | color: #eeebff;
87 | }
88 |
89 | code.language-javascript,
90 | .token.attr-name {
91 | color: #c4b9fe;
92 | }
93 |
94 | code.language-css,
95 | code.language-scss,
96 | .token.boolean,
97 | .token.string,
98 | .token.entity,
99 | .token.url,
100 | .language-css .token.string,
101 | .language-scss .token.string,
102 | .style .token.string,
103 | .token.attr-value,
104 | .token.keyword,
105 | .token.control,
106 | .token.directive,
107 | .token.unit,
108 | .token.statement,
109 | .token.regex,
110 | .token.atrule {
111 | color: #ffcc99;
112 | }
113 |
114 | .token.placeholder,
115 | .token.variable {
116 | color: #ffcc99;
117 | }
118 |
119 | .token.deleted {
120 | text-decoration: line-through;
121 | }
122 |
123 | .token.inserted {
124 | border-bottom: 1px dotted #eeebff;
125 | text-decoration: none;
126 | }
127 |
128 | .token.italic {
129 | font-style: italic;
130 | }
131 |
132 | .token.important,
133 | .token.bold {
134 | font-weight: bold;
135 | }
136 |
137 | .token.important {
138 | color: #c4b9fe;
139 | }
140 |
141 | .token.entity {
142 | cursor: help;
143 | }
144 |
145 | pre > code.highlight {
146 | outline: .4em solid #8a75f5;
147 | outline-offset: .4em;
148 | }
149 |
150 | /* overrides color-values for the Line Numbers plugin
151 | * http://prismjs.com/plugins/line-numbers/
152 | */
153 | .line-numbers .line-numbers-rows {
154 | border-right-color: #2c2937;
155 | }
156 |
157 | .line-numbers-rows > span:before {
158 | color: #3c3949;
159 | }
160 |
161 | /* overrides color-values for the Line Highlight plugin
162 | * http://prismjs.com/plugins/line-highlight/
163 | */
164 | .line-highlight {
165 | background: rgba(224, 145, 66, 0.2);
166 | background: -webkit-linear-gradient(left, rgba(224, 145, 66, 0.2) 70%, rgba(224, 145, 66, 0));
167 | background: linear-gradient(to right, rgba(224, 145, 66, 0.2) 70%, rgba(224, 145, 66, 0));
168 | }
169 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-duotone-earth.css:
--------------------------------------------------------------------------------
1 | /*
2 | Name: Duotone Earth
3 | Author: Simurai, adapted from DuoTone themes for Atom (http://simurai.com/projects/2016/01/01/duotone-themes)
4 |
5 | Conversion: Bram de Haan (http://atelierbram.github.io/Base2Tone-prism/output/prism/prism-base2tone-earth-dark.css)
6 | Generated with Base16 Builder (https://github.com/base16-builder/base16-builder)
7 | */
8 |
9 | code[class*="language-"],
10 | pre[class*="language-"] {
11 | font-family: Consolas, Menlo, Monaco, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", "Courier New", Courier, monospace;
12 | font-size: 14px;
13 | line-height: 1.375;
14 | direction: ltr;
15 | text-align: left;
16 | white-space: pre;
17 | word-spacing: normal;
18 | word-break: normal;
19 |
20 | -moz-tab-size: 4;
21 | -o-tab-size: 4;
22 | tab-size: 4;
23 |
24 | -webkit-hyphens: none;
25 | -moz-hyphens: none;
26 | -ms-hyphens: none;
27 | hyphens: none;
28 | background: #322d29;
29 | color: #88786d;
30 | }
31 |
32 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
33 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
34 | text-shadow: none;
35 | background: #6f5849;
36 | }
37 |
38 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
39 | code[class*="language-"]::selection, code[class*="language-"] ::selection {
40 | text-shadow: none;
41 | background: #6f5849;
42 | }
43 |
44 | /* Code blocks */
45 | pre[class*="language-"] {
46 | padding: 1em;
47 | margin: .5em 0;
48 | overflow: auto;
49 | }
50 |
51 | /* Inline code */
52 | :not(pre) > code[class*="language-"] {
53 | padding: .1em;
54 | border-radius: .3em;
55 | }
56 |
57 | .token.comment,
58 | .token.prolog,
59 | .token.doctype,
60 | .token.cdata {
61 | color: #6a5f58;
62 | }
63 |
64 | .token.punctuation {
65 | color: #6a5f58;
66 | }
67 |
68 | .token.namespace {
69 | opacity: .7;
70 | }
71 |
72 | .token.tag,
73 | .token.operator,
74 | .token.number {
75 | color: #bfa05a;
76 | }
77 |
78 | .token.property,
79 | .token.function {
80 | color: #88786d;
81 | }
82 |
83 | .token.tag-id,
84 | .token.selector,
85 | .token.atrule-id {
86 | color: #fff3eb;
87 | }
88 |
89 | code.language-javascript,
90 | .token.attr-name {
91 | color: #a48774;
92 | }
93 |
94 | code.language-css,
95 | code.language-scss,
96 | .token.boolean,
97 | .token.string,
98 | .token.entity,
99 | .token.url,
100 | .language-css .token.string,
101 | .language-scss .token.string,
102 | .style .token.string,
103 | .token.attr-value,
104 | .token.keyword,
105 | .token.control,
106 | .token.directive,
107 | .token.unit,
108 | .token.statement,
109 | .token.regex,
110 | .token.atrule {
111 | color: #fcc440;
112 | }
113 |
114 | .token.placeholder,
115 | .token.variable {
116 | color: #fcc440;
117 | }
118 |
119 | .token.deleted {
120 | text-decoration: line-through;
121 | }
122 |
123 | .token.inserted {
124 | border-bottom: 1px dotted #fff3eb;
125 | text-decoration: none;
126 | }
127 |
128 | .token.italic {
129 | font-style: italic;
130 | }
131 |
132 | .token.important,
133 | .token.bold {
134 | font-weight: bold;
135 | }
136 |
137 | .token.important {
138 | color: #a48774;
139 | }
140 |
141 | .token.entity {
142 | cursor: help;
143 | }
144 |
145 | pre > code.highlight {
146 | outline: .4em solid #816d5f;
147 | outline-offset: .4em;
148 | }
149 |
150 | /* overrides color-values for the Line Numbers plugin
151 | * http://prismjs.com/plugins/line-numbers/
152 | */
153 | .line-numbers .line-numbers-rows {
154 | border-right-color: #35302b;
155 | }
156 |
157 | .line-numbers-rows > span:before {
158 | color: #46403d;
159 | }
160 |
161 | /* overrides color-values for the Line Highlight plugin
162 | * http://prismjs.com/plugins/line-highlight/
163 | */
164 | .line-highlight {
165 | background: rgba(191, 160, 90, 0.2);
166 | background: -webkit-linear-gradient(left, rgba(191, 160, 90, 0.2) 70%, rgba(191, 160, 90, 0));
167 | background: linear-gradient(to right, rgba(191, 160, 90, 0.2) 70%, rgba(191, 160, 90, 0));
168 | }
169 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-duotone-forest.css:
--------------------------------------------------------------------------------
1 | /*
2 | Name: Duotone Forest
3 | Author: by Simurai, adapted from DuoTone themes for Atom (http://simurai.com/projects/2016/01/01/duotone-themes)
4 |
5 | Conversion: Bram de Haan (http://atelierbram.github.io/Base2Tone-prism/output/prism/prism-base2tone-forest-dark.css)
6 | Generated with Base16 Builder (https://github.com/base16-builder/base16-builder)
7 | */
8 |
9 | code[class*="language-"],
10 | pre[class*="language-"] {
11 | font-family: Consolas, Menlo, Monaco, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", "Courier New", Courier, monospace;
12 | font-size: 14px;
13 | line-height: 1.375;
14 | direction: ltr;
15 | text-align: left;
16 | white-space: pre;
17 | word-spacing: normal;
18 | word-break: normal;
19 |
20 | -moz-tab-size: 4;
21 | -o-tab-size: 4;
22 | tab-size: 4;
23 |
24 | -webkit-hyphens: none;
25 | -moz-hyphens: none;
26 | -ms-hyphens: none;
27 | hyphens: none;
28 | background: #2a2d2a;
29 | color: #687d68;
30 | }
31 |
32 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
33 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
34 | text-shadow: none;
35 | background: #435643;
36 | }
37 |
38 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
39 | code[class*="language-"]::selection, code[class*="language-"] ::selection {
40 | text-shadow: none;
41 | background: #435643;
42 | }
43 |
44 | /* Code blocks */
45 | pre[class*="language-"] {
46 | padding: 1em;
47 | margin: .5em 0;
48 | overflow: auto;
49 | }
50 |
51 | /* Inline code */
52 | :not(pre) > code[class*="language-"] {
53 | padding: .1em;
54 | border-radius: .3em;
55 | }
56 |
57 | .token.comment,
58 | .token.prolog,
59 | .token.doctype,
60 | .token.cdata {
61 | color: #535f53;
62 | }
63 |
64 | .token.punctuation {
65 | color: #535f53;
66 | }
67 |
68 | .token.namespace {
69 | opacity: .7;
70 | }
71 |
72 | .token.tag,
73 | .token.operator,
74 | .token.number {
75 | color: #a2b34d;
76 | }
77 |
78 | .token.property,
79 | .token.function {
80 | color: #687d68;
81 | }
82 |
83 | .token.tag-id,
84 | .token.selector,
85 | .token.atrule-id {
86 | color: #f0fff0;
87 | }
88 |
89 | code.language-javascript,
90 | .token.attr-name {
91 | color: #b3d6b3;
92 | }
93 |
94 | code.language-css,
95 | code.language-scss,
96 | .token.boolean,
97 | .token.string,
98 | .token.entity,
99 | .token.url,
100 | .language-css .token.string,
101 | .language-scss .token.string,
102 | .style .token.string,
103 | .token.attr-value,
104 | .token.keyword,
105 | .token.control,
106 | .token.directive,
107 | .token.unit,
108 | .token.statement,
109 | .token.regex,
110 | .token.atrule {
111 | color: #e5fb79;
112 | }
113 |
114 | .token.placeholder,
115 | .token.variable {
116 | color: #e5fb79;
117 | }
118 |
119 | .token.deleted {
120 | text-decoration: line-through;
121 | }
122 |
123 | .token.inserted {
124 | border-bottom: 1px dotted #f0fff0;
125 | text-decoration: none;
126 | }
127 |
128 | .token.italic {
129 | font-style: italic;
130 | }
131 |
132 | .token.important,
133 | .token.bold {
134 | font-weight: bold;
135 | }
136 |
137 | .token.important {
138 | color: #b3d6b3;
139 | }
140 |
141 | .token.entity {
142 | cursor: help;
143 | }
144 |
145 | pre > code.highlight {
146 | outline: .4em solid #5c705c;
147 | outline-offset: .4em;
148 | }
149 |
150 | /* overrides color-values for the Line Numbers plugin
151 | * http://prismjs.com/plugins/line-numbers/
152 | */
153 | .line-numbers .line-numbers-rows {
154 | border-right-color: #2c302c;
155 | }
156 |
157 | .line-numbers-rows > span:before {
158 | color: #3b423b;
159 | }
160 |
161 | /* overrides color-values for the Line Highlight plugin
162 | * http://prismjs.com/plugins/line-highlight/
163 | */
164 | .line-highlight {
165 | background: rgba(162, 179, 77, 0.2);
166 | background: -webkit-linear-gradient(left, rgba(162, 179, 77, 0.2) 70%, rgba(162, 179, 77, 0));
167 | background: linear-gradient(to right, rgba(162, 179, 77, 0.2) 70%, rgba(162, 179, 77, 0));
168 | }
169 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-duotone-light.css:
--------------------------------------------------------------------------------
1 | /*
2 | Name: Duotone Light
3 | Author: Simurai, adapted from DuoTone themes for Atom (http://simurai.com/projects/2016/01/01/duotone-themes)
4 |
5 | Conversion: Bram de Haan (http://atelierbram.github.io/Base2Tone-prism/output/prism/prism-base2tone-morning-light.css)
6 | Generated with Base16 Builder (https://github.com/base16-builder/base16-builder)
7 | */
8 |
9 | code[class*="language-"],
10 | pre[class*="language-"] {
11 | font-family: Consolas, Menlo, Monaco, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", "Courier New", Courier, monospace;
12 | font-size: 14px;
13 | line-height: 1.375;
14 | direction: ltr;
15 | text-align: left;
16 | white-space: pre;
17 | word-spacing: normal;
18 | word-break: normal;
19 |
20 | -moz-tab-size: 4;
21 | -o-tab-size: 4;
22 | tab-size: 4;
23 |
24 | -webkit-hyphens: none;
25 | -moz-hyphens: none;
26 | -ms-hyphens: none;
27 | hyphens: none;
28 | background: #faf8f5;
29 | color: #728fcb;
30 | }
31 |
32 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
33 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
34 | text-shadow: none;
35 | background: #faf8f5;
36 | }
37 |
38 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
39 | code[class*="language-"]::selection, code[class*="language-"] ::selection {
40 | text-shadow: none;
41 | background: #faf8f5;
42 | }
43 |
44 | /* Code blocks */
45 | pre[class*="language-"] {
46 | padding: 1em;
47 | margin: .5em 0;
48 | overflow: auto;
49 | }
50 |
51 | /* Inline code */
52 | :not(pre) > code[class*="language-"] {
53 | padding: .1em;
54 | border-radius: .3em;
55 | }
56 |
57 | .token.comment,
58 | .token.prolog,
59 | .token.doctype,
60 | .token.cdata {
61 | color: #b6ad9a;
62 | }
63 |
64 | .token.punctuation {
65 | color: #b6ad9a;
66 | }
67 |
68 | .token.namespace {
69 | opacity: .7;
70 | }
71 |
72 | .token.tag,
73 | .token.operator,
74 | .token.number {
75 | color: #063289;
76 | }
77 |
78 | .token.property,
79 | .token.function {
80 | color: #b29762;
81 | }
82 |
83 | .token.tag-id,
84 | .token.selector,
85 | .token.atrule-id {
86 | color: #2d2006;
87 | }
88 |
89 | code.language-javascript,
90 | .token.attr-name {
91 | color: #896724;
92 | }
93 |
94 | code.language-css,
95 | code.language-scss,
96 | .token.boolean,
97 | .token.string,
98 | .token.entity,
99 | .token.url,
100 | .language-css .token.string,
101 | .language-scss .token.string,
102 | .style .token.string,
103 | .token.attr-value,
104 | .token.keyword,
105 | .token.control,
106 | .token.directive,
107 | .token.unit,
108 | .token.statement,
109 | .token.regex,
110 | .token.atrule {
111 | color: #728fcb;
112 | }
113 |
114 | .token.placeholder,
115 | .token.variable {
116 | color: #93abdc;
117 | }
118 |
119 | .token.deleted {
120 | text-decoration: line-through;
121 | }
122 |
123 | .token.inserted {
124 | border-bottom: 1px dotted #2d2006;
125 | text-decoration: none;
126 | }
127 |
128 | .token.italic {
129 | font-style: italic;
130 | }
131 |
132 | .token.important,
133 | .token.bold {
134 | font-weight: bold;
135 | }
136 |
137 | .token.important {
138 | color: #896724;
139 | }
140 |
141 | .token.entity {
142 | cursor: help;
143 | }
144 |
145 | pre > code.highlight {
146 | outline: .4em solid #896724;
147 | outline-offset: .4em;
148 | }
149 |
150 | /* overrides color-values for the Line Numbers plugin
151 | * http://prismjs.com/plugins/line-numbers/
152 | */
153 | .line-numbers .line-numbers-rows {
154 | border-right-color: #ece8de;
155 | }
156 |
157 | .line-numbers-rows > span:before {
158 | color: #cdc4b1;
159 | }
160 |
161 | /* overrides color-values for the Line Highlight plugin
162 | * http://prismjs.com/plugins/line-highlight/
163 | */
164 | .line-highlight {
165 | background: rgba(45, 32, 6, 0.2);
166 | background: -webkit-linear-gradient(left, rgba(45, 32, 6, 0.2) 70%, rgba(45, 32, 6, 0));
167 | background: linear-gradient(to right, rgba(45, 32, 6, 0.2) 70%, rgba(45, 32, 6, 0));
168 | }
169 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-duotone-sea.css:
--------------------------------------------------------------------------------
1 | /*
2 | Name: Duotone Sea
3 | Author: by Simurai, adapted from DuoTone themes by Simurai for Atom (http://simurai.com/projects/2016/01/01/duotone-themes)
4 |
5 | Conversion: Bram de Haan (http://atelierbram.github.io/Base2Tone-prism/output/prism/prism-base2tone-sea-dark.css)
6 | Generated with Base16 Builder (https://github.com/base16-builder/base16-builder)
7 | */
8 |
9 | code[class*="language-"],
10 | pre[class*="language-"] {
11 | font-family: Consolas, Menlo, Monaco, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", "Courier New", Courier, monospace;
12 | font-size: 14px;
13 | line-height: 1.375;
14 | direction: ltr;
15 | text-align: left;
16 | white-space: pre;
17 | word-spacing: normal;
18 | word-break: normal;
19 |
20 | -moz-tab-size: 4;
21 | -o-tab-size: 4;
22 | tab-size: 4;
23 |
24 | -webkit-hyphens: none;
25 | -moz-hyphens: none;
26 | -ms-hyphens: none;
27 | hyphens: none;
28 | background: #1d262f;
29 | color: #57718e;
30 | }
31 |
32 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
33 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
34 | text-shadow: none;
35 | background: #004a9e;
36 | }
37 |
38 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
39 | code[class*="language-"]::selection, code[class*="language-"] ::selection {
40 | text-shadow: none;
41 | background: #004a9e;
42 | }
43 |
44 | /* Code blocks */
45 | pre[class*="language-"] {
46 | padding: 1em;
47 | margin: .5em 0;
48 | overflow: auto;
49 | }
50 |
51 | /* Inline code */
52 | :not(pre) > code[class*="language-"] {
53 | padding: .1em;
54 | border-radius: .3em;
55 | }
56 |
57 | .token.comment,
58 | .token.prolog,
59 | .token.doctype,
60 | .token.cdata {
61 | color: #4a5f78;
62 | }
63 |
64 | .token.punctuation {
65 | color: #4a5f78;
66 | }
67 |
68 | .token.namespace {
69 | opacity: .7;
70 | }
71 |
72 | .token.tag,
73 | .token.operator,
74 | .token.number {
75 | color: #0aa370;
76 | }
77 |
78 | .token.property,
79 | .token.function {
80 | color: #57718e;
81 | }
82 |
83 | .token.tag-id,
84 | .token.selector,
85 | .token.atrule-id {
86 | color: #ebf4ff;
87 | }
88 |
89 | code.language-javascript,
90 | .token.attr-name {
91 | color: #7eb6f6;
92 | }
93 |
94 | code.language-css,
95 | code.language-scss,
96 | .token.boolean,
97 | .token.string,
98 | .token.entity,
99 | .token.url,
100 | .language-css .token.string,
101 | .language-scss .token.string,
102 | .style .token.string,
103 | .token.attr-value,
104 | .token.keyword,
105 | .token.control,
106 | .token.directive,
107 | .token.unit,
108 | .token.statement,
109 | .token.regex,
110 | .token.atrule {
111 | color: #47ebb4;
112 | }
113 |
114 | .token.placeholder,
115 | .token.variable {
116 | color: #47ebb4;
117 | }
118 |
119 | .token.deleted {
120 | text-decoration: line-through;
121 | }
122 |
123 | .token.inserted {
124 | border-bottom: 1px dotted #ebf4ff;
125 | text-decoration: none;
126 | }
127 |
128 | .token.italic {
129 | font-style: italic;
130 | }
131 |
132 | .token.important,
133 | .token.bold {
134 | font-weight: bold;
135 | }
136 |
137 | .token.important {
138 | color: #7eb6f6;
139 | }
140 |
141 | .token.entity {
142 | cursor: help;
143 | }
144 |
145 | pre > code.highlight {
146 | outline: .4em solid #34659d;
147 | outline-offset: .4em;
148 | }
149 |
150 | /* overrides color-values for the Line Numbers plugin
151 | * http://prismjs.com/plugins/line-numbers/
152 | */
153 | .line-numbers .line-numbers-rows {
154 | border-right-color: #1f2932;
155 | }
156 |
157 | .line-numbers-rows > span:before {
158 | color: #2c3847;
159 | }
160 |
161 | /* overrides color-values for the Line Highlight plugin
162 | * http://prismjs.com/plugins/line-highlight/
163 | */
164 | .line-highlight {
165 | background: rgba(10, 163, 112, 0.2);
166 | background: -webkit-linear-gradient(left, rgba(10, 163, 112, 0.2) 70%, rgba(10, 163, 112, 0));
167 | background: linear-gradient(to right, rgba(10, 163, 112, 0.2) 70%, rgba(10, 163, 112, 0));
168 | }
169 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-duotone-space.css:
--------------------------------------------------------------------------------
1 | /*
2 | Name: Duotone Space
3 | Author: Simurai, adapted from DuoTone themes for Atom (http://simurai.com/projects/2016/01/01/duotone-themes)
4 |
5 | Conversion: Bram de Haan (http://atelierbram.github.io/Base2Tone-prism/output/prism/prism-base2tone-space-dark.css)
6 | Generated with Base16 Builder (https://github.com/base16-builder/base16-builder)
7 | */
8 |
9 | code[class*="language-"],
10 | pre[class*="language-"] {
11 | font-family: Consolas, Menlo, Monaco, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", "Courier New", Courier, monospace;
12 | font-size: 14px;
13 | line-height: 1.375;
14 | direction: ltr;
15 | text-align: left;
16 | white-space: pre;
17 | word-spacing: normal;
18 | word-break: normal;
19 |
20 | -moz-tab-size: 4;
21 | -o-tab-size: 4;
22 | tab-size: 4;
23 |
24 | -webkit-hyphens: none;
25 | -moz-hyphens: none;
26 | -ms-hyphens: none;
27 | hyphens: none;
28 | background: #24242e;
29 | color: #767693;
30 | }
31 |
32 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
33 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
34 | text-shadow: none;
35 | background: #5151e6;
36 | }
37 |
38 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
39 | code[class*="language-"]::selection, code[class*="language-"] ::selection {
40 | text-shadow: none;
41 | background: #5151e6;
42 | }
43 |
44 | /* Code blocks */
45 | pre[class*="language-"] {
46 | padding: 1em;
47 | margin: .5em 0;
48 | overflow: auto;
49 | }
50 |
51 | /* Inline code */
52 | :not(pre) > code[class*="language-"] {
53 | padding: .1em;
54 | border-radius: .3em;
55 | }
56 |
57 | .token.comment,
58 | .token.prolog,
59 | .token.doctype,
60 | .token.cdata {
61 | color: #5b5b76;
62 | }
63 |
64 | .token.punctuation {
65 | color: #5b5b76;
66 | }
67 |
68 | .token.namespace {
69 | opacity: .7;
70 | }
71 |
72 | .token.tag,
73 | .token.operator,
74 | .token.number {
75 | color: #dd672c;
76 | }
77 |
78 | .token.property,
79 | .token.function {
80 | color: #767693;
81 | }
82 |
83 | .token.tag-id,
84 | .token.selector,
85 | .token.atrule-id {
86 | color: #ebebff;
87 | }
88 |
89 | code.language-javascript,
90 | .token.attr-name {
91 | color: #aaaaca;
92 | }
93 |
94 | code.language-css,
95 | code.language-scss,
96 | .token.boolean,
97 | .token.string,
98 | .token.entity,
99 | .token.url,
100 | .language-css .token.string,
101 | .language-scss .token.string,
102 | .style .token.string,
103 | .token.attr-value,
104 | .token.keyword,
105 | .token.control,
106 | .token.directive,
107 | .token.unit,
108 | .token.statement,
109 | .token.regex,
110 | .token.atrule {
111 | color: #fe8c52;
112 | }
113 |
114 | .token.placeholder,
115 | .token.variable {
116 | color: #fe8c52;
117 | }
118 |
119 | .token.deleted {
120 | text-decoration: line-through;
121 | }
122 |
123 | .token.inserted {
124 | border-bottom: 1px dotted #ebebff;
125 | text-decoration: none;
126 | }
127 |
128 | .token.italic {
129 | font-style: italic;
130 | }
131 |
132 | .token.important,
133 | .token.bold {
134 | font-weight: bold;
135 | }
136 |
137 | .token.important {
138 | color: #aaaaca;
139 | }
140 |
141 | .token.entity {
142 | cursor: help;
143 | }
144 |
145 | pre > code.highlight {
146 | outline: .4em solid #7676f4;
147 | outline-offset: .4em;
148 | }
149 |
150 | /* overrides color-values for the Line Numbers plugin
151 | * http://prismjs.com/plugins/line-numbers/
152 | */
153 | .line-numbers .line-numbers-rows {
154 | border-right-color: #262631;
155 | }
156 |
157 | .line-numbers-rows > span:before {
158 | color: #393949;
159 | }
160 |
161 | /* overrides color-values for the Line Highlight plugin
162 | * http://prismjs.com/plugins/line-highlight/
163 | */
164 | .line-highlight {
165 | background: rgba(221, 103, 44, 0.2);
166 | background: -webkit-linear-gradient(left, rgba(221, 103, 44, 0.2) 70%, rgba(221, 103, 44, 0));
167 | background: linear-gradient(to right, rgba(221, 103, 44, 0.2) 70%, rgba(221, 103, 44, 0));
168 | }
169 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-ghcolors.css:
--------------------------------------------------------------------------------
1 | /**
2 | * GHColors theme by Avi Aryan (http://aviaryan.in)
3 | * Inspired by Github syntax coloring
4 | */
5 |
6 | code[class*="language-"],
7 | pre[class*="language-"] {
8 | color: #393A34;
9 | font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace;
10 | direction: ltr;
11 | text-align: left;
12 | white-space: pre;
13 | word-spacing: normal;
14 | word-break: normal;
15 | font-size: 0.95em;
16 | line-height: 1.2em;
17 |
18 | -moz-tab-size: 4;
19 | -o-tab-size: 4;
20 | tab-size: 4;
21 |
22 | -webkit-hyphens: none;
23 | -moz-hyphens: none;
24 | -ms-hyphens: none;
25 | hyphens: none;
26 | }
27 |
28 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
29 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
30 | background: #b3d4fc;
31 | }
32 |
33 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
34 | code[class*="language-"]::selection, code[class*="language-"] ::selection {
35 | background: #b3d4fc;
36 | }
37 |
38 | /* Code blocks */
39 | pre[class*="language-"] {
40 | padding: 1em;
41 | margin: .5em 0;
42 | overflow: auto;
43 | border: 1px solid #dddddd;
44 | background-color: white;
45 | }
46 |
47 | :not(pre) > code[class*="language-"],
48 | pre[class*="language-"] {
49 | }
50 |
51 | /* Inline code */
52 | :not(pre) > code[class*="language-"] {
53 | padding: .2em;
54 | padding-top: 1px; padding-bottom: 1px;
55 | background: #f8f8f8;
56 | border: 1px solid #dddddd;
57 | }
58 |
59 | .token.comment,
60 | .token.prolog,
61 | .token.doctype,
62 | .token.cdata {
63 | color: #999988; font-style: italic;
64 | }
65 |
66 | .token.namespace {
67 | opacity: .7;
68 | }
69 |
70 | .token.string,
71 | .token.attr-value {
72 | color: #e3116c;
73 | }
74 | .token.punctuation,
75 | .token.operator {
76 | color: #393A34; /* no highlight */
77 | }
78 |
79 | .token.entity,
80 | .token.url,
81 | .token.symbol,
82 | .token.number,
83 | .token.boolean,
84 | .token.variable,
85 | .token.constant,
86 | .token.property,
87 | .token.regex,
88 | .token.inserted {
89 | color: #36acaa;
90 | }
91 |
92 | .token.atrule,
93 | .token.keyword,
94 | .token.attr-name,
95 | .language-autohotkey .token.selector {
96 | color: #00a4db;
97 | }
98 |
99 | .token.function,
100 | .token.deleted,
101 | .language-autohotkey .token.tag {
102 | color: #9a050f;
103 | }
104 |
105 | .token.tag,
106 | .token.selector,
107 | .language-autohotkey .token.keyword {
108 | color: #00009f;
109 | }
110 |
111 | .token.important,
112 | .token.function,
113 | .token.bold {
114 | font-weight: bold;
115 | }
116 |
117 | .token.italic {
118 | font-style: italic;
119 | }
--------------------------------------------------------------------------------
/_site/css/prism/prism-hopscotch.css:
--------------------------------------------------------------------------------
1 | @import url(https://fonts.googleapis.com/css?family=Fira+Mono);
2 | /*
3 | * Hopscotch
4 | * by Jan T. Sott
5 | * https://github.com/idleberg/Hopscotch
6 | *
7 | * This work is licensed under the Creative Commons CC0 1.0 Universal License
8 | */
9 |
10 | code[class*="language-"],
11 | pre[class*="language-"] {
12 | color: #ffffff;
13 | font-family: "Fira Mono", Menlo, Monaco, "Lucida Console","Courier New", Courier, monospace;
14 | font-size: 16px;
15 | line-height: 1.375;
16 | direction: ltr;
17 | text-align: left;
18 | word-spacing: normal;
19 |
20 | -moz-tab-size: 4;
21 | -o-tab-size: 4;
22 | tab-size: 4;
23 |
24 | -webkit-hyphens: none;
25 | -moz-hyphens: none;
26 | -ms-hyphens: none;
27 | hyphens: none;
28 | white-space: pre;
29 | white-space: pre-wrap;
30 | word-break: break-all;
31 | word-wrap: break-word;
32 | background: #322931;
33 | color: #b9b5b8;
34 | }
35 |
36 | /* Code blocks */
37 | pre[class*="language-"] {
38 | padding: 1em;
39 | margin: .5em 0;
40 | overflow: auto;
41 | }
42 |
43 | /* Inline code */
44 | :not(pre) > code[class*="language-"] {
45 | padding: .1em;
46 | border-radius: .3em;
47 | }
48 |
49 | .token.comment,
50 | .token.prolog,
51 | .token.doctype,
52 | .token.cdata {
53 | color: #797379;
54 | }
55 |
56 | .token.punctuation {
57 | color: #b9b5b8;
58 | }
59 |
60 | .namespace {
61 | opacity: .7;
62 | }
63 |
64 | .token.null,
65 | .token.operator,
66 | .token.boolean,
67 | .token.number {
68 | color: #fd8b19;
69 | }
70 | .token.property {
71 | color: #fdcc59;
72 | }
73 | .token.tag {
74 | color: #1290bf;
75 | }
76 | .token.string {
77 | color: #149b93;
78 | }
79 | .token.selector {
80 | color: #c85e7c;
81 | }
82 | .token.attr-name {
83 | color: #fd8b19;
84 | }
85 | .token.entity,
86 | .token.url,
87 | .language-css .token.string,
88 | .style .token.string {
89 | color: #149b93;
90 | }
91 |
92 | .token.attr-value,
93 | .token.keyword,
94 | .token.control,
95 | .token.directive,
96 | .token.unit {
97 | color: #8fc13e;
98 | }
99 |
100 | .token.statement,
101 | .token.regex,
102 | .token.atrule {
103 | color: #149b93;
104 | }
105 |
106 | .token.placeholder,
107 | .token.variable {
108 | color: #1290bf;
109 | }
110 |
111 | .token.important {
112 | color: #dd464c;
113 | font-weight: bold;
114 | }
115 |
116 | .token.entity {
117 | cursor: help;
118 | }
119 |
120 | pre > code.highlight {
121 | outline: .4em solid red;
122 | outline-offset: .4em;
123 | }
124 |
125 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-pojoaque.css:
--------------------------------------------------------------------------------
1 | /*
2 | * Pojoaque Style by Jason Tate
3 | * http://web-cms-designs.com/ftopict-10-pojoaque-style-for-highlight-js-code-highlighter.html
4 | * Based on Solarized Style from http://ethanschoonover.com/solarized
5 | * http://softwaremaniacs.org/media/soft/highlight/test.html
6 | */
7 |
8 | code[class*="language-"],
9 | pre[class*="language-"] {
10 | -moz-tab-size: 4;
11 | -o-tab-size: 4;
12 | tab-size: 4;
13 | -webkit-hyphens: none;
14 | -moz-hyphens: none;
15 | -ms-hyphens: none;
16 | hyphens: none;
17 | white-space: pre;
18 | white-space: pre-wrap;
19 | word-break: break-all;
20 | word-wrap: break-word;
21 | font-family: Menlo, Monaco, "Courier New", monospace;
22 | font-size: 15px;
23 | line-height: 1.5;
24 | color: #dccf8f;
25 | text-shadow: 0;
26 | }
27 |
28 | pre[class*="language-"],
29 | :not(pre) > code[class*="language-"] {
30 | border-radius: 5px;
31 | border: 1px solid #000;
32 | color: #DCCF8F;
33 | background: #181914 url('data:image/jpeg;base64,/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAMAAA/+4ADkFkb2JlAGTAAAAAAf/bAIQACQYGBgcGCQcHCQ0IBwgNDwsJCQsPEQ4ODw4OERENDg4ODg0RERQUFhQUERoaHBwaGiYmJiYmKysrKysrKysrKwEJCAgJCgkMCgoMDwwODA8TDg4ODhMVDg4PDg4VGhMRERERExoXGhYWFhoXHR0aGh0dJCQjJCQrKysrKysrKysr/8AAEQgAjACMAwEiAAIRAQMRAf/EAF4AAQEBAAAAAAAAAAAAAAAAAAABBwEBAQAAAAAAAAAAAAAAAAAAAAIQAAEDAwIHAQEAAAAAAAAAAADwAREhYaExkUFRcYGxwdHh8REBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8AyGFEjHaBS2fDDs2zkhKmBKktb7km+ZwwCnXPkLVmCTMItj6AXFxRS465/BTnkAJvkLkJe+7AKKoi2AtRS2zuAWsCb5GOlBN8gKfmuGHZ8MFqIth3ALmFoFwbwKWyAlTAp17uKqBvgBD8sM4fTjhvAhkzhaRkBMKBrfs7jGPIpzy7gFrAqnC0C0gB0EWwBDW2cBVQwm+QtPpa3wBO3sVvszCnLAhkzgL5/RLf13cLQd8/AGlu0Cb5HTx9KuAEieGJEdcehS3eRTp2ATdt3CpIm+QtZwAhROXFeb7swp/ahaM3kBE/jSIUBc/AWrgBN8uNFAl+b7sAXFxFn2YLUU5Ns7gFX8C4ib+hN8gFWXwK3bZglxEJm+gKdciLPsFV/TClsgJUwKJ5FVA7tvIFrfZhVfGJDcsCKaYgAqv6YRbE+RWOWBtu7+AL3yRalXLyKqAIIfk+zARbDgFyEsncYwJvlgFRW+GEWntIi2P0BooyFxcNr8Ep3+ANLbMO+QyhvbiqdgC0kVvgUUiLYgBS2QtPbiVI1/sgOmG9uO+Y8DW+7jS2zAOnj6O2BndwuIAUtkdRN8gFoK3wwXMQyZwHVbClsuNLd4E3yAUR6FVDBR+BafQGt93LVMxJTv8ABts4CVLhcfYWsCb5kC9/BHdU8CLYFY5bMAd+eX9MGthhpbA1vu4B7+RKkaW2Yq4AQtVBBFsAJU/AuIXBhN8gGWnstefhiZyWvLAEnbYS1uzSFP6Jvn4Baxx70JKkQojLib5AVTey1jjgkKJGO0AKWyOm7N7cSpgSpAdPH0Tfd/gp1z5C1ZgKqN9J2wFxcUUuAFLZAm+QC0Fb4YUVRFsAOvj4KW2dwtYE3yAWk/wS/PLMKfmuGHZ8MAXF/Ja32Yi5haAKWz4Ydm2cSpgU693Atb7km+Zwwh+WGcPpxw3gAkzCLY+iYUDW/Z3Adc/gpzyFrAqnALkJe+7DoItgAtRS2zuKqGE3yAx0oJvkdvYrfZmALURbDuL5/RLf13cAuDeBS2RpbtAm+QFVA3wR+3fUtFHoBDJnC0jIXH0HWsgMY8inPLuOkd9chp4z20ALQLSA8cI9jYAIa2zjzjBd8gRafS1vgiUho/kAKcsCGTOGWvoOpkAtB3z8Hm8x2Ff5ADp4+lXAlIvcmwH/2Q==') repeat left top;
34 | }
35 |
36 | pre[class*="language-"] {
37 | padding: 12px;
38 | overflow: auto;
39 | }
40 |
41 | :not(pre) > code[class*="language-"] {
42 | padding: 2px 6px;
43 | }
44 |
45 | .token.namespace {
46 | opacity: .7;
47 | }
48 | .token.comment,
49 | .token.prolog,
50 | .token.doctype,
51 | .token.cdata {
52 | color: #586e75;
53 | font-style: italic;
54 | }
55 | .token.number,
56 | .token.string,
57 | .token.char,
58 | .token.builtin,
59 | .token.inserted {
60 | color: #468966;
61 | }
62 |
63 | .token.attr-name {
64 | color: #b89859;
65 | }
66 | .token.operator,
67 | .token.entity,
68 | .token.url,
69 | .language-css .token.string,
70 | .style .token.string {
71 | color: #dccf8f;
72 | }
73 | .token.selector,
74 | .token.regex {
75 | color: #859900;
76 | }
77 | .token.atrule,
78 | .token.keyword {
79 | color: #cb4b16;
80 | }
81 |
82 | .token.attr-value {
83 | color: #468966;
84 | }
85 | .token.function,
86 | .token.variable,
87 | .token.placeholder {
88 | color: #b58900;
89 | }
90 | .token.property,
91 | .token.tag,
92 | .token.boolean,
93 | .token.number,
94 | .token.constant,
95 | .token.symbol {
96 | color: #b89859;
97 | }
98 | .token.tag {
99 | color: #ffb03b;
100 | }
101 | .token.important,
102 | .token.statement,
103 | .token.deleted {
104 | color: #dc322f;
105 | }
106 | .token.punctuation {
107 | color: #dccf8f;
108 | }
109 | .token.entity {
110 | cursor: help;
111 | }
112 | .token.bold {
113 | font-weight: bold;
114 | }
115 | .token.italic {
116 | font-style: italic;
117 | }
118 |
119 | /*
120 | .pojoaque-colors {
121 | color: #586e75;
122 | color: #b64926;
123 | color: #468966;
124 | color: #ffb03b;
125 | color: #b58900;
126 | color: #b89859;
127 | color: #dccf8f;
128 | color: #d3a60c;
129 | color: #cb4b16;
130 | color: #dc322f;
131 | color: #073642;
132 | color: #181914;
133 | }
134 | */
135 |
--------------------------------------------------------------------------------
/_site/css/prism/prism-vs.css:
--------------------------------------------------------------------------------
1 | /**
2 | * VS theme by Andrew Lock (https://andrewlock.net)
3 | * Inspired by Visual Studio syntax coloring
4 | */
5 |
6 | code[class*="language-"],
7 | pre[class*="language-"] {
8 | color: #393A34;
9 | font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace;
10 | direction: ltr;
11 | text-align: left;
12 | white-space: pre;
13 | word-spacing: normal;
14 | word-break: normal;
15 | font-size: 0.95em;
16 | line-height: 1.2em;
17 |
18 | -moz-tab-size: 4;
19 | -o-tab-size: 4;
20 | tab-size: 4;
21 |
22 | -webkit-hyphens: none;
23 | -moz-hyphens: none;
24 | -ms-hyphens: none;
25 | hyphens: none;
26 | }
27 |
28 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
29 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
30 | background: #C1DEF1;
31 | }
32 |
33 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
34 | code[class*="language-"]::selection, code[class*="language-"] ::selection {
35 | background: #C1DEF1;
36 | }
37 |
38 | /* Code blocks */
39 | pre[class*="language-"] {
40 | padding: 1em;
41 | margin: .5em 0;
42 | overflow: auto;
43 | border: 1px solid #dddddd;
44 | background-color: white;
45 | }
46 |
47 | /* Inline code */
48 | :not(pre) > code[class*="language-"] {
49 | padding: .2em;
50 | padding-top: 1px; padding-bottom: 1px;
51 | background: #f8f8f8;
52 | border: 1px solid #dddddd;
53 | }
54 |
55 | .token.comment,
56 | .token.prolog,
57 | .token.doctype,
58 | .token.cdata {
59 | color: #008000; font-style: italic;
60 | }
61 |
62 | .token.namespace {
63 | opacity: .7;
64 | }
65 |
66 | .token.string {
67 | color: #A31515;
68 | }
69 |
70 | .token.punctuation,
71 | .token.operator {
72 | color: #393A34; /* no highlight */
73 | }
74 |
75 | .token.url,
76 | .token.symbol,
77 | .token.number,
78 | .token.boolean,
79 | .token.variable,
80 | .token.constant,
81 | .token.inserted {
82 | color: #36acaa;
83 | }
84 |
85 | .token.atrule,
86 | .token.keyword,
87 | .token.attr-value,
88 | .language-autohotkey .token.selector,
89 | .language-json .token.boolean,
90 | .language-json .token.number,
91 | code[class*="language-css"]{
92 | color: #0000ff;
93 | }
94 |
95 | .token.function {
96 | color: #393A34;
97 | }
98 | .token.deleted,
99 | .language-autohotkey .token.tag {
100 | color: #9a050f;
101 | }
102 |
103 | .token.selector,
104 | .language-autohotkey .token.keyword {
105 | color: #00009f;
106 | }
107 |
108 | .token.important,
109 | .token.bold {
110 | font-weight: bold;
111 | }
112 |
113 | .token.italic {
114 | font-style: italic;
115 | }
116 |
117 | .token.class-name,
118 | .language-json .token.property {
119 | color: #2B91AF;
120 | }
121 |
122 | .token.tag,
123 | .token.selector {
124 | color: #800000;
125 | }
126 |
127 | .token.attr-name,
128 | .token.property,
129 | .token.regex,
130 | .token.entity {
131 | color: #ff0000;
132 | }
133 |
134 | .token.directive.tag .tag {
135 | background: #ffff00;
136 | color: #393A34;
137 | }
138 |
139 | /* overrides color-values for the Line Numbers plugin
140 | * http://prismjs.com/plugins/line-numbers/
141 | */
142 | .line-numbers .line-numbers-rows {
143 | border-right-color: #a5a5a5;
144 | }
145 |
146 | .line-numbers-rows > span:before {
147 | color: #2B91AF;
148 | }
149 |
150 | /* overrides color-values for the Line Highlight plugin
151 | * http://prismjs.com/plugins/line-highlight/
152 | */
153 | .line-highlight {
154 | background: rgba(193, 222, 241, 0.2);
155 | background: -webkit-linear-gradient(left, rgba(193, 222, 241, 0.2) 70%, rgba(221, 222, 241, 0));
156 | background: linear-gradient(to right, rgba(193, 222, 241, 0.2) 70%, rgba(221, 222, 241, 0));
157 | }
--------------------------------------------------------------------------------
/_site/css/prism/prism-xonokai.css:
--------------------------------------------------------------------------------
1 | /**
2 | * xonokai theme for JavaScript, CSS and HTML
3 | * based on: https://github.com/MoOx/sass-prism-theme-base by Maxime Thirouin ~ MoOx --> http://moox.fr/ , which is Loosely based on Monokai textmate theme by http://www.monokai.nl/
4 | * license: MIT; http://moox.mit-license.org/
5 | */
6 | code[class*="language-"],
7 | pre[class*="language-"] {
8 | -moz-tab-size: 2;
9 | -o-tab-size: 2;
10 | tab-size: 2;
11 | -webkit-hyphens: none;
12 | -moz-hyphens: none;
13 | -ms-hyphens: none;
14 | hyphens: none;
15 | white-space: pre;
16 | white-space: pre-wrap;
17 | word-wrap: normal;
18 | font-family: Menlo, Monaco, "Courier New", monospace;
19 | font-size: 14px;
20 | color: #76d9e6;
21 | text-shadow: none;
22 | }
23 | pre[class*="language-"],
24 | :not(pre)>code[class*="language-"] {
25 | background: #2a2a2a;
26 | }
27 | pre[class*="language-"] {
28 | padding: 15px;
29 | border-radius: 4px;
30 | border: 1px solid #e1e1e8;
31 | overflow: auto;
32 | }
33 |
34 | pre[class*="language-"] {
35 | position: relative;
36 | }
37 | pre[class*="language-"] code {
38 | white-space: pre;
39 | display: block;
40 | }
41 |
42 | :not(pre)>code[class*="language-"] {
43 | padding: 0.15em 0.2em 0.05em;
44 | border-radius: .3em;
45 | border: 0.13em solid #7a6652;
46 | box-shadow: 1px 1px 0.3em -0.1em #000 inset;
47 | }
48 | .token.namespace {
49 | opacity: .7;
50 | }
51 | .token.comment,
52 | .token.prolog,
53 | .token.doctype,
54 | .token.cdata {
55 | color: #6f705e;
56 | }
57 | .token.operator,
58 | .token.boolean,
59 | .token.number {
60 | color: #a77afe;
61 | }
62 | .token.attr-name,
63 | .token.string {
64 | color: #e6d06c;
65 | }
66 | .token.entity,
67 | .token.url,
68 | .language-css .token.string,
69 | .style .token.string {
70 | color: #e6d06c;
71 | }
72 | .token.selector,
73 | .token.inserted {
74 | color: #a6e22d;
75 | }
76 | .token.atrule,
77 | .token.attr-value,
78 | .token.keyword,
79 | .token.important,
80 | .token.deleted {
81 | color: #ef3b7d;
82 | }
83 | .token.regex,
84 | .token.statement {
85 | color: #76d9e6;
86 | }
87 | .token.placeholder,
88 | .token.variable {
89 | color: #fff;
90 | }
91 | .token.important,
92 | .token.statement,
93 | .token.bold {
94 | font-weight: bold;
95 | }
96 | .token.punctuation {
97 | color: #bebec5;
98 | }
99 | .token.entity {
100 | cursor: help;
101 | }
102 | .token.italic {
103 | font-style: italic;
104 | }
105 |
106 | code.language-markup {
107 | color: #f9f9f9;
108 | }
109 | code.language-markup .token.tag {
110 | color: #ef3b7d;
111 | }
112 | code.language-markup .token.attr-name {
113 | color: #a6e22d;
114 | }
115 | code.language-markup .token.attr-value {
116 | color: #e6d06c;
117 | }
118 | code.language-markup .token.style,
119 | code.language-markup .token.script {
120 | color: #76d9e6;
121 | }
122 | code.language-markup .token.script .token.keyword {
123 | color: #76d9e6;
124 | }
125 |
126 | /* Line highlight plugin */
127 | pre[class*="language-"][data-line] {
128 | position: relative;
129 | padding: 1em 0 1em 3em;
130 | }
131 | pre[data-line] .line-highlight {
132 | position: absolute;
133 | left: 0;
134 | right: 0;
135 | padding: 0;
136 | margin-top: 1em;
137 | background: rgba(255, 255, 255, 0.08);
138 | pointer-events: none;
139 | line-height: inherit;
140 | white-space: pre;
141 | }
142 | pre[data-line] .line-highlight:before,
143 | pre[data-line] .line-highlight[data-end]:after {
144 | content: attr(data-start);
145 | position: absolute;
146 | top: .4em;
147 | left: .6em;
148 | min-width: 1em;
149 | padding: 0.2em 0.5em;
150 | background-color: rgba(255, 255, 255, 0.4);
151 | color: black;
152 | font: bold 65%/1 sans-serif;
153 | height: 1em;
154 | line-height: 1em;
155 | text-align: center;
156 | border-radius: 999px;
157 | text-shadow: none;
158 | box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);
159 | }
160 | pre[data-line] .line-highlight[data-end]:after {
161 | content: attr(data-end);
162 | top: auto;
163 | bottom: .4em;
164 | }
--------------------------------------------------------------------------------
/_site/feed/feed.njk:
--------------------------------------------------------------------------------
1 | ---
2 | permalink: feed/feed.xml
3 | excludeFromSitemap: true
4 | ---
5 |
6 |
7 | {{ metadata.title }}
8 | {{ metadata.feed.subtitle }}
9 |
10 |
11 | {{ collections.posts | rssLastUpdatedDate }}
12 | {{ metadata.feed.id }}
13 |
14 | {{ metadata.author.name }}
15 | {{ metadata.author.email }}
16 |
17 | {%- for post in collections.posts %}
18 | {% set absolutePostUrl %}{{ post.url | url | absoluteUrl(metadata.url) }}{% endset %}
19 |
20 | {{ post.data.title }}
21 |
22 | {{ post.date | rssDate }}
23 | {{ absolutePostUrl }}
24 | {{ post.templateContent | htmlToAbsoluteUrls(absolutePostUrl) }}
25 |
26 | {%- endfor %}
27 |
28 |
--------------------------------------------------------------------------------
/_site/feed/htaccess.njk:
--------------------------------------------------------------------------------
1 | ---
2 | permalink: feed/.htaccess
3 | excludeFromSitemap: true
4 | ---
5 | # For Apache, to show `{{ metadata.feed.filename }}` when browsing to directory /feed/ (hide the file!)
6 | DirectoryIndex {{ metadata.feed.filename }}
7 |
--------------------------------------------------------------------------------
/_site/images/courses/adaptive.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/adaptive.jpg
--------------------------------------------------------------------------------
/_site/images/courses/adaptive_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/adaptive_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/ajax.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/ajax.jpg
--------------------------------------------------------------------------------
/_site/images/courses/ajax_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/ajax_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/angular-interface.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angular-interface.jpg
--------------------------------------------------------------------------------
/_site/images/courses/angular-interface_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angular-interface_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/angular1-registration.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angular1-registration.jpg
--------------------------------------------------------------------------------
/_site/images/courses/angular1-registration_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angular1-registration_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/angularjs1-datadriven.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angularjs1-datadriven.jpg
--------------------------------------------------------------------------------
/_site/images/courses/angularjs1-datadriven_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angularjs1-datadriven_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/angularjs1-formvalidation.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angularjs1-formvalidation.jpg
--------------------------------------------------------------------------------
/_site/images/courses/angularjs1-formvalidation_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angularjs1-formvalidation_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/angularjs1-learning.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angularjs1-learning.jpg
--------------------------------------------------------------------------------
/_site/images/courses/angularjs1-learning_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angularjs1-learning_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/angularjs2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angularjs2.jpg
--------------------------------------------------------------------------------
/_site/images/courses/angularjs2_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/angularjs2_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/bootstrap-singlepagedesign.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/bootstrap-singlepagedesign.jpg
--------------------------------------------------------------------------------
/_site/images/courses/bootstrap-singlepagedesign_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/bootstrap-singlepagedesign_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/bootstrap3-advanced.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/bootstrap3-advanced.jpg
--------------------------------------------------------------------------------
/_site/images/courses/bootstrap3-advanced_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/bootstrap3-advanced_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/bootstrap3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/bootstrap3.jpg
--------------------------------------------------------------------------------
/_site/images/courses/bootstrap3_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/bootstrap3_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/bootstrap4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/bootstrap4.jpg
--------------------------------------------------------------------------------
/_site/images/courses/bootstrap4_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/bootstrap4_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/bootstrap4layouts.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/bootstrap4layouts.jpg
--------------------------------------------------------------------------------
/_site/images/courses/bootstrap4layouts_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/bootstrap4layouts_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/codeclinicjs.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/codeclinicjs.jpg
--------------------------------------------------------------------------------
/_site/images/courses/codeclinicjs_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/codeclinicjs_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/cssforms.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/cssforms.jpg
--------------------------------------------------------------------------------
/_site/images/courses/cssforms_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/cssforms_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/cssnext.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/cssnext.jpg
--------------------------------------------------------------------------------
/_site/images/courses/cssnext_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/cssnext_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/d3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/d3.jpg
--------------------------------------------------------------------------------
/_site/images/courses/d3_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/d3_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/electron.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/electron.jpg
--------------------------------------------------------------------------------
/_site/images/courses/electron_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/electron_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/emmet.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/emmet.jpg
--------------------------------------------------------------------------------
/_site/images/courses/emmet_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/emmet_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/express.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/express.jpg
--------------------------------------------------------------------------------
/_site/images/courses/express_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/express_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/fireworks.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/fireworks.jpg
--------------------------------------------------------------------------------
/_site/images/courses/fireworks_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/fireworks_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/fullstackvsfrontend.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/fullstackvsfrontend.jpg
--------------------------------------------------------------------------------
/_site/images/courses/fullstackvsfrontend_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/fullstackvsfrontend_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/gitandgithub.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/gitandgithub.jpg
--------------------------------------------------------------------------------
/_site/images/courses/gitandgithub_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/gitandgithub_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/githubactions.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/githubactions.jpg
--------------------------------------------------------------------------------
/_site/images/courses/githubactions_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/githubactions_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/javascript-dom.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/javascript-dom.jpg
--------------------------------------------------------------------------------
/_site/images/courses/javascript-dom_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/javascript-dom_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/javascript-events.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/javascript-events.jpg
--------------------------------------------------------------------------------
/_site/images/courses/javascript-events_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/javascript-events_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/javascript-functions.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/javascript-functions.jpg
--------------------------------------------------------------------------------
/_site/images/courses/javascript-functions_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/javascript-functions_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/javascriptphp-forms.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/javascriptphp-forms.jpg
--------------------------------------------------------------------------------
/_site/images/courses/javascriptphp-forms_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/javascriptphp-forms_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/jqueryinterface.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/jqueryinterface.jpg
--------------------------------------------------------------------------------
/_site/images/courses/jqueryinterface_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/jqueryinterface_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/json.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/json.jpg
--------------------------------------------------------------------------------
/_site/images/courses/json_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/json_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/learnatom.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/learnatom.jpg
--------------------------------------------------------------------------------
/_site/images/courses/learnatom_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/learnatom_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/markdown.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/markdown.jpg
--------------------------------------------------------------------------------
/_site/images/courses/markdown_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/markdown_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/masteringwebdeveloper.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/masteringwebdeveloper.jpg
--------------------------------------------------------------------------------
/_site/images/courses/masteringwebdeveloper_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/masteringwebdeveloper_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/npm.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/npm.jpg
--------------------------------------------------------------------------------
/_site/images/courses/npm_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/npm_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/npmscripts.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/npmscripts.jpg
--------------------------------------------------------------------------------
/_site/images/courses/npmscripts_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/npmscripts_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/postcss.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/postcss.jpg
--------------------------------------------------------------------------------
/_site/images/courses/postcss_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/postcss_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/postcssfirstlook.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/postcssfirstlook.jpg
--------------------------------------------------------------------------------
/_site/images/courses/postcssfirstlook_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/postcssfirstlook_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/progressivewebapp.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/progressivewebapp.jpg
--------------------------------------------------------------------------------
/_site/images/courses/progressivewebapp_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/progressivewebapp_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/react-interface.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/react-interface.jpg
--------------------------------------------------------------------------------
/_site/images/courses/react-interface_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/react-interface_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/react-spas.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/react-spas.jpg
--------------------------------------------------------------------------------
/_site/images/courses/react-spas_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/react-spas_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/react.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/react.jpg
--------------------------------------------------------------------------------
/_site/images/courses/react_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/react_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/reveal.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/reveal.jpg
--------------------------------------------------------------------------------
/_site/images/courses/reveal_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/reveal_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/sass.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/sass.jpg
--------------------------------------------------------------------------------
/_site/images/courses/sass_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/sass_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/sasscompass.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/sasscompass.jpg
--------------------------------------------------------------------------------
/_site/images/courses/sasscompass_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/sasscompass_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/screenshot.png
--------------------------------------------------------------------------------
/_site/images/courses/viewsource.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/viewsource.jpg
--------------------------------------------------------------------------------
/_site/images/courses/viewsource_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/viewsource_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/vue.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/vue.jpg
--------------------------------------------------------------------------------
/_site/images/courses/vue_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/vue_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/workflows-grunt.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/workflows-grunt.jpg
--------------------------------------------------------------------------------
/_site/images/courses/workflows-grunt_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/workflows-grunt_tn.png
--------------------------------------------------------------------------------
/_site/images/courses/workflows-gulp.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/workflows-gulp.jpg
--------------------------------------------------------------------------------
/_site/images/courses/workflows-gulp_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/courses/workflows-gulp_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/2016predictions.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/2016predictions.jpg
--------------------------------------------------------------------------------
/_site/images/posts/2016predictions_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/2016predictions_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/angular.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/angular.jpg
--------------------------------------------------------------------------------
/_site/images/posts/angular_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/angular_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/animation.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/animation.jpg
--------------------------------------------------------------------------------
/_site/images/posts/animation_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/animation_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/beforeframework.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/beforeframework.jpg
--------------------------------------------------------------------------------
/_site/images/posts/beforeframework_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/beforeframework_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/chromeextensions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/chromeextensions.png
--------------------------------------------------------------------------------
/_site/images/posts/chromeextensions_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/chromeextensions_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/coding.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/coding.jpg
--------------------------------------------------------------------------------
/_site/images/posts/coding_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/coding_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/dataformats.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/dataformats.png
--------------------------------------------------------------------------------
/_site/images/posts/dataformats_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/dataformats_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/effectivevideo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/effectivevideo.jpg
--------------------------------------------------------------------------------
/_site/images/posts/effectivevideo_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/effectivevideo_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/express.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/express.jpg
--------------------------------------------------------------------------------
/_site/images/posts/express_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/express_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/frontendfullstack.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/frontendfullstack.jpg
--------------------------------------------------------------------------------
/_site/images/posts/frontendfullstack_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/frontendfullstack_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/graduates.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/graduates.png
--------------------------------------------------------------------------------
/_site/images/posts/graduates_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/graduates_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/graphics.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/graphics.png
--------------------------------------------------------------------------------
/_site/images/posts/graphics_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/graphics_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/horizontally.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/horizontally.png
--------------------------------------------------------------------------------
/_site/images/posts/horizontally_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/horizontally_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/ignite.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/ignite.jpg
--------------------------------------------------------------------------------
/_site/images/posts/ignite_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/ignite_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/jsfrontend.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/jsfrontend.png
--------------------------------------------------------------------------------
/_site/images/posts/jsfrontend_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/jsfrontend_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/json.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/json.png
--------------------------------------------------------------------------------
/_site/images/posts/json01-dialog-ray.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/json01-dialog-ray.png
--------------------------------------------------------------------------------
/_site/images/posts/json01-dialog-ray_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/json01-dialog-ray_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/json02-rayjanuary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/json02-rayjanuary.png
--------------------------------------------------------------------------------
/_site/images/posts/json02-rayjanuary_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/json02-rayjanuary_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/json03-johnjones.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/json03-johnjones.png
--------------------------------------------------------------------------------
/_site/images/posts/json03-johnjones_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/json03-johnjones_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/json_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/json_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/jsonarticle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/jsonarticle.png
--------------------------------------------------------------------------------
/_site/images/posts/jsonarticle_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/jsonarticle_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/photographerweekly.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/photographerweekly.jpg
--------------------------------------------------------------------------------
/_site/images/posts/photographerweekly_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/photographerweekly_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/postcss.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/postcss.jpg
--------------------------------------------------------------------------------
/_site/images/posts/postcss_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/postcss_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/react.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/react.jpg
--------------------------------------------------------------------------------
/_site/images/posts/react_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/react_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/resiliency.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/resiliency.png
--------------------------------------------------------------------------------
/_site/images/posts/resiliency_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/resiliency_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/rightsocialmedia.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/rightsocialmedia.png
--------------------------------------------------------------------------------
/_site/images/posts/rightsocialmedia_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/rightsocialmedia_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/svggraphics.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/svggraphics.png
--------------------------------------------------------------------------------
/_site/images/posts/svggraphics_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/svggraphics_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/threethings.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/threethings.jpg
--------------------------------------------------------------------------------
/_site/images/posts/threethings_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/threethings_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/vector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/vector.png
--------------------------------------------------------------------------------
/_site/images/posts/vector_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/vector_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/wanttogethired.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/wanttogethired.jpg
--------------------------------------------------------------------------------
/_site/images/posts/wanttogethired_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/wanttogethired_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/weekly-artist.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/weekly-artist.jpg
--------------------------------------------------------------------------------
/_site/images/posts/weekly-artist_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/weekly-artist_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/weekly-unusual.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/weekly-unusual.jpg
--------------------------------------------------------------------------------
/_site/images/posts/weekly-unusual_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/weekly-unusual_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/weekly-ux.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/weekly-ux.jpg
--------------------------------------------------------------------------------
/_site/images/posts/weekly-ux_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/weekly-ux_tn.png
--------------------------------------------------------------------------------
/_site/images/posts/weekly-worksmarter.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/weekly-worksmarter.jpg
--------------------------------------------------------------------------------
/_site/images/posts/weekly-worksmarter_tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/posts/weekly-worksmarter_tn.png
--------------------------------------------------------------------------------
/_site/images/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/planetoftheweb/sassbootstrap/adeeca2594882d9b1cd9a41862470cebbad00fa6/_site/images/screenshot.png
--------------------------------------------------------------------------------
/_site/index.njk:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/page-home.njk
3 | hero: https://lil-cdn.com/585273/computing-apps-threequarter-211095871.jpg
4 | ---
5 |
6 | {% set postslist = collections.posts | head(11) %}
7 | {% set courselist = collections.courses | head(7) %}
8 |
9 |
10 |
11 |
Latest Posts
12 | {%- for item in postslist %}
13 | {% include "items.njk" %}
14 | {% endfor -%}
15 |
16 |
17 |
Latest Courses
18 | {% set itemList = courselist %}
19 | {% for item in itemList %}
20 | {% include "sidebar.njk" %}
21 | {% endfor -%}
22 |
23 |
--------------------------------------------------------------------------------
/_site/js/data.json.njk:
--------------------------------------------------------------------------------
1 | ---
2 | permalink: /js/data.json
3 | ---
4 | [{%- for item in collections.searchable %}{% set defaultURL = '' %}{% if item.data.links[0] %}{% for name, link in item.data.links[0] %}{% set defaultURL = link %}{% endfor %}{% else %}{% set defaultURL = item.url %}{% endif %}{
5 | "thumbnail": "{{item.data.thumb}}",
6 | "url": "{{defaultURL}}",
7 | {%- for tag in item.data.tags %}{% if tag == 'course' %}
8 | "icon": " ",{% endif %}{% if tag == 'post' %}
9 | "icon": " ",{% endif %}{%- endfor %}
10 | "title": "{{ item.data.title }}",
11 | "date" : "{{item.date | simpleDate | safe}}",
12 | "summary" : "{{ item.data.summary | escape | safe }}",
13 | "tags" : "{{ item.data.tags | safe }}"
14 | }{% if not loop.last %},{% endif %}{%- endfor %}]
--------------------------------------------------------------------------------
/_site/posts/2015-02-07-chrome-developer-extensions.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Chrome Developer Extensions for Designers/Developers"
4 | summary: "Google Chrome Extensions can help you take care of certain tasks quickly. Here's a quick review of some of my favorite extensions for web design and development."
5 | hero: /images/posts/chromeextensions.png
6 | thumb: /images/posts/chromeextensions_tn.png
7 | tags:
8 | - post
9 | - web designer
10 | - web developer
11 | ---
12 |
13 | ## Responsive Inspector
14 |
15 | [](https://chrome.google.com/webstore/detail/responsive-inspector/memcdolmmnmnleeiodllgpibdjlkbpim)
16 | Awesome for responsive design projects. This extension automatically analyzes a current website and shows you the media query breakpoints on that page in a nice visual display.
17 |
18 | VIDEO
19 |
20 | Clicking on the bars changes your window to that size and lets you see how the layout of your site is affected by the new size. When you don't know or aren't sure what the media query points are or just don't remember, this is the best way to quickly peek into a site's layouts.
21 |
22 | Although the Chrome Developer tools now offer their own media query inspector, it requires a page reload and resizes your page. Plus it takes a lot of clicks to get to the right place, so sometimes, simpler is better and this extension does the job quickly.
23 |
24 | - [ Get it on Chrome Store](https://chrome.google.com/webstore/detail/responsive-inspector/memcdolmmnmnleeiodllgpibdjlkbpim)
25 | - [ Developer site](http://outof.me/responsive-inspector/)
26 |
27 | ---
28 |
29 | ## What Font?
30 |
31 | [](https://chrome.google.com/webstore/detail/whatfont/jabopobgcpjmedljpbcaablpmlmfcogm)
32 | When you're navigating through different sites to take a look at font combinations, digging through the different DevTools screens to get to a font is too cumbersome. This extension makes it easy to identify fonts on sites by simply rolling your mouse over them. Clicking gives you more information about the font.
33 |
34 | - [ Get it on Chrome Store](https://chrome.google.com/webstore/detail/whatfont/jabopobgcpjmedljpbcaablpmlmfcogm)
35 | - [ Developer site](http://chengyinliu.com/whatfont.html)
36 |
37 | ---
38 |
39 | ## Validator
40 |
41 | [](https://chrome.google.com/webstore/detail/whatfont/jabopobgcpjmedljpbcaablpmlmfcogm)
42 | Alghough validation is something that can be handled in many places, this extension gives you one click access to the W3C Validator. It will help you quickly find errors which can potentially affect your scripts or CSS.
43 |
44 | - [ Get it on Chrome Store](https://chrome.google.com/webstore/detail/whatfont/jabopobgcpjmedljpbcaablpmlmfcogm)
45 | - [ Developer site](http://robertnyman.com/html-validator/)
46 |
47 | ---
48 |
49 | ##Clear Cache
50 | [](https://chrome.google.com/webstore/detail/clear-cache/cppjkneekbjaeellbfkmgnhonkkjfpdn?hl=en&gl=US)
51 | To test some applications properly, it's often necessary to clear things like cookies and site caches, but the process for doing so in Chrome takes a long time. This extension is a one click solution to quickly removing your site cache...set up some defaults and you're ready to go. Hit the button and the defaults will be applied immediately without confirmation (so be careful with this).
52 |
53 | - [ Get it on Chrome Store](https://chrome.google.com/webstore/detail/clear-cache/cppjkneekbjaeellbfkmgnhonkkjfpdn?hl=en&gl=US)
54 | - [ Developer site](http://benjaminbojko.com/work/side-projects)
55 |
--------------------------------------------------------------------------------
/_site/posts/2015-02-11-centered-navigation-table-css.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Horizontally Centered Navigation Menu with CSS"
4 | summary: "Getting a menu to center horizontally is surprisingly hard, especially when you're using CSS lists. In this tutorial, I'll show you how to change the display element to pretend you're centering a table, which is easy."
5 | hero: /images/posts/horizontally.png
6 | thumb: /images/posts/horizontally_tn.png
7 | resources:
8 | - video: https://www.youtube.com/watch?v=RT64aSNXnzY
9 | - code: http://jsbin.com/popalu/12/edit?html,css,output
10 | tags:
11 | - post
12 | - web design
13 | - css
14 | ---
15 |
16 |
17 | VIDEO
18 |
19 |
20 | One of the first things you try to do when you learn CSS is to create a centered navigation menu, but it's not as straightforward as it should be. You'd think that there was some sort of center command and in the future, something like flexbox will make it a lot easier. But even flexbox is no magic bullet with poor browser support in older browsers and frankly, a somewhat confusing syntax.
21 |
22 | My current approach is to do something that ends up looking like this.
23 |
24 | JS Bin
25 |
26 | ## The Trick
27 |
28 | Since you can just read the code above or watch the video, I'll give you the highlights so you can catch the critical part.
29 |
30 | ```html
31 |
41 | ```
42 |
43 | I've simplified it a bit here for clarity. The key extra item here is the addition of a wrapper div with a class navwrapper. In order to get this to work you'll need this extra piece of HTML.
44 |
45 | ```css
46 | .sitemenu {
47 | width: 100%;
48 | background: #a2cea5;
49 | font-family: "Droid Sans", serif;
50 | border-top: 8px solid #126758;
51 | }
52 | ```
53 |
54 | ##Set the width of main container
55 | The main thing here is the `width: 100%;` on the nav with the sitemenu class. You should have a container here that makes the width of the navigation container go full width. If you examine the code (by clicking on the HTML tab in the code window).
56 |
57 | ## Enter the table style
58 |
59 | next, you need to have another container inside the first one that sets its display to show up as if it were a table.
60 |
61 | ```css
62 | .sitemenu > .navwrapper {
63 | display: table;
64 | margin: 0 auto;
65 | }
66 | ```
67 |
68 | The code that actually centers the table is the `margin: 0 auto;` line. This item will be the width of the menus, regardless of their size. Normally to center an element, you have to know its width, but setting the display to table here bypasses that.
69 |
70 | Honestly, the rest is just window dressing and pretty easy to follow from the code, so take a look at the jsbin to learn more.
71 |
--------------------------------------------------------------------------------
/_site/posts/2015-03-03-creating-SVG-graphics.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Getting started creating SVG Graphics"
4 | summary: "A lot of data visualizations use the SVG format to create graphics, so in this article, we'll use SVG to create some basic shapes and graphics. Understanding how the format works will help you when you're using SVG based libraries and frameworks."
5 | hero: /images/posts/svggraphics.png
6 | thumb: /images/posts/svggraphics_tn.png
7 | tags:
8 | - post
9 | - data visualization
10 | - svg
11 | ---
12 |
13 | ## SVG Graphic Fundamentals
14 |
15 | Visualization tools like D3.js or C3.js use the SVG (Scalable Vector Graphics) format by default, so it's important to understand how that format uses XML style commands to generate graphics. Let's dive straight into some code.
16 |
17 | JS Bin
18 |
19 | SVG is pretty easy to read and if you know HTML it should be even easier. An SVG graphic begins and ends with the ` ` tags like many other HTML elements and you can add different attributes like the width and height of the graphic. As a matter of fact, the very first thing you do with SVG is specify the canvas that the rest of the graphics will be using.
20 |
21 | Just like with any other HTML tag we can add a style attribute and pass it common CSS commands, here we've set the color of the background to a bluish medium gray.
22 |
23 | Inside the SVG tag, you can create additional elements that generate graphics. Here's a comprehensive reference to all of the SVG elements that you can create . Common elements (with examples) include:
24 |
25 | - Rectangle
26 | - Circle
27 | - Ellipse
28 | - Line
29 | - Paths
30 | - Polygon
31 | - Polyline
32 |
33 | |` ` | Paths |
34 |
35 | - Text
36 |
37 | If you come from an HTML background, there are some important things to note about this code. First, you'll notice that the tags use a self closing style when they are single tags. So instead of writing something like ` ` you can write something like ` />`. SGV looks like HTML, but it isn't exactly HTML, so an XHTML style is used for the tags. Although most browsers will be forgiving on some traditional XML rules like capitalization, punctuation and quotes around attributes, the format itself is more strict.
38 |
39 | For example, technically, the `` tag should include an SVG namespace declaration specifying the version and format of the library you're using.
40 |
41 | ```
42 |
43 |
44 |
45 | ```
46 |
47 | Here's where you can learn more about the SVG specification and format.
48 |
49 | You might also notice that like with HTML we can use the style attribute and use CSS.
50 |
--------------------------------------------------------------------------------
/_site/posts/2015-12-16-before-you-learn-framework.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Before you learn a framework, make sure you've mastered these essential techniques"
4 | summary: "With lower attention spans, it's easy to get distracted by shiny new frameworks like React, AngularJS and others. Before you spend your valuable time on those frameworks, make sure you understand these essential JavaScript techniques."
5 | hero: /images/posts/beforeframework.jpg
6 | thumb: /images/posts/beforeframework_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/before-your-learn-new-javascript-framework-make-sure-youve-ray
9 | tags:
10 | - external
11 | - web design
12 | - web development
13 | - javascript
14 | - react
15 | - angular
16 | - frameworks
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/posts/2016-01-21-youre-going-to-love-postcss.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Learn about PostCSS! A new way to code CSS you're going to love"
4 | summary: "Every so often, a new tool things changes the status quo and makes doing your job easier. First, there was Sass, Less and now, there's a new kid in town called PostCSS. It's changing how web designers and developers work. You should check it out because you're going to love it. In this article, I'll show you what the fuss is all about and show you some videos of PostCSS in action from a couple of my lynda.com courses."
5 | hero: /images/posts/postcss.jpg
6 | thumb: /images/posts/postcss_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/learn-postcss-new-way-design-code-css-youre-going-love-ray-villalobos
9 | tags:
10 | - post
11 | - external
12 | - web design
13 | - web development
14 | - postcss
15 | ---
16 |
--------------------------------------------------------------------------------
/_site/posts/2016-02-18-whats-wrong-with-angular-2.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "What's wrong with AngularJS2 and why you're going to like it"
4 | summary: "I've been working with AngularJS2 for a while, so I wanted to give some thoughts to those who are thinking or planning to update or upgrade their apps to this new version. I'll discuss what's new, what's very different, what works and what is going to be a challenge."
5 | hero: /images/posts/angular.jpg
6 | thumb: /images/posts/angular_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/whats-wrong-angularjs2-why-youre-still-going-like-ray-villalobos
9 | tags:
10 | - post
11 | - external
12 | - web design
13 | - web development
14 | - angular
15 | - frameworks
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/posts/2016-08-13-learning-reactjs.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Getting to Love Learning ReactJS"
4 | summary: "There's a lot of resistance to learning the ReactJS library. That's because there are two main concepts that make it a tough sell for traditional developers. So let's take a look at what's been holding back most developers from learning ReactJS."
5 | hero: /images/posts/react.jpg
6 | thumb: /images/posts/react_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/getting-love-learning-reactjs-ray-villalobos
9 | tags:
10 | - post
11 | - external
12 | - web design
13 | - web development
14 | - react
15 | - javascript
16 | - frameworks
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/posts/2016-12-20-build-your-next-site-node-and-expressjs.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "5 Reasons You Should Develop Your Next Site Using Node & ExpressJS"
4 | summary: "Creating a website using NodeJS instead of Apache used to be hard, but today several advances have made NodeJS Servers easy to deploy. In this article, I talk about what are some of the advantages of using Node and Express and why you should give it a shot."
5 | hero: /images/posts/express.jpg
6 | thumb: /images/posts/express_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/5-reasons-you-should-develop-your-next-site-using-node-ray-villalobos
9 | tags:
10 | - post
11 | - external
12 | - web design
13 | - web development
14 | - nodejs
15 | - expressjs
16 | - javascript
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/posts/2017-06-28-landing-a-job-front-end-developer.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: Keep up with the fast changing front end, full stack, UX, web design and mobile industries with these seven online weekly series
4 | summary: In my new weekly series on Mastering Web Developer Interview Code I've done a lot of research and interviewed people who've hired or managed their careers effectively. Let's take a look at what I discovered.
5 | hero: /images/posts/weekly-ux.jpg
6 | thumb: /images/posts/weekly-ux_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/keep-up-fast-changing-front-end-full-stack-ux-web-seven-villalobos
9 | tags:
10 | - post
11 | - external
12 | - web development
13 | - web design
14 | - careers
15 | ---
16 |
--------------------------------------------------------------------------------
/_site/posts/2017-08-05-five-unusual-skills.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "5 Unusual Skills Industry Professionals Use to be More Successful in their Careers"
4 | summary: "Having a successful career is largely a result of actions, but also your re-action to opportunities and challenges that come along the way. In order to be successful you need to master techniques that really work. Let's take a look at what really works for professionals."
5 | hero: /images/posts/weekly-unusual.jpg
6 | thumb: /images/posts/weekly-unusual_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/5-unusual-skills-industry-professionals-use-more-ray-villalobos
9 | tags:
10 | - post
11 | - external
12 | - careers
13 | ---
14 |
--------------------------------------------------------------------------------
/_site/posts/2017-08-25-weekly-series-3D-animation.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Nine Weekly Series to help you master 3-D and Animation technologies"
4 | summary: "If you're an animation, 3D or VR professional looking to improve your skills, take a look at these quick, 10 minute weekly series from LinkedIn Learning experts to help you master new technologies from Maya, Blender, Z-Brush, Sketchup, BIM, Rhino and Revit."
5 | hero: /images/posts/animation.jpg
6 | thumb: /images/posts/animation_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/nine-weekly-series-help-you-master-3-d-animation-ray-villalobos
9 | tags:
10 | - post
11 | - external
12 | - weekly series
13 | - tips
14 | ---
15 |
--------------------------------------------------------------------------------
/_site/posts/2017-08-25-weekly-series-artist-designer.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "These 10 minute weekly courses can help you become a better artist and designer"
4 | summary: "If you've been looking to improve your drawing, design, layout and photo editing skills, but keep a busy schedule, then these weekly series can help. They release once a week and include short, actionable tips and techniques from world class authors."
5 | hero: /images/posts/weekly-artist.jpg
6 | thumb: /images/posts/weekly-artist_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/10-minute-weekly-courses-can-help-you-become-better-ray-villalobos
9 | tags:
10 | - post
11 | - external
12 | - weekly series
13 | - careers
14 | - Adobe Illustrator
15 | - InDesign
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/posts/2017-08-25-weekly-series-front-end-full-stack-ux.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Keep up with the fast changing front end, full stack, UX, web design and mobile industries with these seven online weekly series"
4 | summary: "These weekly series offer quick, 10 minute tips to help you stay frosty and challenge you to keep learning about Android development, web media, mastering interview code, CSS, Sharepoint, UX and Visual Studio."
5 | hero: /images/posts/frontendfullstack.jpg
6 | thumb: /images/posts/frontendfullstack_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/keep-up-fast-changing-front-end-full-stack-ux-web-seven-villalobos
9 | tags:
10 | - post
11 | - external
12 | - careers
13 | - web design
14 | - web development
15 | - user experience
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/posts/2017-08-25-weekly-series-photography-motion.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Get challenged by these professional photographers, motion experts and videographers through weekly, 10 minute video courses"
4 | summary: "Check out these short, weekly, 10 minute series of courses that can help you keep up with the latest and challenge you to practice your skills. You'll learn about photo gear, get inspired by critiques, learn from practicing professional photographers, learn about the latest tools, mobile photography, Final Cut Pro, motion graphics and Nuke."
5 | hero: /images/posts/photographerweekly.jpg
6 | thumb: /images/posts/photographerweekly_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/get-challenged-professional-photographers-motion-10-video-villalobos
9 | - repo: https://github.com/planetoftheweb/angularformvalidation
10 | tags:
11 | - post
12 | - external
13 | - weekly series
14 | - photography
15 | - careers
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/posts/2017-08-25-weekly-series-work-smarter.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Five weekly series to help you work smarter and be more effective in your career"
4 | summary: "In order to get ahead, you need to learn to be more effective at work. Every week, these great authors give you quick, 10 minute tips to help you train your staff, understand business finance, learn to develop and manage yourself, build better work relationships and learn marketing tips to make your promotion efforts more effective."
5 | hero: /images/posts/weekly-worksmarter.jpg
6 | thumb: /images/posts/weekly-worksmarter_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/five-weekly-series-help-you-work-smarter-more-your-ray-villalobos/
9 | tags:
10 | - post
11 | - external
12 | - careers
13 | ---
14 |
--------------------------------------------------------------------------------
/_site/posts/2017-08-29-crafting-effective-video-campaign.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Crafting an effective video embed campaign for the LinkedIn Publishing Platform"
4 | summary: "Recently I launched a campaign promoting our serial content for LinkedIn learning which attained a large number of plays, shares and clickthroughs, so I wanted to share some of the things that worked well within our publishing platform."
5 | hero: /images/posts/effectivevideo.jpg
6 | thumb: /images/posts/effectivevideo_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/crafting-effective-video-embed-campaign-linkedin-ray-villalobos
9 | tags:
10 | - post
11 | - external
12 | - Linked In
13 | - marketing
14 | - online publishing
15 | - online marketing
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/posts/2017-09-12-three-things-i-learned-from-six-years-teacher.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Three things I learned from six years as a teacher on Lynda.com"
4 | summary: "It's my sixth year anniversary at lynda.com/LinkedIn Learning and milestones come with some reflection, so I wanted to share with you some of the things I've learned over the years. Although these are specific to my experience, I think you'll be able to relate to these and maybe share something you've learned from your own."
5 | hero: /images/posts/threethings.jpg
6 | thumb: /images/posts/threethings_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/three-things-i-learned-from-six-years-teacher-ray-villalobos
9 | tags:
10 | - post
11 | - external
12 | - Teaching
13 | - Learning
14 | - lynda.com
15 | - LinkedIn Learning
16 | ---
17 |
--------------------------------------------------------------------------------
/_site/posts/2017-09-25-first-time-at-ignite.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Looking to Microsoft Ignite...A first time attendee's journey to find out what's awesome!"
4 | summary: "I find myself working for Microsoft at LinkedIn Learning in my very first Microsoft conference...Ignite. Needless to say, I feel a bit like a fish out of water, really more like a cat that's been adopted by a giraffe family. Here's what I'll be looking for during the week."
5 | hero: /images/posts/ignite.jpg
6 | thumb: /images/posts/ignite_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/looking-microsoft-ignite-first-time-attendee-journey-find-villalobos
9 | tags:
10 | - post
11 | - external
12 | - ignite
13 | - conferences
14 | ---
15 |
--------------------------------------------------------------------------------
/_site/posts/2017-12-07-want-to-get-hired-linkedin-career-.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "Want to get hired? Look into this technology career...LinkedIn Jobs Report finds"
4 | summary: "The LinkedIn U.S. Emerging Jobs Report finds that job growth in the next decade outstrips growth in the previous decade creating 11.5 million jobs, estimating that 65% of children entering primary school will hold jobs that don't yet exist."
5 | hero: /images/posts/wanttogethired.jpg
6 | thumb: /images/posts/wanttogethired_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/want-get-hired-look-technology-careerlinkedin-jobs-finds-villalobos/
9 | tags:
10 | - post
11 | - external
12 | - careers
13 | - web design
14 | - web development
15 | - data visualization
16 | - python
17 | ---
18 |
--------------------------------------------------------------------------------
/_site/posts/2018-03-28-resiliency-9-bosses-5-years.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/post.njk
3 | title: "What I learned about resiliency working for 9 bosses in 5 years"
4 | summary: "Getting a new boss can be really stressful. To paraphrase the great philosopher F. Gump, you usually have little input into who that is, so you don’t know what you're going to get until you've had the time to work with them. I should know."
5 | hero: /images/posts/resiliency.png
6 | thumb: /images/posts/resiliency_tn.png
7 | links:
8 | - linkedin: https://www.linkedin.com/pulse/what-i-learned-resiliency-working-9-bosses-5-years-ray-villalobos/
9 | - dude: https://www.linkedin.com/pulse/what-i-learned-resiliency-working-9-bosses-5-years-ray-villalobos/
10 | tags:
11 | - post
12 | - external
13 | - careers
14 | ---
15 |
--------------------------------------------------------------------------------
/_site/posts/_index.njk:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/page.njk
3 | hero: https://lil-cdn.com/585273/computing-apps-top-227241901.jpg
4 | tags:
5 | - nav
6 | iconclass: far fa-file-alt
7 | pagination:
8 | data: collections.posts
9 | size: 10
10 | navtitle: Posts
11 | permalink: /posts/{{pagination.pageNumber}}/
12 | ---
13 |
14 | {% include "pagination.njk" %}
15 |
16 | {%- for item in pagination.items %}
17 | {% set defaultURL = '' %}
18 | {% if item.data.links[0] %}
19 | {% for name, link in item.data.links[0] %}
20 | {% set defaultURL = link %}
21 | {% endfor %}
22 | {% else %}
23 | {% set defaultURL = item.url %}
24 | {% endif %}
25 |
26 | {% include "items.njk" %}
27 |
28 | {% endfor -%}
29 |
30 | {% include "pagination.njk" %}
31 |
32 |
--------------------------------------------------------------------------------
/_site/sitemap.xml.njk:
--------------------------------------------------------------------------------
1 | ---
2 | permalink: /sitemap.xml
3 | excludeFromSitemap: true
4 | ---
5 |
6 |
7 | {%- for page in collections.all %}
8 | {%- if not page.data.excludeFromSitemap %}
9 | {% set absoluteUrl %}{{ page.url | url | absoluteUrl(metadata.url) }}{% endset %}
10 |
11 | {{ absoluteUrl }}
12 | {{ page.date | htmlDateString }}
13 |
14 | {%- endif %}
15 | {%- endfor %}
16 |
17 |
--------------------------------------------------------------------------------
/_site/tags-list.njk:
--------------------------------------------------------------------------------
1 | ---
2 | permalink: /tags/
3 | layout: layouts/page.njk
4 | ---
5 | Tags
6 |
7 | {% for tag in collections.tagList %}
8 | {% set tagUrl %}/tags/{{ tag }}/{% endset %}
9 | {{ tag }}
10 | {% endfor %}
11 |
--------------------------------------------------------------------------------
/_site/tags.njk:
--------------------------------------------------------------------------------
1 | ---
2 | layout: layouts/page.njk
3 | pagination:
4 | data: collections
5 | size: 1
6 | alias: tag
7 | filter:
8 | - all
9 | - nav
10 | - post
11 | - posts
12 | renderData:
13 | title: Tagged “{{ tag }}”
14 | permalink: /tags/{{ tag }}/
15 | ---
16 | See all tags .
17 | Tagged “{{ tag }}”
18 |
19 | {%- for item in collections[tag] | reverse %}
20 | {% include "items.njk" %}
21 | {%- endfor %}
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "seventy",
3 | "version": "1.0.3",
4 | "description": "Blogging template for the 11ty.io static site generator.",
5 | "scripts": {
6 | "start": "npm-run-all --parallel dev:webpack dev:sass-dev dev:eleventy",
7 | "dev:sass-dev": "node-sass --watch _process/scss --output-style expanded --source-map true --output _site/css",
8 | "dev:eleventy": "eleventy --serve --quiet",
9 | "dev:webpack": "webpack --watch",
10 | "build": "run-s prod:*",
11 | "prod:del": "rimraf build",
12 | "prod:sass-dev": "node-sass --output-style compressed _process/scss/style.scss --output build/css",
13 | "prod:webpack": "webpack --env.production --silent -p --optimize-minimize",
14 | "prod:serve": "eleventy --output=./build"
15 | },
16 | "repository": {
17 | "type": "git",
18 | "url": "git://github.com/planetoftheweb/seven.git"
19 | },
20 | "author": {
21 | "name": "Ray Villalobos",
22 | "email": "ray@planetoftheweb.com",
23 | "url": "https://raybo.org/"
24 | },
25 | "license": "MIT",
26 | "devDependencies": {
27 | "@11ty/eleventy": "^0.7.1",
28 | "@11ty/eleventy-plugin-rss": "^1.0.7",
29 | "@11ty/eleventy-plugin-syntaxhighlight": "^2.0.3",
30 | "@fortawesome/fontawesome-free": "^5.13.1",
31 | "babel-cli": "^6.26.0",
32 | "babel-preset-es2015": "^6.24.1",
33 | "css-loader": "^2.1.1",
34 | "luxon": "^1.24.1",
35 | "markdown-it": "^8.4.1",
36 | "markdown-it-anchor": "^5.3.0",
37 | "node-sass": "^4.14.1",
38 | "npm-run-all": "^4.1.5",
39 | "popper.js": "^1.16.1",
40 | "sass-loader": "^7.3.1",
41 | "style-loader": "^0.23.1",
42 | "vue-loader": "^15.9.3",
43 | "vue-style-loader": "^4.1.2",
44 | "vue-template-compiler": "^2.6.11",
45 | "webpack": "^4.43.0",
46 | "webpack-cli": "^3.3.12"
47 | },
48 | "dependencies": {
49 | "animate.css": "^3.7.2",
50 | "bootstrap": "^4.5.0",
51 | "jquery": "^3.5.1",
52 | "vue": "^2.6.11"
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/webpack.config.js:
--------------------------------------------------------------------------------
1 | const path = require('path')
2 | const webpack = require('webpack')
3 | const { VueLoaderPlugin } = require('vue-loader')
4 |
5 | module.exports = {
6 | mode: 'development',
7 | watch: false,
8 | entry: ['./_process/js/app.js', './_process/js/script.js'],
9 |
10 | devtool: 'inline-source-map',
11 | devServer: {
12 | contentBase: './dist',
13 | },
14 | module: {
15 | rules: [
16 | {
17 | test: /\.vue$/,
18 | use: 'vue-loader',
19 | },
20 | {
21 | test: /\.css$/,
22 | use: ['style-loader', 'css-loader'],
23 | },
24 | ],
25 | },
26 | output: {
27 | path: path.resolve(__dirname, '_site/js/'),
28 | filename: 'script.js',
29 | },
30 | plugins: [
31 | new webpack.ProvidePlugin({ $: 'jquery', jQuery: 'jquery' }),
32 | new VueLoaderPlugin(),
33 | ],
34 | }
35 |
--------------------------------------------------------------------------------