-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
110 lines (110 loc) · 13.4 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
<!DOCTYPE html>
<html lang="en" style="background-color: #181818;">
<head>
<title>Damon Turcotte</title>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="author" content="Damon Turcotte" />
<meta name="keywords" content="Damon Turcotte Portfolio Developer Application Web Design Web Development Freelance Personal Lethbridge Alberta" />
<meta name="description" content="Lethbridge-based full stack web developer proficient in building software & systems on a foundation of Python, JavaScript & Linux.">
<link rel="icon" type="image/svg+xml" href="/src/icons/chron-power.svg" />
<meta property="og:title" content="Damon Turcotte | Web Developer" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://turcotte.tech" />
<meta property="og:image" content="https://turcotte.tech/assets/turcotte-f315e15f.png" />
<meta property="og:image:type" content="image/png" />
<meta property="og:image:width" content="1400" />
<meta property="og:image:height" content="700" />
<meta property="og:image:alt" content="Turcotte Technology Logo" />
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@damon_turcotte">
<meta name="twitter:creator" content="@damon_turcotte">
<meta name="twitter:title" content="Web Developer | Web Applications & Software">
<meta name="twitter:description" content="Full-stack web developer with experience in building end-to-end web applications and integrating them into networks.">
<meta name="twitter:image" content="https://turcotte.tech/assets/turcotte-f315e15f.png">
<link rel="preconnect" href="https://fonts.googleapis.com" crossorigin>
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=block" rel="stylesheet" as="style" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Readex+Pro:wght@200;300;400;500;600;700&display=block" rel="stylesheet" as="style" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Outfit:wght@100;200;300;400;500;600;700;800;900&display=block" rel="stylesheet" as="style" crossorigin>
<style>
svg { height: 0; }
html { overflow: -moz-scrollbars-vertical; overflow-y: scroll;}
::-webkit-scrollbar { background-color: transparent; width: 0.5rem; height: 0.5rem; }
</style>
</head>
<body style="display: none;">
<div id="intro-div" style="background-color: #181818; position: fixed; top: 0; bottom: 0; left: 0; right: 0; z-index: 100000; display: flex; justify-content: center; align-items: center;">
<svg id="intro-svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 512 115" xml:space="preserve" style="height: auto !important; width: 800px !important; max-width: 90%; fill: #e1e1e1; stroke: #e1e1e1; filter: opacity(0);">
<g transform="matrix(1.47 0 0 1.47 34.56 60.9)" id="path527218" >
<path style="stroke-width: 1.6; stroke-dasharray: none; stroke-linecap: butt; stroke-dashoffset: 0; stroke-linejoin: miter; stroke-miterlimit: 2; fill-rule: nonzero; opacity: 1;" vector-effect="non-scaling-stroke" transform=" translate(-341.5, 25.2)" d="M 322.38575 -50.4 L 360.61775 -50.4 L 360.61775 -45.864 L 343.98575 -45.864 L 343.98575 0 L 339.01775 0 L 339.01775 -45.864 L 322.38575 -45.864 z" stroke-linecap="round" />
</g>
<g transform="matrix(1.47 0 0 1.47 96.13 61.22)" id="path527220" >
<path style="stroke-width: 1.6; stroke-dasharray: none; stroke-linecap: butt; stroke-dashoffset: 0; stroke-linejoin: miter; stroke-miterlimit: 2; fill-rule: nonzero; opacity: 1;" vector-effect="non-scaling-stroke" transform=" translate(-389, 24.98)" d="M 373.12662 -20.448 Q 373.12662 -12.672 377.30262 -8.352 Q 381.55063 -4.032 389.03863 -4.032 Q 396.52662000000004 -4.032 400.70262 -8.352 Q 404.87862 -12.672 404.87862 -20.448 L 404.87862 -50.4 L 409.84663 -50.4 L 409.84663 -20.447999999999997 Q 409.84663 -10.655999999999997 404.30262 -5.1119999999999965 Q 398.83062 0.43200000000000305 389.03863 0.43200000000000305 Q 379.24662 0.43200000000000305 373.70262 -5.1119999999999965 Q 368.15862000000004 -10.655999999999995 368.15862000000004 -20.447999999999997 L 368.15862000000004 -50.4 L 373.12662000000006 -50.4 z" stroke-linecap="round" />
</g>
<g transform="matrix(1.47 0 0 1.47 168.79 60.95)" id="path527222" >
<path style="stroke-width: 1.6; stroke-dasharray: none; stroke-linecap: butt; stroke-dashoffset: 0; stroke-linejoin: miter; stroke-miterlimit: 2; fill-rule: nonzero; opacity: 1;" vector-effect="non-scaling-stroke" transform=" translate(-444.05, 25.16)" d="M 457.76825 0 L 446.89625 -16.416 Q 444.59225000000004 -16.272000000000002 443.36825 -16.272000000000002 L 429.54425 -16.272000000000002 L 429.54425 0 L 424.57624999999996 0 L 424.57624999999996 -50.328 L 443.36825 -50.328 Q 452.80025 -50.328 457.91225 -45.936 Q 463.09625 -41.616 463.09625 -33.624 Q 463.09625 -27.360000000000003 460.07225 -23.184000000000005 Q 457.04825 -19.008000000000003 451.43225 -17.352000000000004 L 463.52825 0 Z M 443.36825000000005 -20.736 Q 450.56825000000003 -20.736 454.45625000000007 -23.976 Q 458.34425000000005 -27.288 458.34425000000005 -33.48 Q 458.34425000000005 -39.528 454.45625000000007 -42.696 Q 450.5682500000001 -45.864 443.36825000000005 -45.864 L 429.54425000000003 -45.864 L 429.54425000000003 -20.735999999999997 z" stroke-linecap="round" />
</g>
<g transform="matrix(1.47 0 0 1.47 233.9 60.95)" id="path527224" >
<path style="stroke-width: 1.6; stroke-dasharray: none; stroke-linecap: butt; stroke-dashoffset: 0; stroke-linejoin: miter; stroke-miterlimit: 2; fill-rule: nonzero; opacity: 1;" vector-effect="non-scaling-stroke" transform=" translate(-493.96, 25.16)" d="M 513.1835 -40.104 Q 510.1595 -43.056 506.1995 -44.711999999999996 Q 502.2395 -46.367999999999995 497.9915 -46.367999999999995 Q 492.1595 -46.367999999999995 487.26349999999996 -43.559999999999995 Q 482.43949999999995 -40.751999999999995 479.55949999999996 -35.855999999999995 Q 476.75149999999996 -31.031999999999996 476.75149999999996 -25.271999999999995 Q 476.75149999999996 -19.511999999999993 479.55949999999996 -14.687999999999995 Q 482.43949999999995 -9.863999999999995 487.26349999999996 -6.9839999999999955 Q 492.1595 -4.175999999999996 497.9915 -4.175999999999996 Q 502.16749999999996 -4.175999999999996 506.1275 -5.759999999999996 Q 510.0875 -7.415999999999996 513.1835 -10.295999999999996 L 516.2075 -7.055999999999996 Q 512.4635 -3.5999999999999956 507.6395 -1.5839999999999952 Q 502.8155 0.4320000000000048 497.7755 0.4320000000000048 Q 490.64750000000004 0.4320000000000048 484.67150000000004 -3.023999999999995 Q 478.69550000000004 -6.479999999999995 475.1675 -12.383999999999995 Q 471.7115 -18.287999999999997 471.7115 -25.271999999999995 Q 471.7115 -32.25599999999999 475.2395 -38.087999999999994 Q 478.76750000000004 -43.919999999999995 484.74350000000004 -47.303999999999995 Q 490.79150000000004 -50.76 497.9195 -50.76 Q 503.03150000000005 -50.76 507.7835 -48.815999999999995 Q 512.5355 -46.943999999999996 516.1355 -43.559999999999995 z" stroke-linecap="round" />
</g>
<g transform="matrix(1.47 0 0 1.47 371.76 60.9)" id="path527228" >
<path style="stroke-width: 1.6; stroke-dasharray: none; stroke-linecap: butt; stroke-dashoffset: 0; stroke-linejoin: miter; stroke-miterlimit: 2; fill-rule: nonzero; opacity: 1;" vector-effect="non-scaling-stroke" transform=" translate(-595.89, 25.2)" d="M 576.77638 -50.4 L 615.00837 -50.4 L 615.00837 -45.864 L 598.37638 -45.864 L 598.37638 0 L 593.40837 0 L 593.40837 -45.864 L 576.77638 -45.864 z" stroke-linecap="round" />
</g>
<g transform="matrix(1.47 0 0 1.47 422.01 60.9)" id="path527230" >
<path style="stroke-width: 1.6; stroke-dasharray: none; stroke-linecap: butt; stroke-dashoffset: 0; stroke-linejoin: miter; stroke-miterlimit: 2; fill-rule: nonzero; opacity: 1;" vector-effect="non-scaling-stroke" transform=" translate(-635.69, 25.2)" d="M 616.57325 -50.4 L 654.80525 -50.4 L 654.80525 -45.864 L 638.17325 -45.864 L 638.17325 0 L 633.2052500000001 0 L 633.2052500000001 -45.864 L 616.5732500000001 -45.864 z" stroke-linecap="round" />
</g>
<g transform="matrix(1.47 0 0 1.47 480.09 60.95)" id="path527232" >
<path style="stroke-width: 1.6; stroke-dasharray: none; stroke-linecap: butt; stroke-dashoffset: 0; stroke-linejoin: miter; stroke-miterlimit: 2; fill-rule: nonzero; opacity: 1;" vector-effect="non-scaling-stroke" transform=" translate(-680.81, 25.16)" d="M 663.49812 -50.328 L 697.19412 -50.328 L 697.19412 -45.864000000000004 L 668.46613 -45.864000000000004 L 668.46613 -27.864000000000004 L 694.17012 -27.864000000000004 L 694.17012 -23.400000000000006 L 668.46613 -23.400000000000006 L 668.46613 -4.464000000000006 L 698.13013 -4.464000000000006 L 698.13013 0 L 663.49812 0 z" stroke-linecap="round" />
</g>
<g transform="matrix(0.09 0 0 0.09 306.6 57.17) scale(1.05)" >
<g vector-effect="non-scaling-stroke" >
<g transform="matrix(1 0 0 1 0 45.45)" >
<path style="stroke: rgb(201,0,49); stroke-width: 0.009525; stroke-dasharray: none; stroke-linecap: butt; stroke-dashoffset: 0; stroke-linejoin: miter; stroke-miterlimit: 4; fill: rgb(201,0,49); fill-rule: nonzero; opacity: 1;" vector-effect="non-scaling-stroke" transform=" translate(-476.25, -521.7)" d="M 162.45 822.5 C 203.14999999999998 863.199 250.64999999999998 895.199 303.45 917.6 C 358.25 940.801 416.349 952.5 476.25 952.5 C 536.1510000000001 952.5 594.25 940.801 649.05 917.6 C 701.9499999999999 895.2 749.3499999999999 863.301 790.05 822.5 C 830.75 781.801 862.75 734.301 885.151 681.5 C 908.3499999999999 626.699 920.05 568.6 920.05 508.699 C 920.05 448.8 908.3499999999999 390.699 885.151 335.9 C 862.751 283 830.8499999999999 235.59999999999997 790.05 194.89999999999998 C 749.3499999999999 154.2 701.8499999999999 122.19999999999997 649.05 99.79999999999998 C 641.55 96.59999999999998 633.9499999999999 93.69999999999999 626.25 90.89999999999998 L 626.25 244.39999999999998 C 649.65 257.7 671.45 274.29999999999995 691.05 293.9 C 748.4499999999999 351.29999999999995 780.05 427.59999999999997 780.05 508.69899999999996 C 780.05 589.8009999999999 748.4499999999999 666.0989999999999 691.05 723.5 C 633.651 780.9 557.3499999999999 812.5 476.24999999999994 812.5 C 395.15 812.5 318.8499999999999 780.9 261.44999999999993 723.5 C 204.04999999999993 666.1 172.44999999999993 589.8009999999999 172.44999999999993 508.699 C 172.44999999999993 427.6 204.04999999999993 351.3 261.44999999999993 293.9 C 281.04999999999995 274.29999999999995 302.84899999999993 257.7 326.24999999999994 244.39999999999998 L 326.24999999999994 90.9 C 318.6499999999999 93.7 311.04999999999995 96.60000000000001 303.44999999999993 99.80000000000001 C 250.54999999999993 122.20000000000002 203.14999999999992 154.10000000000002 162.44999999999993 194.9 C 121.74999999999993 235.60000000000002 89.74999999999993 283.1 67.34999999999994 335.9 C 44.149999999999935 390.7 32.44999999999994 448.79999999999995 32.44999999999994 508.69899999999996 C 32.44999999999994 568.5989999999999 44.149999999999935 626.699 67.34999999999994 681.5 C 89.75 734.301 121.75 781.801 162.45 822.5 z" stroke-linecap="round" />
</g>
<g transform="matrix(1 0 0 1 0 -220.35)" >
<path style="stroke: rgb(201,0,49); stroke-width: 0.009525; stroke-dasharray: none; stroke-linecap: butt; stroke-dashoffset: 0; stroke-linejoin: miter; stroke-miterlimit: 4; fill: rgb(201,0,49); fill-rule: nonzero; opacity: 1;" vector-effect="non-scaling-stroke" transform=" translate(-476.25, -255.9)" d="M 476.25 511.801 C 514.95 511.801 546.25 480.5 546.25 441.801 L 546.25 213 L 546.25 70.4 L 546.25 70 C 546.25 31.299999999999997 514.95 0 476.25 0 C 437.54999999999995 0 406.25 31.3 406.25 70 L 406.25 70.4 L 406.25 213 L 406.25 441.9 C 406.25 480.5 437.55 511.801 476.25 511.801 z" stroke-linecap="round" />
</g>
</g>
</g>
</svg>
</div>
<div id="root"></div>
<script>
window.onload=document.body.style.display="block";
let introDiv = document.getElementById("intro-div");
let introPath = location.href.split("/")[3];
if (introPath.length == 0 || introPath == "portfolio" || introPath == "about" || introPath == "blog") {
let introSVG = document.getElementById("intro-svg");
let o = 0;
let s = 0;
let e = 1;
let color = 200;
let intro = setInterval(() => {
if (o < 1) {
o += 0.05;
if (o >= 0.2) {
s += 1 + s/20;
if (color < 255) {
color += 5;
}
}
introSVG.style.webkitFilter = `drop-shadow(0 0 ${s}px white) opacity(${o})`;
} else if (s > 0) {
s -= s / 20 + 0.1;
introSVG.style.webkitFilter = `drop-shadow(0 0 ${s}px white)`;
} else if (e > 0) {
e -= 0.05;
introDiv.style.webkitFilter = `opacity(${e})`;
} else {
introDiv.remove();
clearInterval(intro);
}
}, 30)
} else {
introDiv.remove();
}
</script>
<script type="module" src="/src/index.jsx"></script>
</body>
</html>