Add basic website (#437)

* Add Netlify configuration and website Makefile

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add .editorconfig file for IDE configs

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add empty content folder to satisfy Hugo requirement

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add basic Hugo site config

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add initial layout scaffolding

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add initial npm assets, yarn.lock, and .gitignore file to ignore node_modules/

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add initial site implementation

* Revert Hugo version to 0.50

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Change publish directory to website/public

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add basic site metadata in partial

Signed-off-by: Luc Perkins <lucperkins@gmail.com>

* Widen main logo on mobile

Signed-off-by: Luc Perkins <lucperkins@gmail.com>

* Add favicon link to CSS partial

Signed-off-by: Luc Perkins <lucperkins@gmail.com>

* Synchronize main color with logos

Signed-off-by: Luc Perkins <lucperkins@gmail.com>

* Add basic Providers and How it Works sections to home page

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Combine basics and providers sections into one

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add favicon link to site config

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add navbar fade in and out effect

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add Slack button

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add GitHub stars/watcher info

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add documentation layout

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add debugging and contributing links

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add docs button in main hero

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Fix footer layout issue

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Change docs header aesthetic

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Change syntax highlighting theme to fruity

Signed-off-by: lucperkins <lucperkins@gmail.com>

* More adjustments to sidebar

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add TOC panel for docs

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Adjust the padding on section elements

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Remove stickiness on main docs header

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add basic architecture doc

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Remove 'coming soon' banner

Signed-off-by: lucperkins <lucperkins@gmail.com>

* Add AnchorJS support for docs pages

Signed-off-by: lucperkins <lucperkins@gmail.com>
This commit is contained in:
Luc Perkins
2018-12-21 13:49:05 -08:00
committed by Robbie Zhang
parent 966f7a807b
commit b44072588b
42 changed files with 1059 additions and 1 deletions

View File

@@ -0,0 +1,33 @@
(function(root,factory){'use strict';if(typeof define==='function'&&define.amd){define([],factory);}else if(typeof module==='object'&&module.exports){module.exports=factory();}else{root.AnchorJS=factory();root.anchors=new root.AnchorJS();}}(this,function(){'use strict';function AnchorJS(options){this.options=options||{};this.elements=[];function _applyRemainingDefaultOptions(opts){opts.icon=opts.hasOwnProperty('icon')?opts.icon:'\ue9cb';opts.visible=opts.hasOwnProperty('visible')?opts.visible:'hover';opts.placement=opts.hasOwnProperty('placement')?opts.placement:'right';opts.ariaLabel=opts.hasOwnProperty('ariaLabel')?opts.ariaLabel:'Anchor';opts.class=opts.hasOwnProperty('class')?opts.class:'';opts.truncate=opts.hasOwnProperty('truncate')?Math.floor(opts.truncate):64;}
_applyRemainingDefaultOptions(this.options);this.isTouchDevice=function(){return!!(('ontouchstart'in window)||window.DocumentTouch&&document instanceof DocumentTouch);};this.add=function(selector){var elements,elsWithIds,idList,elementID,i,index,count,tidyText,newTidyText,readableID,anchor,visibleOptionToUse,indexesToDrop=[];_applyRemainingDefaultOptions(this.options);visibleOptionToUse=this.options.visible;if(visibleOptionToUse==='touch'){visibleOptionToUse=this.isTouchDevice()?'always':'hover';}
if(!selector){selector='h2, h3, h4, h5, h6';}
elements=_getElements(selector);if(elements.length===0){return this;}
_addBaselineStyles();elsWithIds=document.querySelectorAll('[id]');idList=[].map.call(elsWithIds,function assign(el){return el.id;});for(i=0;i<elements.length;i++){if(this.hasAnchorJSLink(elements[i])){indexesToDrop.push(i);continue;}
if(elements[i].hasAttribute('id')){elementID=elements[i].getAttribute('id');}else if(elements[i].hasAttribute('data-anchor-id')){elementID=elements[i].getAttribute('data-anchor-id');}else{tidyText=this.urlify(elements[i].textContent);newTidyText=tidyText;count=0;do{if(index!==undefined){newTidyText=tidyText+'-'+count;}
index=idList.indexOf(newTidyText);count+=1;}while(index!==-1);index=undefined;idList.push(newTidyText);elements[i].setAttribute('id',newTidyText);elementID=newTidyText;}
readableID=elementID.replace(/-/g,' ');anchor=document.createElement('a');anchor.className='anchorjs-link '+this.options.class;anchor.href='#'+elementID;anchor.setAttribute('aria-label',this.options.ariaLabel);anchor.setAttribute('data-anchorjs-icon',this.options.icon);if(visibleOptionToUse==='always'){anchor.style.opacity='1';}
if(this.options.icon==='\ue9cb'){anchor.style.font='1em/1 anchorjs-icons';if(this.options.placement==='left'){anchor.style.lineHeight='inherit';}}
if(this.options.placement==='left'){anchor.style.position='absolute';anchor.style.marginLeft='-1em';anchor.style.paddingRight='0.5em';elements[i].insertBefore(anchor,elements[i].firstChild);}else{anchor.style.paddingLeft='0.375em';elements[i].appendChild(anchor);}}
for(i=0;i<indexesToDrop.length;i++){elements.splice(indexesToDrop[i]-i,1);}
this.elements=this.elements.concat(elements);return this;};this.remove=function(selector){var index,domAnchor,elements=_getElements(selector);for(var i=0;i<elements.length;i++){domAnchor=elements[i].querySelector('.anchorjs-link');if(domAnchor){index=this.elements.indexOf(elements[i]);if(index!==-1){this.elements.splice(index,1);}
elements[i].removeChild(domAnchor);}}
return this;};this.removeAll=function(){this.remove(this.elements);};this.urlify=function(text){var nonsafeChars=/[& +$,:;=?@"#{}|^~[`%!'<>\]\.\/\(\)\*\\\n\t\b\v]/g,urlText;if(!this.options.truncate){_applyRemainingDefaultOptions(this.options);}
urlText=text.trim().replace(/\'/gi,'').replace(nonsafeChars,'-').replace(/-{2,}/g,'-').substring(0,this.options.truncate).replace(/^-+|-+$/gm,'').toLowerCase();return urlText;};this.hasAnchorJSLink=function(el){var hasLeftAnchor=el.firstChild&&((' '+el.firstChild.className+' ').indexOf(' anchorjs-link ')>-1),hasRightAnchor=el.lastChild&&((' '+el.lastChild.className+' ').indexOf(' anchorjs-link ')>-1);return hasLeftAnchor||hasRightAnchor||false;};function _getElements(input){var elements;if(typeof input==='string'||input instanceof String){elements=[].slice.call(document.querySelectorAll(input));}else if(Array.isArray(input)||input instanceof NodeList){elements=[].slice.call(input);}else{throw new Error('The selector provided to AnchorJS was invalid.');}
return elements;}
function _addBaselineStyles(){if(document.head.querySelector('style.anchorjs')!==null){return;}
var style=document.createElement('style'),linkRule=' .anchorjs-link {'+
' opacity: 0;'+
' text-decoration: none;'+
' -webkit-font-smoothing: antialiased;'+
' -moz-osx-font-smoothing: grayscale;'+
' }',hoverRule=' *:hover > .anchorjs-link,'+
' .anchorjs-link:focus {'+
' opacity: 1;'+
' }',anchorjsLinkFontFace=' @font-face {'+
' font-family: "anchorjs-icons";'+
' src: url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype");'+
' }',pseudoElContent=' [data-anchorjs-icon]::after {'+
' content: attr(data-anchorjs-icon);'+
' }',firstStyleEl;style.className='anchorjs';style.appendChild(document.createTextNode(''));firstStyleEl=document.head.querySelector('[rel="stylesheet"], style');if(firstStyleEl===undefined){document.head.appendChild(style);}else{document.head.insertBefore(style,firstStyleEl);}
style.sheet.insertRule(linkRule,style.sheet.cssRules.length);style.sheet.insertRule(hoverRule,style.sheet.cssRules.length);style.sheet.insertRule(pseudoElContent,style.sheet.cssRules.length);style.sheet.insertRule(anchorjsLinkFontFace,style.sheet.cssRules.length);}}
return AnchorJS;}));

View File

@@ -0,0 +1 @@
{"Target":"js/anchor.min.3231b81e93880d1db128c90bbea3b3540c38b614ddba93b568ca2d9092a385db.js","MediaType":"application/javascript","Data":{"Integrity":"sha256-MjG4HpOIDR2xKMkLvqOzVAw4thTdupO1aMotkJKjhds="}}

View File

@@ -0,0 +1,5 @@
function anchorJs(){if($('.is-docs-page').length>0){anchors.options={icon:'#'}
anchors.add('.content h2, .content h3, .content h4');}}
function scrollFadeInOut(threshold,element){$(window).scroll(function(){if($(this).scrollTop()>threshold){element.fadeIn();}else{element.fadeOut();}});}
function navbarScrollToggle(){const navbar=$('.is-home-page .navbar');const heroHeight=$('.hero').height();scrollFadeInOut(heroHeight,navbar);}
$(function(){anchorJs();navbarScrollToggle();});

View File

@@ -0,0 +1 @@
{"Target":"js/app.min.f21b34fa42a57f2e8dd0f59faffe4a19d8eb880de4359555cb257d027a2c1481.js","MediaType":"application/javascript","Data":{"Integrity":"sha256-8hs0+kKlfy6N0PWfr/5KGdjriA3kNZVVyyV9AnosFIE="}}

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
{"Target":"css/style.7557002ca2e3a2c3558d1dd6957c18a5a518c37b0da952b617441ae9ed7ffc04.css","MediaType":"text/css","Data":{"Integrity":"sha256-dVcALKLjosNVjR3WlXwYpaUYw3sNqVK2F0Qa6e1//AQ="}}