diff --git a/.ruby-version b/.ruby-version index 6a6a3d8e..ec1cf33c 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -2.6.1 +2.6.3 diff --git a/_includes/hcard.html b/_includes/hcard.html index e313ed0b..fc004fdb 100644 --- a/_includes/hcard.html +++ b/_includes/hcard.html @@ -8,37 +8,7 @@

Welcome to the website of {{ site.author }}

{{ site.bio }}

- + {% include icons.html %}
diff --git a/_includes/head.html b/_includes/head.html new file mode 100644 index 00000000..a82c6e85 --- /dev/null +++ b/_includes/head.html @@ -0,0 +1,19 @@ + + + + + {% if page.title %}{{ page.title | escape }}{% else %}{{ site.title | escape }}{% endif %} + + + + + {% if site.webmentions %} + + {% endif %} + {% seo %} + + \ No newline at end of file diff --git a/_includes/header.html b/_includes/header.html new file mode 100644 index 00000000..002b85e2 --- /dev/null +++ b/_includes/header.html @@ -0,0 +1,17 @@ +
+
+ +

{{ site.title }}

+
+ +
\ No newline at end of file diff --git a/_includes/icon-email.html b/_includes/icon-email.html deleted file mode 100644 index 7ea6e7c4..00000000 --- a/_includes/icon-email.html +++ /dev/null @@ -1,5 +0,0 @@ -
  • - - - -
  • diff --git a/_includes/icon-facebook.html b/_includes/icon-facebook.html deleted file mode 100644 index bd6d20fa..00000000 --- a/_includes/icon-facebook.html +++ /dev/null @@ -1,5 +0,0 @@ -
  • - - - -
  • diff --git a/_includes/icon-flickr.html b/_includes/icon-flickr.html deleted file mode 100644 index 288b1179..00000000 --- a/_includes/icon-flickr.html +++ /dev/null @@ -1,5 +0,0 @@ -
  • - - - -
  • diff --git a/_includes/icon-foursquare.html b/_includes/icon-foursquare.html deleted file mode 100644 index c45075c3..00000000 --- a/_includes/icon-foursquare.html +++ /dev/null @@ -1,5 +0,0 @@ -
  • - - - -
  • diff --git a/_includes/icon-github.html b/_includes/icon-github.html deleted file mode 100644 index b206d019..00000000 --- a/_includes/icon-github.html +++ /dev/null @@ -1,5 +0,0 @@ -
  • - - - -
  • diff --git a/_includes/icon-github.svg b/_includes/icon-github.svg deleted file mode 100644 index 4422c4f5..00000000 --- a/_includes/icon-github.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/icon-instagram.html b/_includes/icon-instagram.html deleted file mode 100644 index a7e6f143..00000000 --- a/_includes/icon-instagram.html +++ /dev/null @@ -1,5 +0,0 @@ -
  • - - - -
  • diff --git a/_includes/icon-linkedin.html b/_includes/icon-linkedin.html deleted file mode 100644 index 0135cfb3..00000000 --- a/_includes/icon-linkedin.html +++ /dev/null @@ -1,5 +0,0 @@ -
  • - - - -
  • diff --git a/_includes/icon-tumblr.html b/_includes/icon-tumblr.html deleted file mode 100644 index 7d9f0d60..00000000 --- a/_includes/icon-tumblr.html +++ /dev/null @@ -1,5 +0,0 @@ -
  • - - - -
  • diff --git a/_includes/icon-twitter.html b/_includes/icon-twitter.html deleted file mode 100644 index 809e1a20..00000000 --- a/_includes/icon-twitter.html +++ /dev/null @@ -1,5 +0,0 @@ -
  • - - - -
  • diff --git a/_includes/icon-twitter.svg b/_includes/icon-twitter.svg deleted file mode 100644 index dcf660e7..00000000 --- a/_includes/icon-twitter.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/icons.html b/_includes/icons.html new file mode 100644 index 00000000..8ce846f5 --- /dev/null +++ b/_includes/icons.html @@ -0,0 +1,70 @@ + \ No newline at end of file diff --git a/_includes/icons_base.html b/_includes/icons_base.html new file mode 100644 index 00000000..604067c1 --- /dev/null +++ b/_includes/icons_base.html @@ -0,0 +1,70 @@ + \ No newline at end of file diff --git a/_includes/post-hcard.html b/_includes/post-hcard.html index 083294b4..21a6378a 100644 --- a/_includes/post-hcard.html +++ b/_includes/post-hcard.html @@ -26,37 +26,7 @@

    {% endfor %} \ No newline at end of file diff --git a/_layouts/default.html b/_layouts/default.html index ab8f321a..b70f9bf8 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -1,22 +1,8 @@ - - - - {% if page.title %}{{ page.title | escape }}{% else %}{{ site.title | escape }}{% endif %} - - - - - {% if site.webmentions %} - - {% endif %} - {% seo %} - - +{% include head.html %} +
    -
    -
    -

    {{ site.title }}

    -

    {{ site.description }}

    -
    - -
    + {% include header.html %} {% if page.url == '/' %} {% include hcard.html %} {% endif %} diff --git a/_layouts/header.html b/_layouts/header.html new file mode 100644 index 00000000..28c4a31c --- /dev/null +++ b/_layouts/header.html @@ -0,0 +1,17 @@ +
    +
    + +

    {{ site.title }}

    +
    + +
    \ No newline at end of file diff --git a/assets/css/_inc/header.css b/assets/css/_inc/header.css index b6b52070..8faa098e 100644 --- a/assets/css/_inc/header.css +++ b/assets/css/_inc/header.css @@ -3,43 +3,47 @@ */ .mainheader { - display: grid; - grid-template-columns: 2fr 2fr; + display: flex; + flex-direction: column; + align-items: center; + background-color: var(--very-dark-gray); + color: #fff; } -.site-branding { - justify-self: start; - margin: 2rem; +.mainheader h1 { + font-size: 1.3rem; } -.mainnav { - margin-top: 2rem; +.site-branding { + display: flex; + justify-content: space-around; } -.mainnav ul { - display: inline; -/* align-items: baseline; */ - list-style-type: none; +.site-branding img { + height: 3em; + width: 3em; + margin-right: 1em; } -.navbar-item { - margin-right: 1.5rem; - font-size: 1.6rem; - font-family: serif; + +.mainnav { + width: auto; + display: flex; + flex-direction: row; + align-items: center; } -.navbar-item a { - color: var(--dark); +.mainnav a { + padding: .5em; } -@media (min-width: 550px) { - .mainnav ul { - display: flex; - /* align-items: baseline; */ - list-style-type: none; - flex-flow: row wrap; - /* This aligns items to the end line on main-axis */ - justify-content: flex-end; - margin: 0; - } +@media (min-width: 900px) { + .mainheader { + flex-direction: row; + justify-content: space-around; + } + + .mainnav a { + padding: .5em .8em; + } } diff --git a/assets/css/main.css b/assets/css/main.css index e91d112a..1bac6e60 100644 --- a/assets/css/main.css +++ b/assets/css/main.css @@ -171,39 +171,43 @@ img { Header */ .mainheader { - display: grid; - grid-template-columns: 2fr 2fr; + display: flex; + flex-direction: column; + align-items: center; + background-color: #1D252C; + background-color: var(--very-dark-gray); + color: #fff; } -.site-branding { - justify-self: start; - margin: 2rem; +.mainheader h1 { + font-size: 1.3rem; } -.mainnav { - margin-top: 2rem; +.site-branding { + display: flex; + justify-content: space-around; } -.mainnav ul { - display: inline; -/* align-items: baseline; */ - list-style-type: none; +.site-branding img { + margin-right: 1em; + width: 3em; + height: 3em; } -.navbar-item { - margin-right: 1.5rem; - font-family: serif; - font-size: 1.6rem; +.mainnav { + display: flex; + flex-direction: row; + align-items: center; + width: auto; } -.navbar-item a { - color: var(--dark); +.mainnav a { + padding: .5em; } -@media (min-width: 550px) { - .mainnav ul { - display: flex; - flex-flow: row wrap; - /* This aligns items to the end line on main-axis */ - justify-content: flex-end; - margin: 0; - /* align-items: baseline; */ - list-style-type: none; - } +@media (min-width: 900px) { + .mainheader { + flex-direction: row; + justify-content: space-around; + } + + .mainnav a { + padding: .5em .8em; + } } /* Inspiration https://responsivemart.com/ui_design/css-user-profile-card/ */ .usercard-wrapper { diff --git a/assets/css/main.css.map b/assets/css/main.css.map index e7868fb6..6dc361a4 100644 --- a/assets/css/main.css.map +++ b/assets/css/main.css.map @@ -1 +1 @@ -{"version":3,"sources":["variables.css","remedy.css","grid.css","header.css","hcard.css","links.css","article.css","footer.css","darkmode.css","main.css"],"names":[],"mappings":"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","file":"main.css","sourcesContent":[":root {\n /* CityLights http://citylights.xyz */\n --very-light-gray: #B7C5D3;\n --light-gray: #718CA1;\n --gray: #41505E;\n --dark-gray: #333F4A;\n --very-dark-gray: #1D252C;\n\n --color1light: #70E1E8;\n --color1medium: #33CED8;\n --color1dark: #008B94;\n\n --color2light: #5EC4FF;\n --color2medium: #68A1F0;\n --color2dark: #539AFC;\n\n --color3light:#E27E8D;\n --color3medium:#D95468;\n --color3dark:#B62D65;\n\n --color4light: #EBBF83;\n --color4dark: #D98E48;\n\n --color5light: #8BD49C;\n\n --color6dark: #718CA1;\n\n --color7light: #8BD49C;\n\n\n --cyan: var(--color1light);\n --blue: var(--color2light);\n --purple: var(--color3dar)k;\n --pink: var(--color3ligh)t;\n --yellow: var(--color4light);\n --green: var(--color5light);\n --red: var(--color3medium);\n --orange: var(--color4dark);\n --light-orange: var(--color4light);\n\n --bg: var(--very-light-gray);\n --text: var(--dark-gray);\n --highlight: #ecf285;\n}\n\n","/* Level the playing field some */\n\n* { box-sizing: border-box; } /* Switch to border-box for box-sizing. */\n\n/* Immediately jump any animation to the end point if the user has set their device to \"prefers reduced motion\". */\n/* This could create bad unintended consequences. Remove as needed, and write your own appropriate code for prefers-reduced-motion. */\n@​media (prefers-reduced-motion: reduce) {\n * {\n animation-duration: 0.001s !important;\n transition-duration: 0.001s !important;\n }\n}\n\nbody {\n margin: 0; /* Remove the tiny space around the edge of the page */\n}\n\n/* Switch to using rem units for typography. Fix line-height on headlines. */\nh1 {\n font-size: 2rem; /* Make all H1 large, remove nested-shrinking sizes. */\n margin: 0.67em 0;\n}\nh2 {\n font-size: 1.5rem;\n}\nh3 {\n font-size: 1.17rem;\n}\nh4 {\n font-size: 1.00rem;\n}\nh5 {\n font-size: 0.83rem;\n}\nh6 {\n font-size: 0.67rem;\n}\n\nh2, h3, h4, h5, h6{\n line-height: 1;\n}\n\n/* Improve readibility */\np {\n line-height: 1.5; \n}\n\n\npre { \n white-space: pre-wrap; /* Overflow by default is bad. */\n}\n\n\n/* are browsers now consistent with margin & padding on lists?\n See: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Lists_and_Counters/Consistent_list_indentation */\nnav ul {\n list-style: none;\n}\n\n \nimg {\n border-style: none; /* Remove the border on images inside links in IE 10 and earlier. */\n vertical-align: bottom; /* Fix problem with images having a tiny gap for a decender under them. */\n display: block; /* Switch display mode to block, since that's what we usually want for images. */\n max-width: 100%; /* Make images flexible by default. */\n height: auto; /* ensure images maintain their aspect ratio when max-width comes into play. */\n}\n\n\n/* In English, when styling the element, use curly quotes instead of straight quotes. */\n\n/* Code for this is now in the quotes.css file */ \n\n\n/* Support upcoming properties that haven't been broadly implemented yet,\n but for which the initial value and legacy behavior is not be the best behavior.\n*/\n\n/* Consistent line spacing, which does not unecessarily grow to accomodate things that would fit anyway */\n:root {\n line-sizing: normal;\n}\n\n/* Improve spacing of punctuation marks and at script changes in CJK languages */\n:root {\n text-spacing: trim-start allow-end trim-adjacent ideograph-alpha ideograph-numeric;\n}\n\n\n","\n.wrapper {\n margin: 0 auto;\n grid-row-gap: 10px;\n grid-template-areas:\n \"header\"\n \"content\"\n \"sidebar\"\n \"footer\";\n}\n\n.mainheader {\n grid-area: header;\n}\n\n\n.content {\n grid-area: content;\n\tpadding: 20px;\n}\n\n.sidebar {\n grid-area: sidebar;\n}\n\n/*\n Main footer\n*/\n\n.colophon {\n grid-area: footer;\n}\n\n/*\n Grid\n*/\n\n@media (min-width: 550px) {\n\n\t.home .site {\n\t\tgrid-column-gap: 2rem;\n\t\tgrid-row-gap: 20rem;\n\t\tgrid-template-columns: 2fr 4fr;\n\t\tgrid-template-areas:\n\t\t \"header header\"\n\t\t \"content content\"\n\t\t \"footer footer\"\n\t }\n\n .site {\n grid-column-gap: 2rem;\n grid-row-gap: 2rem;\n grid-template-columns: 2fr 4fr;\n grid-template-areas:\n \"header header\"\n \"sidebar content\"\n \"footer footer\"\n\t}\n\n\t\n\n\n}","/*\n Header\n*/\n\n.mainheader {\n display: grid;\n\tgrid-template-columns: 2fr 2fr;\n}\n\n.site-branding {\n justify-self: start;\n margin: 2rem;\n}\n\n.mainnav {\n margin-top: 2rem;\n}\n\n.mainnav ul {\n display: inline;\n/* align-items: baseline; */\n\tlist-style-type: none;\n}\n\n.navbar-item {\n margin-right: 1.5rem;\n font-size: 1.6rem;\n\tfont-family: serif;\n}\n\n.navbar-item a {\n color: var(--dark);\n}\n\n@media (min-width: 550px) {\n .mainnav ul {\n\t\tdisplay: flex;\n\t/* align-items: baseline; */\n\t\tlist-style-type: none;\n\t\tflex-flow: row wrap;\n /* This aligns items to the end line on main-axis */\n\t\t justify-content: flex-end;\n\t\t margin: 0;\n\t}\n}\n","/* Inspiration https://responsivemart.com/ui_design/css-user-profile-card/ */\n\n.usercard-wrapper {\n margin: 5em auto;\n max-width: 1100px;\n}\n\n.usercard-wrapper .row {\n display: flex;\n flex-direction: column;\n}\n\n.usercard-wrapper .row .col {\n flex-grow: 1;\n}\n.usercard {\n background: var(--gray);\n display: flex;\n flex-basis: 0;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);\n overflow: hidden;\n border-radius: 4px;\n}\n\n.profiles {\n display: flex;\n list-style-type: none;\n\tflex-flow: row wrap;\n\tjustify-content: center;\n\tmargin: 1.5em 0;\n}\n\n.profile svg {\n width: 1em;\n height: 1em;\n border-radius: 50%;\n border: none;\n outline: none;\n font-size: 3em;\n cursor: pointer;\n opacity: .9;\n}\n\n.profile .icon {\n fill: var(--light);\n}\n\n.usercard-avatar {\n position: relative;\n width: 50%;\n z-index: 49;\n overflow: hidden; \n}\n\n .usercard-img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n transition: .3s;\n}\n \n .usercard-body {\n position: relative;\n width: 60%;\n padding: 3em 3em 2em;\n background-color: var(--dark-gray);\n color: var(--light);\n text-align: center;\n}\n\n .usercard .title {\n color: var(--very-light-gray);\n font-size: 2.5rem;\n margin-bottom: .4em;\n \n}\n\n .usercard:hover .usercard-img {\n transform: scale(1.1) rotate(3deg);\n}\n\n@media (max-width: 550px) {\n .usercard {\n flex-direction: column;\n }\n\n\n .usercard-avatar {\n width: 100%;\n }\n\n .usercard-body {\n width: 100%;\n };\n}\n\n@media (min-width: 550px) {\n .usercard .usercard-avatar:after {\n content: '';\n position: absolute;\n right: -16%;\n top: 0;\n transform: skewx(-10deg);\n height: 100%;\n width: 20%;\n min-width: 90px;\n background: var(--dark-gray);\n }\n}\n\n/* ripped from Rachel Andrews https://gridbyexample.com/patterns/media-object/ */\n\n\n\n.media {\n margin-bottom: 2em;\n padding: 10px;\n }\n \n .media > .media-title { grid-area: media-title; }\n .media > .img { grid-area: img; }\n .media > .media-content { grid-area: bd; }\n .media > .media-footer { grid-area: ft; }\n \n .media {\n background: var(--gray);\n display: grid;\n grid-column-gap: 20px;\n grid-template-areas:\n \"media-title\"\n \"img\"\n \"bd\"\n \"ft\";\n }\n \n \n @media (min-width: 600px) {\n \n /* clearfix*/\n .media:after {\n content: \"\";\n display: block;\n clear: both;\n }\n \n .media > .media {\n margin-left: 160px;\n clear: both;\n }\n \n .media .img {\n float: left;\n margin: 0 10px 0 0;\n width: 150px;\n }\n \n .media .media-footer {\n background-color: var(--gray);\n padding: 10px;\n }\n\n .media-footer .profiles {\n padding: 0;\n margin: 0;\n }\n \n .media.media-flip .img {\n float: right;\n margin: 0 0 0 10px;\n }\n \n .media > * {\n margin: 0 0 0 160px;\n }\n \n .media.media-flip > * {\n margin: 0 160px 0 0;\n }\n \n @supports(display: grid ) {\n /* override */\n .media > *,\n .media.media-flip > * {\n margin: 0;\n }\n .media .img,\n .media.media-flip .img {\n width: auto;\n margin: 0;\n }\n .media:after {\n content: none;\n }\n \n .media {\n display: grid;\n grid-column-gap: 20px;\n grid-template-columns: 150px 3fr;\n grid-template-rows: auto 1fr auto;\n grid-template-areas:\n \"img media-title\"\n \"img bd\"\n \"ft ft\";\n }\n \n .media.media-flip {\n grid-template-columns: 3fr 150px ;\n grid-template-areas:\n \"media-title img\"\n \"bd img\"\n \"ft ft\";\n }\n \n .media.img-flexie {\n grid-template-columns: minmax(150px, 1fr) 3fr;\n }\n \n .media.media-flip.img-flexie {\n grid-template-columns: 3fr minmax(150px, 1fr);\n }\n \n /* nested */\n .media > .media {\n grid-column: 2 / -1 ;\n margin: 0; /* override */\n margin-top: 1em;\n }\n }\n \n \n }","a {\n outline : none;\n text-decoration: none;\n padding : 2px 1px 0;\n}\n\n\na:link {\n color: var(--red);\n}\n\na:visited { \n color: var(--dark);\n}\n\na:focus {\n border-bottom: 1px solid var(--red);\n background: var(--yellow);\n}\n\na:hover {\n border-bottom: 1px solid; \n background: var(--yellow);\n }\n \n a:active {\n color: var(--highlight);\n }","\nmain article {\n display: flex;\n margin: 0 3em;\n}\n\n.post-content article {\n flex-wrap: wrap;\n}\n\n.entry-header {\n padding-right: 2em;\n min-width: 20vw;\n flex-grow: 2;\n}\n\n.title {\n color: var(--very-dark-gray);\n}\n\n.subtitle {\n font-size: 1.5rem;\n color: var(--orange);\n}\n\n.post-date {\n color: var(--gray);\n}\n\n.entry-content {\n margin-top: 0;\n font-size: 1.2em;\n}\n\n.entry-content p:first-of-type {\n margin-top: 0;\n padding-top: 0;\n font-size: 140%;\n}\n/* Ripped from https://css-tricks.com/snippets/css/drop-caps/ */\n.entry-content p:first-child:first-letter {\n color: var(--red);\n float: left;\n font-family: Georgia;\n font-size: 75px;\n line-height: 60px;\n padding-top: 4px;\n padding-right: 8px;\n padding-left: 3px;\n }\n/* Inspired by https://codepen.io/wbeeftink/pen/dIaDH */\n .tag {\n background: var(--light-gray);\n border-radius: 3px 0 0 3px;\n color: #999;\n display: inline-block;\n height: 26px;\n line-height: 26px;\n padding: 0 20px 0 23px;\n position: relative;\n margin: 0 10px 10px 0;\n text-decoration: none;\n -webkit-transition: color 0.2s;\n }\n \n .tag::before {\n background: var(--bg);\n border-radius: 10px;\n box-shadow: inset 0 1px rgba(0, 0, 0, 0.25);\n content: '';\n height: 6px;\n left: 10px;\n position: absolute;\n width: 6px;\n top: 10px;\n }\n \n .tag::after {\n background: var(--bg);\n border-bottom: 13px solid transparent;\n border-left: 10px solid var(--light-gray);\n border-top: 13px solid transparent;\n content: '';\n position: absolute;\n right: 0;\n top: 0;\n }\n \n .tag:hover {\n background-color: var(--red);\n color: white;\n }\n \n .tag:hover::after {\n border-left-color: var(--red); \n }\n\n .entry-footer {\n \n width: 49vw;\n }\n\n@media (max-width: 550px) {\n .content {\n padding: 2em 0;\n }\n main article {\n flex-direction: column;\n margin: 0 1em;\n }\n\n .entry-footer {\n width: 100%;\n }\n}\n\n","\n.colophon {\n text-align: center;\n background: var(--dark-gray);\n color: var(--very-light-gray);\n min-height: 5em;\n font-size: 1.3em;\n}\n\n.colophon p:first-of-type {\n padding-top: 1em;\n}","@media (prefers-color-scheme: dark) {\n body {\n color: var(--yellow);\n background-color:var(--very-dark-gray);\n }\n\n a:visited { \n color: var(--red);\n }\n\n .navbar-item a {\n color: var(--light);\n }\n\n .subtitle {\n color: var(--color2dark);\n}\n\n.post-date {\n color: var(--blue);\n}\n\n\n .tag {\n background: var(--gray);\n }\n\n .media-content .tag {\n background: var(--very-dark-gray)\n }\n\n .tag::before, .tag::after {\n background: var(--gray);\n }\n\n .tag::after {\n border-left: 10px solid var(--very-dark-gray);\n }\n }","@import \"variables\";\n@import \"remedy\";\n@import \"grid.css\";\n@import \"header.css\";\n@import \"hcard.css\";\n@import \"links.css\";\n@import \"article.css\";\n@import\"footer.css\";\n@import \"darkmode.css\";\n\nhtml {\n background: var(--bg);\n color: var(--text);\n}\n\n"]} \ No newline at end of file +{"version":3,"sources":["variables.css","remedy.css","grid.css","header.css","hcard.css","links.css","article.css","footer.css","darkmode.css","main.css"],"names":[],"mappings":"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","file":"main.css","sourcesContent":[":root {\n /* CityLights http://citylights.xyz */\n --very-light-gray: #B7C5D3;\n --light-gray: #718CA1;\n --gray: #41505E;\n --dark-gray: #333F4A;\n --very-dark-gray: #1D252C;\n\n --color1light: #70E1E8;\n --color1medium: #33CED8;\n --color1dark: #008B94;\n\n --color2light: #5EC4FF;\n --color2medium: #68A1F0;\n --color2dark: #539AFC;\n\n --color3light:#E27E8D;\n --color3medium:#D95468;\n --color3dark:#B62D65;\n\n --color4light: #EBBF83;\n --color4dark: #D98E48;\n\n --color5light: #8BD49C;\n\n --color6dark: #718CA1;\n\n --color7light: #8BD49C;\n\n\n --cyan: var(--color1light);\n --blue: var(--color2light);\n --purple: var(--color3dar)k;\n --pink: var(--color3ligh)t;\n --yellow: var(--color4light);\n --green: var(--color5light);\n --red: var(--color3medium);\n --orange: var(--color4dark);\n --light-orange: var(--color4light);\n\n --bg: var(--very-light-gray);\n --text: var(--dark-gray);\n --highlight: #ecf285;\n}\n\n","/* Level the playing field some */\n\n* { box-sizing: border-box; } /* Switch to border-box for box-sizing. */\n\n/* Immediately jump any animation to the end point if the user has set their device to \"prefers reduced motion\". */\n/* This could create bad unintended consequences. Remove as needed, and write your own appropriate code for prefers-reduced-motion. */\n@​media (prefers-reduced-motion: reduce) {\n * {\n animation-duration: 0.001s !important;\n transition-duration: 0.001s !important;\n }\n}\n\nbody {\n margin: 0; /* Remove the tiny space around the edge of the page */\n}\n\n/* Switch to using rem units for typography. Fix line-height on headlines. */\nh1 {\n font-size: 2rem; /* Make all H1 large, remove nested-shrinking sizes. */\n margin: 0.67em 0;\n}\nh2 {\n font-size: 1.5rem;\n}\nh3 {\n font-size: 1.17rem;\n}\nh4 {\n font-size: 1.00rem;\n}\nh5 {\n font-size: 0.83rem;\n}\nh6 {\n font-size: 0.67rem;\n}\n\nh2, h3, h4, h5, h6{\n line-height: 1;\n}\n\n/* Improve readibility */\np {\n line-height: 1.5; \n}\n\n\npre { \n white-space: pre-wrap; /* Overflow by default is bad. */\n}\n\n\n/* are browsers now consistent with margin & padding on lists?\n See: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Lists_and_Counters/Consistent_list_indentation */\nnav ul {\n list-style: none;\n}\n\n \nimg {\n border-style: none; /* Remove the border on images inside links in IE 10 and earlier. */\n vertical-align: bottom; /* Fix problem with images having a tiny gap for a decender under them. */\n display: block; /* Switch display mode to block, since that's what we usually want for images. */\n max-width: 100%; /* Make images flexible by default. */\n height: auto; /* ensure images maintain their aspect ratio when max-width comes into play. */\n}\n\n\n/* In English, when styling the element, use curly quotes instead of straight quotes. */\n\n/* Code for this is now in the quotes.css file */ \n\n\n/* Support upcoming properties that haven't been broadly implemented yet,\n but for which the initial value and legacy behavior is not be the best behavior.\n*/\n\n/* Consistent line spacing, which does not unecessarily grow to accomodate things that would fit anyway */\n:root {\n line-sizing: normal;\n}\n\n/* Improve spacing of punctuation marks and at script changes in CJK languages */\n:root {\n text-spacing: trim-start allow-end trim-adjacent ideograph-alpha ideograph-numeric;\n}\n\n\n","\n.wrapper {\n margin: 0 auto;\n grid-row-gap: 10px;\n grid-template-areas:\n \"header\"\n \"content\"\n \"sidebar\"\n \"footer\";\n}\n\n.mainheader {\n grid-area: header;\n}\n\n\n.content {\n grid-area: content;\n\tpadding: 20px;\n}\n\n.sidebar {\n grid-area: sidebar;\n}\n\n/*\n Main footer\n*/\n\n.colophon {\n grid-area: footer;\n}\n\n/*\n Grid\n*/\n\n@media (min-width: 550px) {\n\n\t.home .site {\n\t\tgrid-column-gap: 2rem;\n\t\tgrid-row-gap: 20rem;\n\t\tgrid-template-columns: 2fr 4fr;\n\t\tgrid-template-areas:\n\t\t \"header header\"\n\t\t \"content content\"\n\t\t \"footer footer\"\n\t }\n\n .site {\n grid-column-gap: 2rem;\n grid-row-gap: 2rem;\n grid-template-columns: 2fr 4fr;\n grid-template-areas:\n \"header header\"\n \"sidebar content\"\n \"footer footer\"\n\t}\n\n\t\n\n\n}","/*\n Header\n*/\n\n.mainheader {\n display: flex;\n flex-direction: column;\n align-items: center;\n background-color: var(--very-dark-gray);\n color: #fff;\n}\n\n.mainheader h1 {\n font-size: 1.3rem;\n}\n\n.site-branding {\n display: flex;\n justify-content: space-around;\n}\n\n.site-branding img {\n height: 3em;\n width: 3em;\n margin-right: 1em;\n}\n\n\n.mainnav {\n width: auto;\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n\n.mainnav a {\n padding: .5em;\n}\n\n@media (min-width: 900px) {\n .mainheader {\n flex-direction: row;\n justify-content: space-around;\n }\n\n .mainnav a {\n padding: .5em .8em;\n }\n}\n","/* Inspiration https://responsivemart.com/ui_design/css-user-profile-card/ */\n\n.usercard-wrapper {\n margin: 5em auto;\n max-width: 1100px;\n}\n\n.usercard-wrapper .row {\n display: flex;\n flex-direction: column;\n}\n\n.usercard-wrapper .row .col {\n flex-grow: 1;\n}\n.usercard {\n background: var(--gray);\n display: flex;\n flex-basis: 0;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);\n overflow: hidden;\n border-radius: 4px;\n}\n\n.profiles {\n display: flex;\n list-style-type: none;\n\tflex-flow: row wrap;\n\tjustify-content: center;\n\tmargin: 1.5em 0;\n}\n\n.profile svg {\n width: 1em;\n height: 1em;\n border-radius: 50%;\n border: none;\n outline: none;\n font-size: 3em;\n cursor: pointer;\n opacity: .9;\n}\n\n.profile .icon {\n fill: var(--light);\n}\n\n.usercard-avatar {\n position: relative;\n width: 50%;\n z-index: 49;\n overflow: hidden; \n}\n\n .usercard-img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n transition: .3s;\n}\n \n .usercard-body {\n position: relative;\n width: 60%;\n padding: 3em 3em 2em;\n background-color: var(--dark-gray);\n color: var(--light);\n text-align: center;\n}\n\n .usercard .title {\n color: var(--very-light-gray);\n font-size: 2.5rem;\n margin-bottom: .4em;\n \n}\n\n .usercard:hover .usercard-img {\n transform: scale(1.1) rotate(3deg);\n}\n\n@media (max-width: 550px) {\n .usercard {\n flex-direction: column;\n }\n\n\n .usercard-avatar {\n width: 100%;\n }\n\n .usercard-body {\n width: 100%;\n };\n}\n\n@media (min-width: 550px) {\n .usercard .usercard-avatar:after {\n content: '';\n position: absolute;\n right: -16%;\n top: 0;\n transform: skewx(-10deg);\n height: 100%;\n width: 20%;\n min-width: 90px;\n background: var(--dark-gray);\n }\n}\n\n/* ripped from Rachel Andrews https://gridbyexample.com/patterns/media-object/ */\n\n\n\n.media {\n margin-bottom: 2em;\n padding: 10px;\n }\n \n .media > .media-title { grid-area: media-title; }\n .media > .img { grid-area: img; }\n .media > .media-content { grid-area: bd; }\n .media > .media-footer { grid-area: ft; }\n \n .media {\n background: var(--gray);\n display: grid;\n grid-column-gap: 20px;\n grid-template-areas:\n \"media-title\"\n \"img\"\n \"bd\"\n \"ft\";\n }\n \n \n @media (min-width: 600px) {\n \n /* clearfix*/\n .media:after {\n content: \"\";\n display: block;\n clear: both;\n }\n \n .media > .media {\n margin-left: 160px;\n clear: both;\n }\n \n .media .img {\n float: left;\n margin: 0 10px 0 0;\n width: 150px;\n }\n \n .media .media-footer {\n background-color: var(--gray);\n padding: 10px;\n }\n\n .media-footer .profiles {\n padding: 0;\n margin: 0;\n }\n \n .media.media-flip .img {\n float: right;\n margin: 0 0 0 10px;\n }\n \n .media > * {\n margin: 0 0 0 160px;\n }\n \n .media.media-flip > * {\n margin: 0 160px 0 0;\n }\n \n @supports(display: grid ) {\n /* override */\n .media > *,\n .media.media-flip > * {\n margin: 0;\n }\n .media .img,\n .media.media-flip .img {\n width: auto;\n margin: 0;\n }\n .media:after {\n content: none;\n }\n \n .media {\n display: grid;\n grid-column-gap: 20px;\n grid-template-columns: 150px 3fr;\n grid-template-rows: auto 1fr auto;\n grid-template-areas:\n \"img media-title\"\n \"img bd\"\n \"ft ft\";\n }\n \n .media.media-flip {\n grid-template-columns: 3fr 150px ;\n grid-template-areas:\n \"media-title img\"\n \"bd img\"\n \"ft ft\";\n }\n \n .media.img-flexie {\n grid-template-columns: minmax(150px, 1fr) 3fr;\n }\n \n .media.media-flip.img-flexie {\n grid-template-columns: 3fr minmax(150px, 1fr);\n }\n \n /* nested */\n .media > .media {\n grid-column: 2 / -1 ;\n margin: 0; /* override */\n margin-top: 1em;\n }\n }\n \n \n }","a {\n outline : none;\n text-decoration: none;\n padding : 2px 1px 0;\n}\n\n\na:link {\n color: var(--red);\n}\n\na:visited { \n color: var(--dark);\n}\n\na:focus {\n border-bottom: 1px solid var(--red);\n background: var(--yellow);\n}\n\na:hover {\n border-bottom: 1px solid; \n background: var(--yellow);\n }\n \n a:active {\n color: var(--highlight);\n }","\nmain article {\n display: flex;\n margin: 0 3em;\n}\n\n.post-content article {\n flex-wrap: wrap;\n}\n\n.entry-header {\n padding-right: 2em;\n min-width: 20vw;\n flex-grow: 2;\n}\n\n.title {\n color: var(--very-dark-gray);\n}\n\n.subtitle {\n font-size: 1.5rem;\n color: var(--orange);\n}\n\n.post-date {\n color: var(--gray);\n}\n\n.entry-content {\n margin-top: 0;\n font-size: 1.2em;\n}\n\n.entry-content p:first-of-type {\n margin-top: 0;\n padding-top: 0;\n font-size: 140%;\n}\n/* Ripped from https://css-tricks.com/snippets/css/drop-caps/ */\n.entry-content p:first-child:first-letter {\n color: var(--red);\n float: left;\n font-family: Georgia;\n font-size: 75px;\n line-height: 60px;\n padding-top: 4px;\n padding-right: 8px;\n padding-left: 3px;\n }\n/* Inspired by https://codepen.io/wbeeftink/pen/dIaDH */\n .tag {\n background: var(--light-gray);\n border-radius: 3px 0 0 3px;\n color: #999;\n display: inline-block;\n height: 26px;\n line-height: 26px;\n padding: 0 20px 0 23px;\n position: relative;\n margin: 0 10px 10px 0;\n text-decoration: none;\n -webkit-transition: color 0.2s;\n }\n \n .tag::before {\n background: var(--bg);\n border-radius: 10px;\n box-shadow: inset 0 1px rgba(0, 0, 0, 0.25);\n content: '';\n height: 6px;\n left: 10px;\n position: absolute;\n width: 6px;\n top: 10px;\n }\n \n .tag::after {\n background: var(--bg);\n border-bottom: 13px solid transparent;\n border-left: 10px solid var(--light-gray);\n border-top: 13px solid transparent;\n content: '';\n position: absolute;\n right: 0;\n top: 0;\n }\n \n .tag:hover {\n background-color: var(--red);\n color: white;\n }\n \n .tag:hover::after {\n border-left-color: var(--red); \n }\n\n .entry-footer {\n \n width: 49vw;\n }\n\n@media (max-width: 550px) {\n .content {\n padding: 2em 0;\n }\n main article {\n flex-direction: column;\n margin: 0 1em;\n }\n\n .entry-footer {\n width: 100%;\n }\n}\n\n","\n.colophon {\n text-align: center;\n background: var(--dark-gray);\n color: var(--very-light-gray);\n min-height: 5em;\n font-size: 1.3em;\n}\n\n.colophon p:first-of-type {\n padding-top: 1em;\n}","@media (prefers-color-scheme: dark) {\n body {\n color: var(--yellow);\n background-color:var(--very-dark-gray);\n }\n\n a:visited { \n color: var(--red);\n }\n\n .navbar-item a {\n color: var(--light);\n }\n\n .subtitle {\n color: var(--color2dark);\n}\n\n.post-date {\n color: var(--blue);\n}\n\n\n .tag {\n background: var(--gray);\n }\n\n .media-content .tag {\n background: var(--very-dark-gray)\n }\n\n .tag::before, .tag::after {\n background: var(--gray);\n }\n\n .tag::after {\n border-left: 10px solid var(--very-dark-gray);\n }\n }","@import \"variables\";\n@import \"remedy\";\n@import \"grid.css\";\n@import \"header.css\";\n@import \"hcard.css\";\n@import \"links.css\";\n@import \"article.css\";\n@import\"footer.css\";\n@import \"darkmode.css\";\n\nhtml {\n background: var(--bg);\n color: var(--text);\n}\n\n"]} \ No newline at end of file diff --git a/assets/images/favicon.png b/assets/images/favicon.png new file mode 100644 index 00000000..57be9bd5 Binary files /dev/null and b/assets/images/favicon.png differ diff --git a/assets/images/icons/facebook.svg b/assets/images/icons/facebook.svg new file mode 100755 index 00000000..d775b289 --- /dev/null +++ b/assets/images/icons/facebook.svg @@ -0,0 +1 @@ +Facebook icon \ No newline at end of file diff --git a/assets/images/icons/flickr.svg b/assets/images/icons/flickr.svg new file mode 100755 index 00000000..9ff16905 --- /dev/null +++ b/assets/images/icons/flickr.svg @@ -0,0 +1 @@ +Flickr icon \ No newline at end of file diff --git a/assets/images/icons/foursquare.svg b/assets/images/icons/foursquare.svg new file mode 100755 index 00000000..40f52ba2 --- /dev/null +++ b/assets/images/icons/foursquare.svg @@ -0,0 +1 @@ +Foursquare icon \ No newline at end of file diff --git a/assets/images/icons/github.svg b/assets/images/icons/github.svg new file mode 100755 index 00000000..38997125 --- /dev/null +++ b/assets/images/icons/github.svg @@ -0,0 +1 @@ +GitHub icon \ No newline at end of file diff --git a/assets/images/icons/instagram.svg b/assets/images/icons/instagram.svg new file mode 100755 index 00000000..e0b8ffd7 --- /dev/null +++ b/assets/images/icons/instagram.svg @@ -0,0 +1 @@ +Instagram icon \ No newline at end of file diff --git a/assets/images/icons/linkedin.svg b/assets/images/icons/linkedin.svg new file mode 100755 index 00000000..3dc9f68a --- /dev/null +++ b/assets/images/icons/linkedin.svg @@ -0,0 +1 @@ +LinkedIn icon \ No newline at end of file diff --git a/assets/images/icons/mail.svg b/assets/images/icons/mail.svg new file mode 100644 index 00000000..9fca68be --- /dev/null +++ b/assets/images/icons/mail.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/images/icons/rss.svg b/assets/images/icons/rss.svg new file mode 100644 index 00000000..3b2705d2 --- /dev/null +++ b/assets/images/icons/rss.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/images/icons/tumblr.svg b/assets/images/icons/tumblr.svg new file mode 100755 index 00000000..46811dde --- /dev/null +++ b/assets/images/icons/tumblr.svg @@ -0,0 +1 @@ +Tumblr icon \ No newline at end of file diff --git a/assets/images/icons/twitter.svg b/assets/images/icons/twitter.svg new file mode 100755 index 00000000..af5b7c34 --- /dev/null +++ b/assets/images/icons/twitter.svg @@ -0,0 +1 @@ +Twitter icon \ No newline at end of file diff --git a/assets/images/social_preview.png b/assets/images/social_preview.png new file mode 100644 index 00000000..da9ba8f5 Binary files /dev/null and b/assets/images/social_preview.png differ diff --git a/favicon.png b/favicon.png new file mode 100644 index 00000000..e9122e67 Binary files /dev/null and b/favicon.png differ diff --git a/gulpfile.js b/gulpfile.js index 837c5f54..aacd2f44 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -70,7 +70,7 @@ function css() { // Jekyll function jekyll() { - return cp.spawn("bundle", ["exec", "jekyll", "build", "--config", "_config.yml,_config_dev.yml"], { + return cp.spawn("bundle", ["exec", "jekyll", "build"], { stdio: "inherit" }); } diff --git a/package-lock.json b/package-lock.json index 61db9751..1de9207f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -93,13 +93,13 @@ "dev": true }, "accepts": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.6.tgz", - "integrity": "sha512-QsaoUD2dpVpjENy8JFpQnXP9vyzoZPmAoKrE3S6HtSB7qzSebkJNnmdY4p004FQUSSiHXPueENpoeuUW/7a8Ig==", + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", "dev": true, "requires": { "mime-types": "~2.1.24", - "negotiator": "0.6.1" + "negotiator": "0.6.2" } }, "acorn": { @@ -411,6 +411,24 @@ "postcss-value-parser": "^3.3.1" } }, + "axios": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.0.tgz", + "integrity": "sha512-1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ==", + "dev": true, + "requires": { + "follow-redirects": "1.5.10", + "is-buffer": "^2.0.2" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz", + "integrity": "sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==", + "dev": true + } + } + }, "bach": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", @@ -580,12 +598,12 @@ } }, "browser-sync": { - "version": "2.26.5", - "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.26.5.tgz", - "integrity": "sha512-zVa6MmadAFgl5Uk53Yy5cw5tGTO7xSGAWK3Yx70GJ1t5jK+r6B4q3xq+1XbYfLt1SbeFg7WoNWneNhMT4B9jFw==", + "version": "2.26.7", + "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.26.7.tgz", + "integrity": "sha512-lY3emme0OyvA2ujEMpRmyRy9LY6gHLuTr2/ABxhIm3lADOiRXzP4dgekvnDrQqZ/Ec2Fz19lEjm6kglSG5766w==", "dev": true, "requires": { - "browser-sync-client": "^2.26.4", + "browser-sync-client": "^2.26.6", "browser-sync-ui": "^2.26.4", "bs-recipes": "1.3.4", "bs-snippet-injector": "^2.0.1", @@ -600,6 +618,7 @@ "fs-extra": "3.0.1", "http-proxy": "1.15.2", "immutable": "^3", + "localtunnel": "1.9.2", "micromatch": "^3.1.10", "opn": "5.3.0", "portscanner": "2.1.1", @@ -616,11 +635,6 @@ "yargs": "6.4.0" }, "dependencies": { - "localtunnel": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-1.9.2.tgz", - "integrity": "sha512-NEKF7bDJE9U3xzJu3kbayF0WTvng6Pww7tzqNb/XtEARYwqw7CKEX7BvOMg98FtE9es2CRizl61gkV3hS8dqYg==" - }, "yargs": { "version": "6.4.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.4.0.tgz", @@ -655,9 +669,9 @@ } }, "browser-sync-client": { - "version": "2.26.4", - "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.26.4.tgz", - "integrity": "sha512-mQiDp5/tf79VezDS5j/EExU4Ze6f5DQYuL0Z7VdJgBbNLTHDfkYGi2R620qc6HkY9XZA0m4/UwihT7J42RBIJA==", + "version": "2.26.6", + "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.26.6.tgz", + "integrity": "sha512-mGrkZdNzttKdf/16I+y+2dTQxoMCIpKbVIMJ/uP8ZpnKu9f9qa/2CYVtLtbjZG8nsM14EwiCrjuFTGBEnT3Gjw==", "dev": true, "requires": { "etag": "1.8.1", @@ -820,6 +834,44 @@ } } }, + "cheerio": { + "version": "1.0.0-rc.3", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.3.tgz", + "integrity": "sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA==", + "dev": true, + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.1", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash": "^4.15.0", + "parse5": "^3.0.1" + }, + "dependencies": { + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + } + } + }, "chokidar": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.5.tgz", @@ -1608,6 +1660,15 @@ "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", "dev": true }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, "domutils": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", @@ -2175,6 +2236,26 @@ "readable-stream": "^2.3.6" } }, + "follow-redirects": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", + "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", + "dev": true, + "requires": { + "debug": "=3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -2990,6 +3071,98 @@ } } }, + "gulp-embed-svg": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/gulp-embed-svg/-/gulp-embed-svg-1.1.4.tgz", + "integrity": "sha512-kXck6nTod75r6pYqasRusfxUSFZTvu3tVvDy5GZlKytwfB4zSNS8kmze3fGJtpk3pNivXYMAkjHFi1fSEgmO7g==", + "dev": true, + "requires": { + "cheerio": "^1.0.0-rc.2", + "plugin-error": "^1.0.1", + "through2": "^2.0.3" + } + }, + "gulp-load-plugins": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-2.0.1.tgz", + "integrity": "sha512-WTYIvfEg3j9dRUUkLSE0+MIliU2Jvvc3J7f7fb66ifqSEPS/Ki2xwGfcl68dJN8b+ZGl+9CE3sOl4hfiLmcUIQ==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "fancy-log": "^1.2.0", + "findup-sync": "^4.0.0", + "gulplog": "^1.0.0", + "has-gulplog": "^0.1.0", + "micromatch": "^4.0.2", + "resolve": "^1.12.0" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "findup-sync": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", + "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^4.0.2", + "resolve-dir": "^1.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "resolve": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", + "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, "gulp-plumber": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/gulp-plumber/-/gulp-plumber-1.2.1.tgz", @@ -3181,6 +3354,15 @@ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, + "has-gulplog": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", + "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=", + "dev": true, + "requires": { + "sparkles": "^1.0.0" + } + }, "has-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", @@ -3258,6 +3440,33 @@ "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==", "dev": true }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", + "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, "http-errors": { "version": "1.7.2", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", @@ -3836,6 +4045,65 @@ "strip-bom": "^2.0.0" } }, + "localtunnel": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-1.9.2.tgz", + "integrity": "sha512-NEKF7bDJE9U3xzJu3kbayF0WTvng6Pww7tzqNb/XtEARYwqw7CKEX7BvOMg98FtE9es2CRizl61gkV3hS8dqYg==", + "dev": true, + "requires": { + "axios": "0.19.0", + "debug": "4.1.1", + "openurl": "1.1.1", + "yargs": "6.6.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^4.2.0" + } + }, + "yargs-parser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", + "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "dev": true, + "requires": { + "camelcase": "^3.0.0" + } + } + } + }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -3855,9 +4123,9 @@ } }, "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", "dev": true }, "lodash._reinterpolate": { @@ -3879,12 +4147,12 @@ "dev": true }, "lodash.template": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.4.0.tgz", - "integrity": "sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A=", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", + "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", "dev": true, "requires": { - "lodash._reinterpolate": "~3.0.0", + "lodash._reinterpolate": "^3.0.0", "lodash.templatesettings": "^4.0.0" } }, @@ -4098,9 +4366,9 @@ "dev": true }, "mixin-deep": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", "dev": true, "requires": { "for-in": "^1.0.2", @@ -4166,9 +4434,9 @@ } }, "negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", "dev": true }, "next-tick": { @@ -4421,6 +4689,12 @@ "wrappy": "1" } }, + "openurl": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz", + "integrity": "sha1-OHW0sO96UsFW8NtB1GCduw+Us4c=", + "dev": true + }, "opn": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", @@ -4528,6 +4802,15 @@ "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", "dev": true }, + "parse5": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz", + "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "parseqs": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", @@ -4623,6 +4906,12 @@ "pinkie-promise": "^2.0.0" } }, + "picomatch": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.0.7.tgz", + "integrity": "sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==", + "dev": true + }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", @@ -5754,9 +6043,9 @@ "dev": true }, "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", "dev": true }, "raw-body": { @@ -6181,9 +6470,9 @@ "dev": true }, "set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", "dev": true, "requires": { "extend-shallow": "^2.0.1", @@ -6999,38 +7288,15 @@ "dev": true }, "union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", "dev": true, "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } + "set-value": "^2.0.1" } }, "uniq": { diff --git a/package.json b/package.json index 52da9628..f1c8ebef 100644 --- a/package.json +++ b/package.json @@ -17,11 +17,13 @@ }, "homepage": "https://github.com/miklb/jekyll-indieweb#readme", "devDependencies": { - "browser-sync": "^2.26.5", + "browser-sync": "^2.26.7", "css-declaration-sorter": "^4.0.1", "cssnano": "^4.1.10", "del": "^4.1.1", "gulp": "^4.0.1", + "gulp-embed-svg": "^1.1.4", + "gulp-load-plugins": "^2.0.1", "gulp-plumber": "^1.2.1", "gulp-postcss": "^8.0.0", "gulp-rename": "^1.4.0",