{"version":3,"sources":["webpack:///./src/components/elements/Glitch/Glitch.css?f6f4","webpack:///./src/components/elements/Hero/Hero.css?be9a","webpack:///./src/components/elements/About/About.css?12ad","webpack:///./src/components/elements/Contact/Contact.css?782e","webpack:///./src/components/elements/Skills/Skills.css?bd06","webpack:///./src/components/elements/Grid/GridItem/GridItem.css?6a8d","webpack:///./src/components/elements/Social/Social.css?14ee","webpack:///./src/components/elements/Button/Button.css?5753","webpack:///./src/components/elements/Copyright/Copyright.css?af5f","webpack:///./src/components/elements/Footer/Footer.css?5fdd","webpack:///./src/components/elements/Grid/Grid.css?0f6b","webpack:///./src/components/elements/Header/Header.css?4f3b","webpack:///./src/components/containers/Canvas/Canvas.css?3933","webpack:///./src/components/elements/Link/Link.css?0ed0","webpack:///./src/components/elements/Main/Main.css?ac80","webpack:///./src/components/elements/Skills/SkillsItem/SkillsItem.css?e6ec","webpack:///./src/components/elements/Wrapper/Wrapper.css?f84e","webpack:///./src/index.css?ba46","index.css","components/elements/About/About.css","components/elements/Button/Button.css","components/elements/Contact/Contact.css","components/elements/Copyright/Copyright.css","components/elements/Footer/Footer.css","components/elements/Glitch/Glitch.css","components/elements/Grid/GridItem/GridItem.css","components/elements/Grid/Grid.css","components/elements/Header/Header.css","components/containers/Canvas/Canvas.css","components/elements/Hero/Hero.css","components/elements/Link/Link.css","components/elements/Main/Main.css","components/elements/Skills/SkillsItem/SkillsItem.css","components/elements/Skills/Skills.css","components/elements/Social/Social.css","components/elements/Wrapper/Wrapper.css","config.js","components/elements/About/About.js","components/elements/Button/Button.js","components/elements/Contact/Contact.js","components/elements/Copyright/Copyright.js","components/elements/Footer/Footer.js","components/elements/Glitch/Glitch.js","components/elements/Grid/GridItem/GridItem.js","components/elements/Grid/Grid.js","components/elements/Header/Header.js","components/containers/Canvas/Canvas.js","components/elements/Hero/Hero.js","components/elements/Link/Link.js","components/elements/Main/Main.js","components/elements/Skills/SkillsItem/SkillsItem.js","components/elements/Skills/Skills.js","components/elements/Social/Social.js","components/elements/Wrapper/Wrapper.js","App.js","serviceWorker.js","index.js"],"names":["content","module","i","options","locals","exports","push","AWS_S3_LOCATION","About","className","styles","about","about__parallax","bgImage","bgImageAlt","strength","about__content","text","Button","children","label","onClick","cx","button","propTypes","string","func","isRequired","defaultProps","iconProps","color","size","linkProps","contact__link","target","Contact","contact","contact__item","src","Copyright","copyright","Footer","root","Glitch","hasEntered","glitch","glitch__off","glitch__area","glitch__title","glitch__text","glitch__blink","bool","GridItem","icon","type","Grid","gridItems","map","key","Header","Canvas","props","c","state","fontSize","dropSpeed","height","window","innerHeight","width","innerWidth","columns","drops","Array","Math","floor","fill","setState","intervalId","setInterval","draw","ctx","matrix","fontColor","backgroundColor","fillStyle","fillRect","font","forEach","_","random","length","fillText","canvas","React","createRef","this","current","getContext","updateCanvas","addEventListener","clearInterval","ref","Component","array","number","split","Hero","onEnter","hero","alt","hero__img","hero__btn","Link","link","href","Main","main","SkillsItem","skills__icon","Skills","skills","skills__items","social__item","Social","social","Wrapper","wrapper","App","useState","setHasEntered","Boolean","location","hostname","match","ReactDOM","render","document","getElementById","navigator","serviceWorker","ready","then","registration","unregister"],"mappings":"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","file":"static/js/main.7a358540.chunk.js","sourcesContent":["var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Glitch.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Hero.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./About.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Contact.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Skills.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../../node_modules/postcss-loader/src/index.js!./GridItem.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Social.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Button.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Copyright.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Footer.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Grid.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Header.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Canvas.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Link.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Main.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../../node_modules/postcss-loader/src/index.js!./SkillsItem.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../../../../node_modules/postcss-loader/src/index.js!./Wrapper.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","var content = require(\"!!../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-3-1!../node_modules/postcss-loader/src/index.js!./index.css\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","exports = module.exports = require(\"../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Imports\nexports.push([module.id, \"@import url(https://fonts.googleapis.com/css?family=Roboto:400,900i&display=swap);\", \"\"]);\n// Module\nexports.push([module.id, \"*,\\n*:after,\\n*:before {\\n margin: 0;\\n padding: 0;\\n -webkit-box-sizing: inherit;\\n box-sizing: inherit;\\n}\\n\\nhtml {\\n font-size: 62.5%; /* 1rem = 10px; 10px/16px = 62.5% */\\n}\\n\\nbody {\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n}\\n\\nhtml,\\nbody {\\n height: 100%;\\n}\\n\\nhtml #root, body #root {\\n height: 100%;\\n }\\n\\n::-moz-selection {\\n /* background-color: $color-primary;\\n color: $color-white; */\\n}\\n\\n::selection {\\n /* background-color: $color-primary;\\n color: $color-white; */\\n}\\n\\np {\\n margin: 15px 0;\\n margin: 1.5rem 0;\\n font-size: 16px;\\n font-size: 1.6rem;\\n line-height: 1.4;\\n}\\n\\nsection {\\n margin-bottom: 30px;\\n margin-bottom: 3rem;\\n}\\n\\n:root {\\n --color-black: #000;\\n --color-blue: #01579B;\\n --color-gold: #FFD700;\\n --color-link: #01579B;\\n --color-white: #FFF;\\n\\n --font-courier: 'Courier New', Courier, monospace;\\n --font-roboto: 'Roboto', sans-serif;\\n\\n font-family: 'Roboto'\\n,\\nsans-serif;\\n\\n font-family: 'Roboto', sans-serif;\\n\\n font-family: var(--font-roboto);\\n}\", \"\"]);\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-About-About__about--1gu5u {\\n margin-left: -48px;\\n margin-left: -3rem;\\n margin-right: -48px;\\n margin-right: -3rem;\\n}\\n\\n .src-components-elements-About-About__about__parallax--1Eegf {\\n padding: 160px 24px;\\n padding: 10rem 1.5rem;\\n }\\n\\n .src-components-elements-About-About__about__content--rcr3b {\\n color: var(--color-white);\\n width: 100%;\\n max-width: 800px;\\n margin: auto;\\n padding: 24px;\\n padding: 1.5rem;\\n background-color: rgba(66, 66, 66, 0.7);\\n }\\n\\n .src-components-elements-About-About__about__content--rcr3b p:last-of-type {\\n margin-bottom: 0;\\n }\\n\\n .src-components-elements-About-About__about__icon--3kzbX {\\n position: relative;\\n top: 4px;\\n top: .25rem;\\n margin-left: 4px;\\n margin-left: .25rem;\\n }\", \"\"]);\n// Exports\nexports.locals = {\n\t\"about\": \"src-components-elements-About-About__about--1gu5u\",\n\t\"about__parallax\": \"src-components-elements-About-About__about__parallax--1Eegf\",\n\t\"about__content\": \"src-components-elements-About-About__about__content--rcr3b\",\n\t\"about__icon\": \"src-components-elements-About-About__about__icon--3kzbX\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Button-Button__button--3aZVc {\\n cursor: pointer;\\n}\\n\", \"\"]);\n// Exports\nexports.locals = {\n\t\"button\": \"src-components-elements-Button-Button__button--3aZVc\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Contact-Contact__contact--10XGG {\\n max-width: 1200px;\\n max-width: 75rem;\\n width: 100%;\\n}\\n /* display: grid;\\n grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr));\\n grid-gap: 1rem; */\\n .src-components-elements-Contact-Contact__contact__item--2fv2v {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n font-size: 25.6px;\\n font-size: 1.6rem;\\n }\\n .src-components-elements-Contact-Contact__contact__link--2xMDh {\\n margin: 24px 0;\\n margin: 1.5rem 0;\\n }\", \"\"]);\n// Exports\nexports.locals = {\n\t\"contact\": \"src-components-elements-Contact-Contact__contact--10XGG\",\n\t\"contact__item\": \"src-components-elements-Contact-Contact__contact__item--2fv2v\",\n\t\"contact__link\": \"src-components-elements-Contact-Contact__contact__link--2xMDh\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Copyright-Copyright__copyright--3Qwjy {\\n margin-top: 80px;\\n margin-top: 5rem;\\n}\\n\\n .src-components-elements-Copyright-Copyright__copyright--3Qwjy p {\\n margin: 0;\\n }\", \"\"]);\n// Exports\nexports.locals = {\n\t\"copyright\": \"src-components-elements-Copyright-Copyright__copyright--3Qwjy\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Footer-Footer__root--2MDwr p {\\n text-align: center;\\n }\", \"\"]);\n// Exports\nexports.locals = {\n\t\"root\": \"src-components-elements-Footer-Footer__root--2MDwr\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \":root {\\n --time-anim: 4s;\\n --delay-anim: 2s;\\n}\\n\\n.src-components-elements-Glitch-Glitch__glitch--3Zzc7 {\\n position: relative;\\n display: grid;\\n -webkit-box-pack: center;\\n -ms-flex-pack: center;\\n justify-content: center;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n margin: 0 auto;\\n min-height: 100%;\\n}\\n\\n.src-components-elements-Glitch-Glitch__glitch__area--160Ss {\\n position: relative;\\n color: var(--color-white);\\n -webkit-animation: src-components-elements-Glitch-Glitch__fadein--NwDlw 4s;\\n animation: src-components-elements-Glitch-Glitch__fadein--NwDlw 4s;\\n }\\n\\n.src-components-elements-Glitch-Glitch__glitch__title--osbkH {\\n font-family: var(--font-def-con);\\n font-family: var(--font-roboto);\\n font-weight: 900;\\n font-style: italic;\\n padding-right: 1vw;\\n font-size: 11vw;\\n text-transform: uppercase;\\n -webkit-animation-delay: 2.8s;\\n animation-delay: 2.8s;\\n -webkit-animation-delay: calc(2s + 4s*0.2);\\n animation-delay: calc(2s + 4s*0.2);\\n -webkit-animation-delay: calc(var(--delay-anim) + var(--time-anim)*0.2);\\n animation-delay: calc(var(--delay-anim) + var(--time-anim)*0.2);\\n }\\n\\n.src-components-elements-Glitch-Glitch__glitch__title--osbkH span {\\n color: var(--color-gold);\\n }\\n\\n.src-components-elements-Glitch-Glitch__glitch__text--28bjT {\\n font-family: var(--font-courier);\\n font-size: 38.4px;\\n font-size: 2.4rem;\\n padding-left: 1vw;\\n max-width: 800px;\\n max-width: 50rem;\\n font-weight: bold;\\n text-transform: lowercase;\\n -webkit-animation-delay: 3s;\\n animation-delay: 3s;\\n -webkit-animation-delay: calc(2s + 4s*0.25);\\n animation-delay: calc(2s + 4s*0.25);\\n -webkit-animation-delay: calc(var(--delay-anim) + var(--time-anim)*0.25);\\n animation-delay: calc(var(--delay-anim) + var(--time-anim)*0.25);\\n }\\n\\n.src-components-elements-Glitch-Glitch__glitch__text--28bjT span {\\n color: var(--color-gold);\\n }\\n\\n.src-components-elements-Glitch-Glitch__glitch__blink--YUQTN {\\n margin-right: 5px;\\n -webkit-animation: src-components-elements-Glitch-Glitch__blink--2CMoa 1s step-end infinite;\\n animation: src-components-elements-Glitch-Glitch__blink--2CMoa 1s step-end infinite;\\n }\\n\\n.src-components-elements-Glitch-Glitch__glitch__title--osbkH,\\n .src-components-elements-Glitch-Glitch__glitch__text--28bjT {\\n -webkit-animation-name: src-components-elements-Glitch-Glitch__glitch-text--3kTTX;\\n animation-name: src-components-elements-Glitch-Glitch__glitch-text--3kTTX;\\n -webkit-animation-duration: 4s;\\n animation-duration: 4s;\\n animation-duration: 4s;\\n -webkit-animation-duration: var(--time-anim);\\n animation-duration: var(--time-anim);\\n -webkit-animation-timing-function: linear;\\n animation-timing-function: linear;\\n -webkit-animation-iteration-count: infinite;\\n animation-iteration-count: infinite;\\n }\\n\\n.src-components-elements-Glitch-Glitch__glitch__off--JPJjB .src-components-elements-Glitch-Glitch__glitch__title--osbkH, .src-components-elements-Glitch-Glitch__glitch__off--JPJjB .src-components-elements-Glitch-Glitch__glitch__text--28bjT {\\n -webkit-animation-name: src-components-elements-Glitch-Glitch__none--22V4l;\\n animation-name: src-components-elements-Glitch-Glitch__none--22V4l;\\n }\\n\\n@-webkit-keyframes src-components-elements-Glitch-Glitch__glitch-text--3kTTX {\\n 0% {\\n -webkit-transform: translate3d(calc(-1*var(--gap-horizontal)), 0, 0) scale3d(-1, -1, 1);\\n transform: translate3d(calc(-1*var(--gap-horizontal)), 0, 0) scale3d(-1, -1, 1);\\n -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);\\n clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);\\n }\\n 2% {\\n -webkit-clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);\\n clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);\\n }\\n 4% {\\n -webkit-clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);\\n clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);\\n }\\n 5% {\\n -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);\\n clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);\\n }\\n 6% {\\n -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);\\n clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);\\n }\\n 7% {\\n -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);\\n clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);\\n }\\n 8% {\\n -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);\\n clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);\\n }\\n 9% {\\n -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);\\n clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);\\n }\\n 9.9% {\\n -webkit-transform: translate3d(calc(-1*var(--gap-horizontal)), 0, 0) scale3d(-1, -1, 1);\\n transform: translate3d(calc(-1*var(--gap-horizontal)), 0, 0) scale3d(-1, -1, 1);\\n }\\n 10%,\\n 100% {\\n -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);\\n transform: translate3d(0, 0, 0) scale3d(1, 1, 1);\\n -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);\\n clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);\\n }\\n}\\n\\n@keyframes src-components-elements-Glitch-Glitch__glitch-text--3kTTX {\\n 0% {\\n -webkit-transform: translate3d(calc(-1*var(--gap-horizontal)), 0, 0) scale3d(-1, -1, 1);\\n transform: translate3d(calc(-1*var(--gap-horizontal)), 0, 0) scale3d(-1, -1, 1);\\n -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);\\n clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);\\n }\\n 2% {\\n -webkit-clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);\\n clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);\\n }\\n 4% {\\n -webkit-clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);\\n clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);\\n }\\n 5% {\\n -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);\\n clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);\\n }\\n 6% {\\n -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);\\n clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);\\n }\\n 7% {\\n -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);\\n clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);\\n }\\n 8% {\\n -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);\\n clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);\\n }\\n 9% {\\n -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);\\n clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);\\n }\\n 9.9% {\\n -webkit-transform: translate3d(calc(-1*var(--gap-horizontal)), 0, 0) scale3d(-1, -1, 1);\\n transform: translate3d(calc(-1*var(--gap-horizontal)), 0, 0) scale3d(-1, -1, 1);\\n }\\n 10%,\\n 100% {\\n -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);\\n transform: translate3d(0, 0, 0) scale3d(1, 1, 1);\\n -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);\\n clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);\\n }\\n}\\n\\n@-webkit-keyframes src-components-elements-Glitch-Glitch__fadein--NwDlw {\\n 0% { opacity: 0; }\\n 50% { opacity: 0; }\\n 100% { opacity: 1; }\\n}\\n\\n@keyframes src-components-elements-Glitch-Glitch__fadein--NwDlw {\\n 0% { opacity: 0; }\\n 50% { opacity: 0; }\\n 100% { opacity: 1; }\\n}\\n\\n@-webkit-keyframes src-components-elements-Glitch-Glitch__blink--2CMoa {\\n from, to {\\n color: transparent;\\n }\\n 50% {\\n color: inherit;\\n }\\n}\\n\\n@keyframes src-components-elements-Glitch-Glitch__blink--2CMoa {\\n from, to {\\n color: transparent;\\n }\\n 50% {\\n color: inherit;\\n }\\n}\\n\", \"\"]);\n// Exports\nexports.locals = {\n\t\"glitch\": \"src-components-elements-Glitch-Glitch__glitch--3Zzc7\",\n\t\"glitch__area\": \"src-components-elements-Glitch-Glitch__glitch__area--160Ss\",\n\t\"fadein\": \"src-components-elements-Glitch-Glitch__fadein--NwDlw\",\n\t\"glitch__title\": \"src-components-elements-Glitch-Glitch__glitch__title--osbkH\",\n\t\"glitch__text\": \"src-components-elements-Glitch-Glitch__glitch__text--28bjT\",\n\t\"glitch__blink\": \"src-components-elements-Glitch-Glitch__glitch__blink--YUQTN\",\n\t\"blink\": \"src-components-elements-Glitch-Glitch__blink--2CMoa\",\n\t\"glitch-text\": \"src-components-elements-Glitch-Glitch__glitch-text--3kTTX\",\n\t\"glitch__off\": \"src-components-elements-Glitch-Glitch__glitch__off--JPJjB\",\n\t\"none\": \"src-components-elements-Glitch-Glitch__none--22V4l\"\n};","exports = module.exports = require(\"../../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Grid-GridItem-GridItem__root--1F4Fk {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n}\\n\\n .src-components-elements-Grid-GridItem-GridItem__root--1F4Fk span {\\n font-size: 19.2px;\\n font-size: 1.2rem;\\n font-weight: bold;\\n }\\n\\n.src-components-elements-Grid-GridItem-GridItem__icon--qfQnL {\\n font-size: 80px;\\n font-size: 5rem;\\n margin-bottom: 8px;\\n margin-bottom: .5rem;\\n}\", \"\"]);\n// Exports\nexports.locals = {\n\t\"root\": \"src-components-elements-Grid-GridItem-GridItem__root--1F4Fk\",\n\t\"icon\": \"src-components-elements-Grid-GridItem-GridItem__icon--qfQnL\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Grid-Grid__root--iPHNe {\\n margin: 48px 0;\\n margin: 3rem 0;\\n max-width: 1280px;\\n max-width: 80rem;\\n width: 100%;\\n display: grid;\\n grid-template-columns: repeat(auto-fill, minmax(8rem, 1fr));\\n grid-gap: 1rem;\\n}\\n\\n@media (min-width: 768px) {\\n .src-components-elements-Grid-Grid__root--iPHNe {\\n grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));\\n }\\n}\", \"\"]);\n// Exports\nexports.locals = {\n\t\"root\": \"src-components-elements-Grid-Grid__root--iPHNe\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Header-Header__root--37bjR {\\n width: 100%;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n font-size: 38.4px;\\n font-size: 2.4rem;\\n}\\n\\n .src-components-elements-Header-Header__root--37bjR h3 {\\n font-weight: normal;\\n margin-bottom: 16px;\\n margin-bottom: 1rem;\\n }\\n\\n .src-components-elements-Header-Header__root--37bjR hr {\\n width: 100%;\\n color: var(--color-black);\\n }\", \"\"]);\n// Exports\nexports.locals = {\n\t\"root\": \"src-components-elements-Header-Header__root--37bjR\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-containers-Canvas-Canvas__canvas--1CuCx {\\n position: absolute;\\n display: block;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n z-index: 0;\\n}\", \"\"]);\n// Exports\nexports.locals = {\n\t\"canvas\": \"src-components-containers-Canvas-Canvas__canvas--1CuCx\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Hero-Hero__hero--1PfO0 {\\n position: relative;\\n width: 100%;\\n height: 100%;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: center;\\n -ms-flex-pack: center;\\n justify-content: center;\\n}\\n\\n .src-components-elements-Hero-Hero__hero__img--3pkI6 {\\n position: absolute;\\n width: 100%;\\n height: 100%;\\n -o-object-fit: cover;\\n object-fit: cover;\\n z-index: -1;\\n }\\n\\n .src-components-elements-Hero-Hero__hero__btn--2KYXH {\\n position: absolute;\\n color: var(--color-gold);\\n background: none;\\n border: none;\\n padding: 10px 20px;\\n bottom: 30vh;\\n font-family: var(--font-courier);\\n font-size: 38.4px;\\n font-size: 2.4rem;\\n font-weight: bold;\\n -webkit-animation: src-components-elements-Hero-Hero__fadein--3b5CE 8s;\\n animation: src-components-elements-Hero-Hero__fadein--3b5CE 8s;\\n }\\n\\n .src-components-elements-Hero-Hero__hero--1PfO0.src-components-elements-Hero-Hero__has-gradient--2Z7Zp {\\n background-image: -webkit-gradient(\\n linear,\\n left top, left bottom,\\n from(rgba(245, 246, 252, 0.52)),\\n to(rgba(117, 19, 93, 0.73)));\\n background-image: -o-linear-gradient(\\n top,\\n rgba(245, 246, 252, 0.52),\\n rgba(117, 19, 93, 0.73));\\n background-image: linear-gradient(\\n to bottom,\\n rgba(245, 246, 252, 0.52),\\n rgba(117, 19, 93, 0.73));\\n }\\n\\n@-webkit-keyframes src-components-elements-Hero-Hero__fadein--3b5CE {\\n 0% { opacity: 0; }\\n 50% { opacity: 0; }\\n 100% { opacity: 1; }\\n}\\n\\n@keyframes src-components-elements-Hero-Hero__fadein--3b5CE {\\n 0% { opacity: 0; }\\n 50% { opacity: 0; }\\n 100% { opacity: 1; }\\n}\\n\", \"\"]);\n// Exports\nexports.locals = {\n\t\"hero\": \"src-components-elements-Hero-Hero__hero--1PfO0\",\n\t\"hero__img\": \"src-components-elements-Hero-Hero__hero__img--3pkI6\",\n\t\"hero__btn\": \"src-components-elements-Hero-Hero__hero__btn--2KYXH\",\n\t\"fadein\": \"src-components-elements-Hero-Hero__fadein--3b5CE\",\n\t\"has-gradient\": \"src-components-elements-Hero-Hero__has-gradient--2Z7Zp\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Link-Link__link--17ZzG {\\n color: var(--color-link);\\n text-decoration: none;\\n}\", \"\"]);\n// Exports\nexports.locals = {\n\t\"link\": \"src-components-elements-Link-Link__link--17ZzG\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Main-Main__main--2PGvn {\\n position: relative;\\n margin-top: -80px;\\n margin-top: -5rem;\\n background: var(--color-white);\\n padding: 80px 48px 48px;\\n padding: 5rem 3rem 3rem;\\n width: 100%;\\n}\", \"\"]);\n// Exports\nexports.locals = {\n\t\"main\": \"src-components-elements-Main-Main__main--2PGvn\"\n};","exports = module.exports = require(\"../../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Skills-SkillsItem-SkillsItem__root--2Bnpt {\\n -webkit-box-flex: 1;\\n -ms-flex: 1 1;\\n flex: 1 1;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n text-align: center;\\n}\\n\\n .src-components-elements-Skills-SkillsItem-SkillsItem__root--2Bnpt h4 {\\n font-size: 32px;\\n font-size: 2rem;\\n font-weight: normal;\\n }\\n\\n .src-components-elements-Skills-SkillsItem-SkillsItem__root--2Bnpt p {\\n font-size: 22.4px;\\n font-size: 1.4rem;;\\n }\", \"\"]);\n// Exports\nexports.locals = {\n\t\"root\": \"src-components-elements-Skills-SkillsItem-SkillsItem__root--2Bnpt\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Skills-Skills__skills__items--3wf_O {\\n margin-top: 48px;\\n margin-top: 3rem;\\n width: 100%;\\n display: grid;\\n grid-template-columns: repeat(auto-fill, minmax(24rem, 1fr));\\n grid-gap: 1rem;\\n }\\n \\n .src-components-elements-Skills-Skills__skills__icon--1Z9y5 {\\n margin-bottom: 24px;\\n margin-bottom: 1.5rem;\\n }\", \"\"]);\n// Exports\nexports.locals = {\n\t\"skills__items\": \"src-components-elements-Skills-Skills__skills__items--3wf_O\",\n\t\"skills__icon\": \"src-components-elements-Skills-Skills__skills__icon--1Z9y5\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Social-Social__social--X78KQ {\\n width: 100%;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: center;\\n -ms-flex-pack: center;\\n justify-content: center;\\n}\\n\\n .src-components-elements-Social-Social__social__item--2cJDy {\\n margin: 0 4px;\\n margin: 0 .25rem;\\n }\", \"\"]);\n// Exports\nexports.locals = {\n\t\"social\": \"src-components-elements-Social-Social__social--X78KQ\",\n\t\"social__item\": \"src-components-elements-Social-Social__social__item--2cJDy\"\n};","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".src-components-elements-Wrapper-Wrapper__wrapper--31K75 {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n width: 100%;\\n max-width: 1024px;\\n margin: auto;\\n}\", \"\"]);\n// Exports\nexports.locals = {\n\t\"wrapper\": \"src-components-elements-Wrapper-Wrapper__wrapper--31K75\"\n};","export const AWS_S3_LOCATION = 'https://travis-shields.s3.amazonaws.com/assets/';","import React from 'react';\nimport { Header } from '~elements';\nimport { Parallax } from 'react-parallax';\nimport { AWS_S3_LOCATION } from '~src/config';\nimport styles from './About.css';\n\nconst About = () => (\n
\n \n
\n
\n

As a results-driven technical leader, I thrive in bringing to life web applications for enterprise companies. My ability to solve problems decisively, utilizing my analytical, technical, and design expertise, makes me proficient at overseeing the entire software development lifecycle. Recognized for my strong leadership and project management capabilities, I've led cross-functional teams successfully in dynamic work environments.

\n

My proficiency lies in full stack engineering, with a specialization in implementing and managing distributed systems and microservice architectures within enterprise settings. My skill in directing high-performing engineering teams ensures that we consistently surpass project objectives.

\n

I bring an extensive background in software engineering to the table, encompassing a variety of languages, frameworks, and Agile practices. As a strategic thinker, I am adept at crafting technical roadmaps that align with organizational objectives.

\n

A commitment to professional development is at the heart of my leadership style. I believe in mentoring engineers to enhance team performance and encourage a culture of continuous learning and improvement. Additionally, I have a knack for swiftly adapting to emerging technologies, enabling me to tackle complex challenges and drive innovation.

\n

Throughout my career, my ultimate goal has always been to create and implement solutions that help businesses grow and succeed. If you're looking for a passionate, experienced technical leader, let's connect and explore how I can support your team's goals.

\n
\n \n
\n);\n\nexport default About;","import React from 'react';\nimport { func, string } from 'prop-types';\nimport cx from 'classnames';\nimport styles from './Button.css';\n\nconst Button = ({ children, className, label, onClick }) => (\n \n {children || label}\n \n);\n\nButton.propTypes = {\n className: string,\n label: string,\n onClick: func.isRequired\n};\n\nButton.defaultProps = {\n className: null,\n label: null\n};\n\nexport default Button;\n","import React from 'react';\nimport { Link } from '~elements';\nimport { MdEmail, MdPhoneIphone } from 'react-icons/md';\nimport { IoIosDocument } from 'react-icons/io';\nimport { AWS_S3_LOCATION } from '~src/config';\nimport styles from './Contact.css';\n\nconst size = '5rem';\nconst color = '#000';\nconst iconProps = {\n color,\n size\n};\nconst linkProps = {\n className: styles.contact__link,\n target: '_blank'\n};\n\nconst Contact = () => (\n
\n {/*
\n \n \n
*/}\n
\n \n \n
\n {/*
\n \n \n
*/}\n
\n);\n\nexport default Contact;","import React from 'react';\nimport styles from './Copyright.css';\n\nconst Copyright = () => (\n
\n

Copyright © 2023 - Travis Shields

\n
\n);\n\nexport default Copyright;","import React from 'react';\nimport { Contact, Copyright, Header, Social, Wrapper } from '~elements';\nimport styles from './Footer.css';\n\nconst Footer = () => (\n \n);\n\nexport default Footer;","import React from 'react';\nimport { bool } from 'prop-types';\nimport cx from 'classnames';\nimport styles from './Glitch.css';\n\nconst Glitch = ({ hasEntered }) => (\n
\n
\n

TravisShields

\n

\n >_\n Software Engineer\n

\n
\n
\n);\n\nGlitch.propTypes = {\n hasEntered: bool.isRequired\n};\n\nexport default Glitch;","import React from 'react';\nimport cx from 'classnames';\nimport styles from './GridItem.css';\n\nconst GridItem = ({ icon, label, type }) => (\n
\n \n {label}\n
\n);\n\nexport default GridItem;","import React from 'react';\nimport GridItem from './GridItem';\nimport gridItems from './grid-items.json';\nimport styles from './Grid.css';\n\nconst Grid = () => (\n
\n {gridItems.map(({ icon, label, type }) => (\n \n ))}\n
\n);\n\nexport default Grid;","import React from 'react';\nimport { string } from 'prop-types';\nimport styles from './Header.css';\n\nconst Header = ({ text }) => (\n
\n

{text}

\n
\n
\n);\n\nHeader.propTypes = {\n text: string.isRequired\n};\n\nexport default Header;","import React, { Component } from 'react';\nimport { array, number, string } from 'prop-types';\nimport styles from './Canvas.css';\n\nclass Canvas extends Component {\n constructor(props) {\n super(props);\n this.canvas = React.createRef();\n }\n\n componentDidMount () {\n this.setState({\n c: this.canvas.current,\n ctx: this.canvas.current.getContext('2d')\n }, this.updateCanvas);\n\n window.addEventListener('resize', _ => {\n clearInterval(this.intervalId);\n this.updateCanvas();\n });\n }\n\n updateCanvas = () => {\n const { c } = this.state;\n const { fontSize, dropSpeed } = this.props;\n\n c.height = window.innerHeight;\n c.width = window.innerWidth;\n\n const columns = c.width / fontSize;\n const drops = new Array(Math.floor(columns) + 1).fill(1);\n\n this.setState({ drops });\n this.intervalId = setInterval(this.draw, dropSpeed);\n }\n\n draw = () => {\n const { c, ctx, drops } = this.state;\n const { matrix, fontSize, fontColor, backgroundColor } = this.props;\n\n ctx.fillStyle = backgroundColor;\n ctx.fillRect(0, 0, c.width, c.height);\n\n ctx.fillStyle = fontColor;\n ctx.font = `${fontSize}px arial`;\n\n drops.forEach((_, i) => {\n const text = matrix[ Math.floor( Math.random() * matrix.length ) ];\n ctx.fillText(text, i * fontSize, drops[i] * fontSize);\n if (drops[i] * fontSize > c.height && Math.random() > 0.975) drops[i] = 0;\n drops[i]++;\n });\n }\n\n render () {\n return \n }\n}\n\nCanvas.propTypes = {\n matrix: array,\n fontSize: number,\n dropSpeed: number,\n fontColor: string,\n backgroundColor: string\n}\n\nCanvas.defaultProps = {\n matrix: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ123456789@#$%^&*()*&^%'.split(''),\n fontSize: 10,\n dropSpeed: 35,\n fontColor: 'rgba(0, 255, 0, 0.5)',\n backgroundColor: 'rgba(0, 0, 0, 0.007)'\n};\n\nexport default Canvas;\n","import React from 'react';\nimport { bool, func } from 'prop-types';\nimport cx from 'classnames';\nimport { Button, Glitch } from '~elements';\nimport { Canvas } from '~containers';\nimport { AWS_S3_LOCATION } from '../../../config';\nimport styles from './Hero.css';\n\nconst Hero = ({ hasEntered, onEnter }) => (\n
\n \n {!hasEntered && }\n \n {!hasEntered && \n onEnter()}\n />}\n
\n);\n\nHero.propTypes = {\n hasEntered: bool.isRequired,\n onEnter: func.isRequired\n};\n\nexport default Hero;\n","import React from 'react';\nimport { string } from 'prop-types';\nimport cx from 'classnames';\nimport styles from './Link.css';\n\nconst Link = ({ children, className, label, src, target }) => (\n \n {children || label}\n \n);\n\nLink.propTypes = {\n className: string,\n label: string,\n src: string,\n target: string\n};\n\nLink.defaultProps = {\n className: null,\n label: null,\n src: '#',\n target: null,\n};\n\nexport default Link;\n","import React from 'react';\nimport { About, Footer, Skills } from '~elements';\nimport styles from './Main.css';\n\nconst Main = () => (\n
\n \n \n
\n
\n);\n\nexport default Main;\n","import React from 'react';\nimport styles from './SkillsItem.css';\n\nconst SkillsItem = ({ children, icon, label }) => (\n
\n {icon}\n

{label}

\n

{children}

\n
\n);\n\nexport default SkillsItem;","import React from 'react';\nimport { Grid, Header, Wrapper } from '~elements';\nimport SkillsItem from './SkillsItem';\nimport styles from './Skills.css';\nimport { FaCubes, FaDatabase, FaStopwatch, FaTerminal } from 'react-icons/fa';\n\nconst size = '5rem';\nconst color = '#01579B';\nconst iconProps = {\n className: styles.skills__icon,\n color,\n size\n};\n\nconst Skills = () => (\n
\n \n
\n
\n }\n >\n Leveraging industry-leading frameworks and environments, such as React, Redux, Node, Express, and Ruby on Rails, to build robust and efficient applications.\n \n }\n >\n Implementing user authentication protocols and managing various databases, including MongoDB, MySQL, PostgreSQL, and Redis, to ensure secure and efficient data storage.\n \n }\n >\n Working within Agile methodologies to deliver rapid, incremental value, utilizing Git/Github for version control, and employing AWS for seamless deployment and scalability.\n \n }\n >\n Staying abreast of the latest industry trends, developing skills in languages such as JavaScript, Ruby, Python, and PHP to deliver modern and efficient solutions.\n \n
\n \n \n
\n);\n\nexport default Skills;","import React from 'react';\nimport Link from '../Link/Link';\nimport styles from './Social.css';\nimport {\n FaGithubSquare,\n FaLinkedin,\n FaStackOverflow,\n FaTwitterSquare\n} from 'react-icons/fa';\n\nconst size = '4.5rem';\nconst color = '#01579B';\nconst iconProps = {\n color,\n size\n};\nconst linkProps = {\n className: styles.social__item,\n target: '_blank'\n};\n\nconst Social = () => (\n
\n \n \n \n \n \n \n {/* \n \n \n \n \n */}\n
\n);\n\nexport default Social;","import React from 'react';\nimport { string } from 'prop-types';\nimport cx from 'classnames';\nimport styles from './Wrapper.css';\n\nconst Wrapper = ({ children, className }) => (\n
\n {children}\n
\n);\n\nWrapper.propTypes = {\n className: string\n};\n\nWrapper.defaultProps = {\n className: null\n};\n\nexport default Wrapper;\n","import React, { useState } from 'react';\nimport { Hero, Main } from '~elements';\n\nconst App = () => {\n const [hasEntered, setHasEntered] = useState(false);\n\n return (\n <>\n setHasEntered(true)}\n />\n {hasEntered &&
}\n \n );\n};\n\nexport default App;\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read http://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit http://bit.ly/CRA-PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See http://bit.ly/CRA-PWA.'\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister();\n });\n }\n}\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport App from './App';\nimport * as serviceWorker from './serviceWorker';\n\nReactDOM.render(, document.getElementById('root'));\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: http://bit.ly/CRA-PWA\nserviceWorker.unregister();\n"],"sourceRoot":""}