diff --git a/_data/experience.yml b/_data/experience.yml index 2c7e3ac..fa7e8fb 100644 --- a/_data/experience.yml +++ b/_data/experience.yml @@ -1,26 +1,3 @@ -- title: Creative Technologist - company: Simple Machinists - logo: /assets/svg/watermarks/simplemachinists.svg - from: 2018-04-01 - to: 2018-06-11 - tags: ['production','gig','art','creative','programming','electronics'] - skills: ['adobe-creative-cloud','git','arduino','generative-art','integration-and-automation','trello','agile-development','projection-mapping','rapid-prototyping','experience-design'] - links: - - icon: fab fa-github - url: https://github.com/cooperbrislain/led-test-bench - title: LED Test Bench - tech: ['git','arduino','blender','3d printing','artnet','c#'] - responsibilities: - - description: Collaboratively designed custom-fabricated parts for high-performance __ARTNet__ LED fixtures for use at live events. - - description: Developed production, q/a, and __asset tracking software__ using __QR codes__, __Pub/Sub__, and __mySQL__ - - description: Iterated on product design based on event __post-mortem analysis__. - - description: Researched and recommended parts, materials, and tools to meet production requirements. -# - description: Designed custom __3D-printed__ parts to improve durability and normalize assembly. -# - description: Developed and iterated __production methodologies__ to meet growing demand. - - description: Analyzed failed units for causes and __revised__ design to __reduce or eliminate rate of failure__. - - description: Proposed design recommendations based on common challenges encountered in __event production__. - enabled: false - - title: VJ, Visual Artist, Creative Technologist company: Vektor Selektor type: artist @@ -70,6 +47,26 @@ - description: Performed original content live before audiences of up to 10,000. enabled: true +#- title: Creative Technologist +# company: Simple Machinists +# logo: /assets/svg/watermarks/simplemachinists.svg +# from: 2018-04-01 +# to: 2018-06-11 +# tags: ['production','gig','art','creative','programming','electronics'] +# skills: ['adobe-creative-cloud','git','arduino','generative-art','integration-and-automation','trello','agile-development','projection-mapping','rapid-prototyping','experience-design'] +# links: +# tech: ['git','arduino','blender','3d printing','artnet','c#'] +# responsibilities: +# - description: Collaboratively designed custom-fabricated parts for high-performance __ARTNet__ LED fixtures for use at live events. +# - description: Developed production, q/a, and __asset tracking software__ using __QR codes__, __Pub/Sub__, and __mySQL__ +# - description: Iterated on product design based on event __post-mortem analysis__. +# - description: Researched and recommended parts, materials, and tools to meet production requirements. +# # - description: Designed custom __3D-printed__ parts to improve durability and normalize assembly. +# # - description: Developed and iterated __production methodologies__ to meet growing demand. +# - description: Analyzed failed units for causes and __revised__ design to __reduce or eliminate rate of failure__. +# - description: Proposed design recommendations based on common challenges encountered in __event production__. +# enabled: false + - title: Software Engineer company: BetterHelp type: full-time diff --git a/_includes/foot.html b/_includes/footer.html similarity index 100% rename from _includes/foot.html rename to _includes/footer.html diff --git a/_includes/head.html b/_includes/head.html index e71ef03..864613d 100755 --- a/_includes/head.html +++ b/_includes/head.html @@ -2,14 +2,6 @@ {{ page.title }} - - - @@ -17,7 +9,6 @@ - diff --git a/_includes/scripts-main.html b/_includes/scripts-main.html index 6b6fe05..24a6a01 100755 --- a/_includes/scripts-main.html +++ b/_includes/scripts-main.html @@ -8,5 +8,4 @@ - - + \ No newline at end of file diff --git a/_includes/tracking.html b/_includes/tracking.html index e17441b..30a873a 100755 --- a/_includes/tracking.html +++ b/_includes/tracking.html @@ -1,8 +1,8 @@ - + \ No newline at end of file diff --git a/_layouts/page.html b/_layouts/page.html index 5cc0b5f..fa74bf7 100755 --- a/_layouts/page.html +++ b/_layouts/page.html @@ -1,11 +1,11 @@ - + {% include head.html %} @@ -23,7 +23,7 @@ {% include nav.html %} diff --git a/_sass/_common 2.scss b/_sass/_common 2.scss deleted file mode 100644 index 2b93417..0000000 --- a/_sass/_common 2.scss +++ /dev/null @@ -1,58 +0,0 @@ -@import "icons"; - -.job { - background-repeat: no-repeat; - background-position: 50% 50%; - ul { - list-style: none; - li { - b { - font-weight: 900; - } - &::before { - content: "❯"; - color: #ABACAB; - font-weight: 900; - width: 1em; - margin-left: -1em; - font-family: $title-font; - font-size: 50%; - position: relative; - bottom: 2.5pt; - } - p { - display: inline-block; - } - } - } - ul.responsibilities { - strong[data-skill] { - color: #777674; - } - } - a { - &.icon { - color: #333231; - margin: 5px; - } - } - &:nth-child(even) { - } - &:nth-child(odd) { - } -} - -blockquote { - p { - margin: 0px; - padding: 0px; - } -} - -a { - sup { - i { - color: #333231; - } - } -} \ No newline at end of file diff --git a/_sass/_custom 2.scss b/_sass/_custom 2.scss deleted file mode 100755 index 1e08cc6..0000000 --- a/_sass/_custom 2.scss +++ /dev/null @@ -1,312 +0,0 @@ -@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:200,700,900'); -@import url('https://fonts.googleapis.com/css?family=Tajawal:200,300,400,500,700,800,900'); - -$break-small: 640px; -$break-large: 900px; - -$title-font: "Tajawal"; -$book-font: "Tajawal"; -$block-font: "Roboto Condensed"; - -$shadow-color: rgba(25,25,25,0.5); - -@import "common"; - -body { - font-family: $book-font; - font-weight: 200; - b, strong { - font-weight: 500; - color: #777674; - } -} - -#main { - @media screen and (max-width: $break-small) { - width: 100%; - margin: 0px; - } -} - -ul { - list-style-type: none; - li { - p { - display: inline-block; - margin: 0px; - } - } - margin: 0px; -} - -h1 { - margin: 0px; -} - -h2 { - margin-top: 0.5em; - margin-bottom: 0.5em; -} - -h3 { - margin: 0px; - margin-left: 0.5em; -} - -a { - border-bottom: none; - text-decoration: none; - sup { - top: -0.5em; - right: 0.5em; - font-size: 50%; - i { - } - } -} - -blockquote { - border: none; - margin-left: 50px; - margin-right: 100px; - margin-bottom: 10px; - p { - @media screen and (max-width: $break-large) { - margin: 0px; - font-weight: 400; - } - } - ul { - li { - display: inline-block; - padding: 3px; - p { - font-family: Ubuntu; - font-style: normal; - display: inline-block; - background-color: #EEEEEE; - padding-left: 3px; - padding-right: 3px; - } - } - } - @media screen and (max-width: $break-large) { - width: 100%; - margin: 0px; - padding: 0px; - padding-left: 1em; - margin-top: 0.5em; - } -} - -#technical-skills+ul { - display: flex; - justify-content: flex-start; - flex-wrap: wrap; - font-family: $block-font; - margin-bottom: 0px; - li { - flex-basis: auto; - margin: 0px; - padding: 0px; - margin-right: 1em; - a { - text-decoration: none; - font-weight: bold; - border-bottom: none; - sup { - right: 2px; - top: -1em; - } - } - } - @media screen and (max-width: $break-small) { - justify-content: space-around; - } -} - -#key-skills+ul { - li { - font-weight: 700; - } -} - -#coursework+ul { - display: flex; - flex-direction: row; - justify-content: space-evenly; - flex-wrap: wrap; - &>>li{ - flex: 0 1 auto; - width: 30%; - } -} - -h2+ul { - font-weight: 700; -} - -.highlight { - border: 1px dotted #FAB; - background-color: #FEA; - opacity: 0.5; - display: block; - position: absolute; - z-index: 101; - display: none; -} - -.job { - .links { - display: none; - } - .skills { - display: none; - } - h3 { - .year { - @media screen and (max-width: $break-small) { - display: none; - } - } - } - @media screen and (max-width: $break-small) { - ul.responsibilities { - li { - font-weight: 300; - width: 100%; - display: block; - margin: 0px; - padding: 0px; - border-bottom: 1px dotted #ABACAB; - &::before { - content: ''; - } - &:nth-child(n+6) { - display: none; - } - } - } - } -} - -#nav { - box-shadow: 1px 1px 5px 2px $shadow-color; - display: flex; - align-items: center; - flex-direction: column; - position: fixed; - top: 0px; - right: 0px; - margin: 0; - border: 0.5px solid rgba(45,45,45,0.5); - padding: 0; - font-family: $block-font; - font-weight: 700; - font-size: 12pt; - height: auto; - width: auto; - color: #232221; - .edge { - flex-basis: auto; - opacity: 1; - width: 100%; - button.btn-grip { - display: block; - border: 0.5px solid rgba(45,45,45,0.5); - height: 2em; - box-shadow: none; - width: 100%; - font-size: 18pt; - padding: 0; - margin: 0; - background-color: rgba(219,219,219,0.95); - i { - color: #000; - width: 2em; - height: 2em; - } - } - } - .panel { - background-color: rgba(236,236,236,0.85); - flex-basis: auto; - .split.contact section { - display: flex; - border: 1px dotted #AAA; - h3 { - font-size: 16pt; - margin: 0; - padding: 5px; - flex-basis: 20pt; - padding-left: 10px; - color: #000; - span { - display: none; - } - } - p { - margin: 0; - padding: 0; - line-height: 2.5em; - } - ul { - display: flex; - li { - flex-basis: auto; - justify-content: center; - padding: 10px; - } - } - } - &:first-child{ - } - &+.edge { - &+button.btn-grip { - } - } - } - a { - color: #000; - } -} - -#education+ul { - li { - margin: 0; - padding: 0; - display: inline; - font-family: $title-font; - font-weight: 700; - color: #777674; - strong { - color: inherit; - font-weight: inherit; - font-family: inherit; - - } - &:nth-child(n+1) { - ::after { - content: " • "; - } - } - } -} - -#copyright { - color: rgba(218,229,225,0.5); - a { - color: inherit; - } -} - -canvas { - position: absolute; - z-index: 100; - width: 100%; - height: 100%; - position: absolute; - top: 0px; - left: 0px; - pointer-events: none; -} diff --git a/_sass/_icons 2.scss b/_sass/_icons 2.scss deleted file mode 100644 index 22d8f72..0000000 --- a/_sass/_icons 2.scss +++ /dev/null @@ -1,11 +0,0 @@ -body { - .job { - .skills { - display: none; - [data-skill] { - &::after { - } - } - } - } -} \ No newline at end of file diff --git a/_sass/_main 2.scss b/_sass/_main 2.scss deleted file mode 100755 index 49b6e8f..0000000 --- a/_sass/_main 2.scss +++ /dev/null @@ -1,65 +0,0 @@ -@import 'libs/vars'; -@import 'libs/functions'; -@import 'libs/mixins'; -@import 'libs/skel'; -@import 'font-awesome.min.css'; -@import url('https://fonts.googleapis.com/css?family=Merriweather:300,700,300italic,700italic|Source+Sans+Pro:900'); - -/* -Massively by HTML5 UP -html5up.net | @ajlkn -Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) -*/ - -@include skel-breakpoints(( - xlarge: '(max-width: 1680px)', - large: '(max-width: 1280px)', - medium: '(max-width: 980px)', - small: '(max-width: 736px)', - xsmall: '(max-width: 480px)', - xxsmall: '(max-width: 360px)' -)); - -@include skel-layout(( - reset: 'full', - boxModel: 'border', - grid: ( gutters: 1.5rem ) -)); - -@mixin color($p) { - @include color-typography($p); - @include color-box($p); - @include color-button($p); - @include color-form($p); - @include color-list($p); - @include color-section($p); - @include color-table($p); - @include color-pagination($p); -} - -// Base. - -@import 'base/page'; -@import 'base/typography'; - -// Component. - -@import 'components/box'; -@import 'components/button'; -@import 'components/form'; -@import 'components/icon'; -@import 'components/image'; -@import 'components/list'; -@import 'components/section'; -@import 'components/table'; -@import 'components/pagination'; - -// Layout. - -@import 'layout/wrapper'; -@import 'layout/intro'; -@import 'layout/header'; -@import 'layout/nav'; -@import 'layout/main'; -@import 'layout/footer'; -@import 'layout/navPanel'; diff --git a/_sass/_main.scss b/_sass/_main.scss index 49b6e8f..2d454b9 100755 --- a/_sass/_main.scss +++ b/_sass/_main.scss @@ -2,7 +2,7 @@ @import 'libs/functions'; @import 'libs/mixins'; @import 'libs/skel'; -@import 'font-awesome.min.css'; +@import url('https://kit.fontawesome.com/ba7572c917.js'); @import url('https://fonts.googleapis.com/css?family=Merriweather:300,700,300italic,700italic|Source+Sans+Pro:900'); /* diff --git a/_sass/_pdf 2.scss b/_sass/_pdf 2.scss deleted file mode 100755 index 8bcc034..0000000 --- a/_sass/_pdf 2.scss +++ /dev/null @@ -1,172 +0,0 @@ -@import url('https://fonts.googleapis.com/css?family=Encode+Sans+Condensed:200,300,400,500,700,800,900'); -@import url('https://fonts.googleapis.com/css?family=Encode+Sans:200,300,400,500,700,800,900'); -@import url('https://fonts.googleapis.com/css?family=Work+Sans:100,200,300,400,500,600,700,800,900'); -@import 'font-awesome.min.css'; - -$title-font: "Work Sans"; -$book-font: "Encode Sans"; -$block-font: "Encode Sans Condensed"; - -@import "common"; - -* { - color: #232120; - box-sizing: border-box; -} -body { - font-size: 100%; - font-family: $book_font; - font-weight: 200; - - h1, h2, h3, h4, h5 { - font-weight: bold; - font-family: $title_font; - color: #232221; - } - h1 { - &+h3 { - margin-top: 0px; - } - } - h2 { - } - h3, h4, h5 { - margin-bottom: 1em; - } - a { - border-bottom: none; - text-decoration: none; - color: inherit; - sup { - display: none; - } - } - b { - font-weight: 300; - } - ul { - li { - list-style-type: none; - line-height: default; - p { - margin: 0; - margin-top: 2.5pt; - margin-bottom: 2.5pt; - } - } - } - ul.links { - display: none; - } - blockquote { - margin: 0px; - padding: 0px; - width: 65%; - ul { - margin: 0px; - line-height: 1em; - li { - line-height: default; - font-family: $title_font; - display: inline-block; - width: 15%; - padding: 0px; - margin: 0px; - margin-left: 3pt; - margin-right: 3pt; - text-align: center; - vertical-align: middle; - } - } - } - .contact { - display: block; - position: absolute; - width: 15em; - right: 0px; - top: 10px; - section { - &:nth-child(n+4) { - display: none; - } - h3 { - display: none; - } - p { - text-align: right; - } - } - } - h2+ul { - li { - font-weight: 500; - } - } - #education+ul { - li{ - font-family: $block-font; - display: inline; - - font-weight: 300; - &:nth-child(even) { - color: #777674; - font-weight: 500; - } - strong { - font-weight: inherit; - color: inherit; - } - } - } - h2+ul>li { - color: #434241; - font-weight: 400; - } - #technical-skills+ul, - #coursework+ul { - li { - font-family: $block-font; - display: inline-block; - white-space: nowrap; - padding: 0.5em; - &:nth-child(even) { - font-weight:400; - color: #777674; - } - &:nth-child(odd) { - font-weight: 200; - } - } - } - .job { - display: block; - background-repeat: no-repeat; - background-position: 50% 50%; - ul { - li { - &::before { - content: "❯"; - color: #ABACAB; - font-weight: 900; - width: 1em; - left: -1em; - font-family: $title-font; - font-size: 50%; - top: 0.6em; - position: relative; - vertical-align: top; - float: left; - } - p { - display: block; - } - } - } - ul.responsibilities { - strong[data-skill] { - color: #777674; - } - } - } -} - diff --git a/_sass/noscript 2.scss b/_sass/noscript 2.scss deleted file mode 100755 index fdd4948..0000000 --- a/_sass/noscript 2.scss +++ /dev/null @@ -1,43 +0,0 @@ -@import 'libs/vars'; -@import 'libs/functions'; -@import 'libs/mixins'; -@import 'libs/skel'; -@import 'font-awesome.min.css'; - -/* - Massively by HTML5 UP - html5up.net | @ajlkn - Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) -*/ - -/* Wrapper */ - - #wrapper { - background-color: _palette(wrapper-bg); - background-image: url('../../images/overlay.png'), linear-gradient(0deg, rgba(0,0,0,0.1), rgba(0,0,0,0.1)), url('../../images/bg.jpg'); - background-size: auto, auto, 100% auto; - background-position: center, center, top center; - background-repeat: repeat, no-repeat, no-repeat; - background-attachment: fixed, fixed, fixed; - - &.fade-in { - &:before { - display: none; - } - } - } - -/* Intro */ - - #intro { - body.is-loading & { - opacity: 1; - - &:not(.hidden) { - & + #header + #nav { - @include vendor('transform', 'none'); - opacity: 1; - } - } - } - } \ No newline at end of file diff --git a/assets/js/script.js b/assets/js/script.js index 38ff6b5..8eb1234 100644 --- a/assets/js/script.js +++ b/assets/js/script.js @@ -17,7 +17,6 @@ connectBubbles = function($from, $to, fromRadius=50, toRadius=50, smallRadius=15 x: $from.left+$from.outerWidth()/2, y: $from.top+$from.outerHeight()/2 }; - let toAnchor; // from bubble ctx.beginPath(); ctx.strokeStyle = "#4be500"; @@ -28,21 +27,23 @@ connectBubbles = function($from, $to, fromRadius=50, toRadius=50, smallRadius=15 document.$selected = $from; // to loop - $to.each(function() { - if ($(this)[0] === $from[0]) { + $to.each((i, $item) => { + if ($item[0] === $from[0]) { return 0; } - let toRadius; + + let toAnchor, toRadius; + if ($(this).is('.job .skills li')) { toAnchor = { - x: $(this).parent().parent().find('h3').offset().left-15, - y: $(this).parent().parent().find('h3').offset().top+$(this).parent().parent().find('h3').outerHeight()/2 + x: $(this).parent().parent().find('h3').left-15, + y: $(this).parent().parent().find('h3').top+$(this).parent().parent().find('h3').outerHeight()/2 }; toRadius = 15; } else { toAnchor = { - x: $(this).offset().left+$(this).outerWidth()/2, - y: $(this).offset().top+$(this).outerHeight()/2 + x: $(this).left+$(this).outerWidth()/2, + y: $(this).top+$(this).outerHeight()/2 }; toRadius = 50; } @@ -57,6 +58,7 @@ connectBubbles = function($from, $to, fromRadius=50, toRadius=50, smallRadius=15 'x': fromAnchor.x+Math.cos(angle)*fromRadius, 'y': fromAnchor.y+Math.sin(angle)*fromRadius }; + const lineEnd = { 'x': toAnchor.x-Math.cos(angle)*toRadius, 'y': toAnchor.y-Math.sin(angle)*toRadius