PageSourceSearch

https://hamdan.app/

html hamdan.app collected 2026-10-05 02:39:23 UTC 29,691 bytes, 175 lines download raw bytes

1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><meta name="generator" content="Gatsby 3.15.0"/><title data-react-helmet="true">Hamdan Mohammad</title><meta data-react-helmet="true" name="description" content="Hamdan Mohammad is a software engineer specializing in building backends for exceptional digital products."/><meta data-react-helmet="true" name="image" content="https://hamdan.app/og.png"/><meta data-react-helmet="true" property="og:title" content="Hamdan Mohammad"/><meta data-react-helmet="true" property="og:description" content="Hamdan Mohammad is a software engineer specializing in building backends for exceptional digital products."/><meta data-react-helmet="true" property="og:image" content="https://hamdan.app/og.png"/><meta data-react-helmet="true" property="og:url" content="https://hamdan.app/"/><meta data-react-helmet="true" property="og:type" content="website"/><meta data-react-helmet="true" name="twitter:card" content="summary_large_image"/><meta data-react-helmet="true" name="twitter:creator" content="@hxmdxn_x"/><meta data-react-helmet="true" name="twitter:title" content="Hamdan Mohammad"/><meta data-react-helmet="true" name="twitter:description" content="Hamdan Mohammad is a software engineer specializing in building backends for exceptional digital products."/><meta data-react-helmet="true" name="twitter:image" content="https://hamdan.app/og.png"/><meta data-react-helmet="true" name="google-site-verification" content="DCl7VAf9tcz6eD9gb67NfkNnJ1PKRNcg8qQiwpbx9Lk"/><style data-styled="" data-styled-version="5.3.11">@font-face{font-family:'Calibre';src:url(/static/Calibre-Regular-b0d4cbb1201155ddccc21d1b8059a670.woff2) format('woff2'), url(/static/Calibre-Regular-98526589fa32315c552129869e08427e.woff) format('woff');font-weight:400;font-style:normal;font-display:auto;}/*!sc*/
2@font-face{font-family:'Calibre';src:url(/static/Calibre-Medium-568dce56f869a519a015d3b69443b067.woff2) format('woff2'), url(/static/Calibre-Medium-46693d9b57a6b8a657b5393258f6e899.woff) format('woff');font-weight:500;font-style:normal;font-display:auto;}/*!sc*/
3@font-face{font-family:'Calibre';src:url(/static/Calibre-Semibold-94fc73852539d6733dc0d80252c5e3fb.woff2) format('woff2'), url(/static/Calibre-Semibold-6972688a249bd53a6c7e69a89e50cdd6.woff) format('woff');font-weight:600;font-style:normal;font-display:auto;}/*!sc*/
4@font-face{font-family:'Calibre';src:url(/static/Calibre-RegularItalic-5f875bd7b669f1e11b622d4d6d71b5b0.woff2) format('woff2'), url(/static/Calibre-RegularItalic-57371b9e514dbbe9da31dad1a298de2d.woff) format('woff');font-weight:400;font-style:italic;font-display:auto;}/*!sc*/
5@font-face{font-family:'Calibre';src:url(/static/Calibre-MediumItalic-7aa140573fd9ed30ae01e117c418b12b.woff2) format('woff2'), url(/static/Calibre-MediumItalic-aa285f95879aa2c2d26b228d5e422da6.woff) format('woff');font-weight:500;font-style:italic;font-display:auto;}/*!sc*/
6@font-face{font-family:'Calibre';src:url(/static/Calibre-SemiboldItalic-5f04bffe7ce988169806d66e417a966a.woff2) format('woff2'), url(/static/Calibre-SemiboldItalic-ad4bd95abee7bca1bdd6a93398f84a04.woff) format('woff');font-weight:600;font-style:italic;font-display:auto;}/*!sc*/
7@font-face{font-family:'SF Mono';src:url(/static/SFMono-Regular-8799e6387338d58f2f137df821c86eb4.woff2) format('woff2'), url(/static/SFMono-Regular-e36fa5257c93fc7711eae342068f9eda.woff) format('woff');font-weight:400;font-style:normal;font-display:auto;}/*!sc*/
8@font-face{font-family:'SF Mono';src:url(/static/SFMono-Semibold-6e6f6c93f4bdf9cbd090c60e97a017e2.woff2) format('woff2'), url(/static/SFMono-Semibold-ee054046915420413d0068fb1e7105c3.woff) format('woff');font-weight:600;font-style:normal;font-display:auto;}/*!sc*/
9@font-face{font-family:'SF Mono';src:url(/static/SFMono-RegularItalic-a596917f86217b40000ff1b894cd0e52.woff2) format('woff2'), url(/static/SFMono-RegularItalic-3a20a00dfdeb4ba538473fa7bf625cbd.woff) format('woff');font-weight:400;font-style:italic;font-display:auto;}
9/*!sc*/
10@font-face{font-family:'SF Mono';src:url(/static/SFMono-SemiboldItalic-9a0ae6382e12c5e28a7342ffb41cf4da.woff2) format('woff2'), url(/static/SFMono-SemiboldItalic-10eb596e904940cd1aebb2cc6286015c.woff) format('woff');font-weight:600;font-style:italic;font-display:auto;}/*!sc*/
11:root{--dark-navy:#020c1b;--navy:#0a192f;--light-navy:#112240;--lightest-navy:#233554;--navy-shadow:rgba(2,12,27,0.7);--dark-slate:#495670;--slate:#8892b0;--light-slate:#a8b2d1;--lightest-slate:#ccd6f6;--white:#e6f1ff;--green:#64ffda;--green-tint:rgba(100,255,218,0.1);--pink:#f57dff;--blue:#57cbff;--dark-purple:#1a0b2e;--gold:#ffd700;--dark-charcoal:#121212;--coral:#ff7f50;--deep-teal:#003b49;--peach:#ffb6a3;--dark-gray:#1c1c1c;--electric-blue:#00b2ff;--deep-burgundy:#2d0c10;--mint:#98ff98;--font-sans:'Calibre','Inter','San Francisco','SF Pro Text',-apple-system,system-ui,sans-serif;--font-mono:'SF Mono','Fira Code','Fira Mono','Roboto Mono',monospace;--fz-xxs:12px;--fz-xs:13px;--fz-sm:14px;--fz-md:16px;--fz-lg:18px;--fz-xl:20px;--fz-xxl:22px;--fz-heading:32px;--border-radius:4px;--nav-height:100px;--nav-scroll-height:70px;--tab-height:42px;--tab-width:120px;--easing:cubic-bezier(0.645,0.045,0.355,1);--transition:all 0.25s cubic-bezier(0.645,0.045,0.355,1);--hamburger-width:30px;--ham-before:top 0.1s ease-in 0.25s,opacity 0.1s ease-in;--ham-before-active:top 0.1s ease-out,opacity 0.1s ease-out 0.12s;--ham-after:bottom 0.1s ease-in 0.25s,transform 0.22s cubic-bezier(0.55,0.055,0.675,0.19);--ham-after-active:bottom 0.1s ease-out,transform 0.22s cubic-bezier(0.215,0.61,0.355,1) 0.12s;}/*!sc*/
12html{box-sizing:border-box;width:100%;-webkit-scroll-behavior:smooth;-moz-scroll-behavior:smooth;-ms-scroll-behavior:smooth;scroll-behavior:smooth;}/*!sc*/
13*,*:before,*:after{box-sizing:inherit;}/*!sc*/
14::selection{background-color:var(--lightest-navy);color:var(--lightest-slate);}/*!sc*/
15:focus{outline:2px dashed var(--green);outline-offset:3px;}/*!sc*/
16:focus:not(:focus-visible){outline:none;outline-offset:0px;}/*!sc*/
17:focus-visible{outline:2px dashed var(--green);outline-offset:3px;}/*!sc*/
18html{-webkit-scrollbar-width:thin;-moz-scrollbar-width:thin;-ms-scrollbar-width:thin;scrollbar-width:thin;-webkit-scrollbar-color:var(--dark-slate) var(--navy);-moz-scrollbar-color:var(--dark-slate) var(--navy);-ms-scrollbar-color:var(--dark-slate) var(--navy);scrollbar-color:var(--dark-slate) var(--navy);}/*!sc*/
19::-webkit-scrollbar{width:12px;}/*!sc*/
20::-webkit-scrollbar-track{background:var(--navy);}/*!sc*/
21::-webkit-scrollbar-thumb{background-color:var(--dark-slate);border:3px solid var(--navy);border-radius:10px;}/*!sc*/
22body{margin:0;width:100%;min-height:100%;overflow-x:hidden;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--navy);color:var(--slate);font-family:var(--font-sans);font-size:var(--fz-xl);line-height:1.3;}/*!sc*/
23@media (max-width:480px){body{font-size:var(--fz-lg);}}/*!sc*/
24body.hidden{overflow:hidden;}/*!sc*/
25body.blur{overflow:hidden;}/*!sc*/
26body.blur header{background-color:transparent;}/*!sc*/
27body.blur #content > *{-webkit-filter:blur(5px) brightness(0.7);filter:blur(5px) brightness(0.7);-webkit-transition:var(--transition);transition:var(--transition);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}/*!sc*/
28#root{min-height:100vh;display:grid;grid-template-rows:1fr auto;grid-template-columns:100%;}/*!sc*/
29main{margin:0 auto;width:100%;max-width:1600px;min-height:100vh;padding:200px 150px;}/*!sc*/
30@media (max-width:1080px){main{padding:200px 100px;}}/*!sc*/
31@media (max-width:768px){main{padding:150px 50px;}}/*!sc*/
32@media (max-width:480px){main{padding:125px 25px;}}/*!sc*/
33main.fillHeight{padding:0 150px;}/*!sc*/
34@media (max-width:1080px){main.fillHeight{padding:0 100px;}}/*!sc*/
35@media (max-width:768px){main.fillHeight{padding:0 50px;}}/*!sc*/
36@media (max-width:480px){main.fillHeight{padding:0 25px;}}/*!sc*/
37section{margin:0 auto;padding:100px 0;max-width:1000px;}/*!sc*/
38@media (max-width:768px){section{padding:80px 0;}}/*!sc*/
39@media (max-width:480px){section{padding:60px 0;}}/*!sc*/
40h1,h2,h3,h4,h5,h6{margin:0 0 10px 0;font-weight:600;color:var(--lightest-slate);line-height:1.1;}/*!sc*/
41.big-heading{margin:0;font-size:clamp(40px,8vw,80px);}/*!sc*/
42.medium-heading{margin:0;font-size:clamp(40px,8vw,60px);}/*!sc*/
43.numbered-heading{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;margin:10px 0 40px;width:100%;font-size:clamp(26px,5vw,var(--fz-heading));white-space:nowrap;}/*!sc*/
44.numbered-heading:before{position:relative;bottom:4px;counter-increment:section;content:'0' counter(section) '.';margin-right:10px;color:var(--green);font-family:var(--font-mono);font-size:clamp(var(--fz-md),3vw,var(--fz-xl));font-weight:400;}/*!sc*/
45@media (max-width:480px){.numbered-heading:before{margin-bottom:-3px;margin-right:5px;}}/*!sc*/
46.numbered-heading:after{content:'';display:block;position:relative;top:-5px;width:300px;height:1px;margin-left:20px;background-color:var(--lightest-navy);}/*!sc*/
47@media (max-width:1080px){.numbered-heading:after{width:200px;}}/*!sc*/
48@media (max-width:768px){.numbered-heading:after{width:100%;}}/*!sc*/
49@media (max-width:600px){.numbered-heading:after{margin-left:10px;}}/*!sc*/
50img,svg,.gatsby-image-wrapper{width:100%;max-width:100%;vertical-align:middle;}/*!sc*/
51img[alt=""],img:not([alt]){-webkit-filter:blur(5px);filter:blur(5px);}/*!sc*/
52svg{width:100%;height:100%;fill:currentColor;vertical-align:middle;}/*!sc*/
53svg.feather{fill:none;}/*!sc*/
54a{display:inline-block;-webkit-text-decoration:none;text-decoration:none;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;color:inherit;position:relative;-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
55a:hover,a:focus{color:var(--green);}/*!sc*/
56a.inline-link{display:inline-block;position:relative;color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
57a.inline-link:hover,a.inline-link:focus-visible{color:var(--green);outline:0;}/*!sc*/
58a.inline-link:hover:after,a.inline-link:focus-visible:after{width:100%;}/*!sc*/
59a.inline-link:hover > *,a.inline-link:focus-visible > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
60a.inline-link:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);opacity:0.5;}/*!sc*/
61@media (prefers-reduced-motion:no-preference){a.inline-link:after{-webkit-transition:var(--transition);transition:var(--transition);}}/*!sc*/
62button{cursor:pointer;border:0;border-radius:0;}/*!sc*/
63input,textarea{border-radius:0;outline:0;}/*!sc*/
64input:focus,textarea:focus{outline:0;}/*!sc*/
65input:focus::-webkit-input-placeholder,textarea:focus::-webkit-input-placeholder,input:active::-webkit-input-placeholder,textarea:active::-webkit-input-placeholder{opacity:0.5;}/*!sc*/
66input:focus::-moz-placeholder,textarea:focus::-moz-placeholder,input:active::-moz-placeholder,textarea:active::-moz-placeholder{opacity:0.5;}/*!sc*/
67input:focus:-ms-input-placeholder,textarea:focus:-ms-input-placeholder,input:active:-ms-input-placeholder,textarea:active:-ms-input-placeholder{opacity:0.5;}/*!sc*/
68input:focus::placeholder,textarea:focus::placeholder,input:active::placeholder,textarea:active::placeholder{opacity:0.5;}/*!sc*/
69p{margin:0 0 15px 0;}/*!sc*/
70p:last-child,p:last-of-type{margin:0;}/*!sc*/
71p > a{display:inline-block;position:relative;color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
72p > a:hover,p > a:focus-visible{color:var(--green);outline:0;}/*!sc*/
73p > a:hover:after,p > a:focus-visible:after{width:100%;}/*!sc*/
74p > a:hover > *,p > a:focus-visible > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
75p > a:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);opacity:0.5;}/*!sc*/
76@media (prefers-reduced-motion:no-preference){p > a:after{-webkit-transition:var(--transition);transition:var(--transition);}}/*!sc*/
77p > code{background-color:var(--light-navy);color:var(--white);font-size:var(--fz-sm);border-radius:var(--border-radius);padding:0.3em 0.5em;}/*!sc*/
78ul.fancy-list{padding:0;margin:0;list-style:none;font-size:var(--fz-lg);}/*!sc*/
79ul.fancy-list li{position:relative;padding-left:30px;margin-bottom:10px;}/*!sc*/
80ul.fancy-list li:before{content:'▹';position:absolute;left:0;color:var(--green);}/*!sc*/
81blockquote{border-left-color:var(--green);border-left-style:solid;border-left-width:1px;margin-left:0px;margin-right:0px;padding-left:1.5rem;}/*!sc*/
82blockquote p{font-style:italic;font-size:24px;}/*!sc*/
83hr{background-color:var(--lightest-navy);height:1px;border-width:0px;border-style:initial;border-color:initial;border-image:initial;margin:1rem;}/*!sc*/
84code{font-family:var(--font-mono);font-size:var(--fz-md);}/*!sc*/
85.skip-to-content{color:var(--green);background-color:transparent;border:1px solid var(--green);border-radius:var(--border-radius);font-size:var(--fz-xs);font-family:var(--font-mono);line-height:1;-webkit-text-decoration:none;text-decoration:none;padding:1.25rem 1.75rem;-webkit-transition:var(--transition);transition:var(--transition);position:absolute;top:auto;left:-999px;width:1px;height:1px;overflow:hidden;z-index:-99;}/*!sc*/
86.skip-to-content:hover,.skip-to-content:focus-visible{outline:none;box-shadow:4px 4px 0 0 var(--green);-webkit-transform:translate(-5px,-5px);-ms-transform:translate(-5px,-5px);transform:translate(-5px,-5px);}/*!sc*/
87.skip-to-content:after{display:none !important;}/*!sc*/
88.skip-to-content:hover,.skip-to-content:focus{background-color:var(--green);color:var(--navy);top:0;left:0;width:auto;height:auto;overflow:auto;z-index:99;box-shadow:none;-webkit-transform:none;-ms-transform:none;transform:none;}/*!sc*/
89#logo{color:var(--green);}/*!sc*/
90.overline{color:var(--green);font-family:var(--font-mono);font-size:var(--fz-md);font-weight:400;}/*!sc*/
91.subtitle{color:var(--green);margin:0 0 20px 0;font-size:var(--fz-md);font-family:var(--font-mono);font-weight:400;line-height:1.5;}/*!sc*/
92@media (max-width:1080px){.subtitle{font-size:var(--fz-sm);}}/*!sc*/
93@media (max-width:768px){.subtitle{font-size:var(--fz-xs);}}/*!sc*/
94.subtitle a{display:inline-block;position:relative;color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);line-height:1.5;}/*!sc*/
95.subtitle a:hover,.subtitle a:focus-visible{color:var(--green);outline:0;}
95/*!sc*/
96.subtitle a:hover:after,.subtitle a:focus-visible:after{width:100%;}/*!sc*/
97.subtitle a:hover > *,.subtitle a:focus-visible > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
98.subtitle a:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);opacity:0.5;}/*!sc*/
99@media (prefers-reduced-motion:no-preference){.subtitle a:after{-webkit-transition:var(--transition);transition:var(--transition);}}/*!sc*/
100.breadcrumb{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:50px;color:var(--green);}/*!sc*/
101.breadcrumb .arrow{display:block;margin-right:10px;padding-top:4px;}/*!sc*/
102.breadcrumb a{display:inline-block;position:relative;color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);font-family:var(--font-mono);font-size:var(--fz-sm);font-weight:600;line-height:1.5;text-transform:uppercase;-webkit-letter-spacing:0.1em;-moz-letter-spacing:0.1em;-ms-letter-spacing:0.1em;letter-spacing:0.1em;}/*!sc*/
103.breadcrumb a:hover,.breadcrumb a:focus-visible{color:var(--green);outline:0;}/*!sc*/
104.breadcrumb a:hover:after,.breadcrumb a:focus-visible:after{width:100%;}/*!sc*/
105.breadcrumb a:hover > *,.breadcrumb a:focus-visible > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);}/*!sc*/
106.breadcrumb a:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);opacity:0.5;}/*!sc*/
107@media (prefers-reduced-motion:no-preference){.breadcrumb a:after{-webkit-transition:var(--transition);transition:var(--transition);}}/*!sc*/
108.gatsby-image-outer-wrapper{height:100%;}/*!sc*/
109.fadeup-enter{opacity:0.01;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px);-webkit-transition:opacity 300ms var(--easing),-webkit-transform 300ms var(--easing);-webkit-transition:opacity 300ms var(--easing),transform 300ms var(--easing);transition:opacity 300ms var(--easing),transform 300ms var(--easing);}/*!sc*/
110.fadeup-enter-active{opacity:1;-webkit-transform:translateY(0px);-ms-transform:translateY(0px);transform:translateY(0px);-webkit-transition:opacity 300ms var(--easing),-webkit-transform 300ms var(--easing);-webkit-transition:opacity 300ms var(--easing),transform 300ms var(--easing);transition:opacity 300ms var(--easing),transform 300ms var(--easing);}/*!sc*/
111.fadedown-enter{opacity:0.01;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px);-webkit-transition:opacity 300ms var(--easing),-webkit-transform 300ms var(--easing);-webkit-transition:opacity 300ms var(--easing),transform 300ms var(--easing);transition:opacity 300ms var(--easing),transform 300ms var(--easing);}/*!sc*/
112.fadedown-enter-active{opacity:1;-webkit-transform:translateY(0px);-ms-transform:translateY(0px);transform:translateY(0px);-webkit-transition:opacity 300ms var(--easing),-webkit-transform 300ms var(--easing);-webkit-transition:opacity 300ms var(--easing),transform 300ms var(--easing);transition:opacity 300ms var(--easing),transform 300ms var(--easing);}/*!sc*/
113.fade-enter{opacity:0;}/*!sc*/
114.fade-enter-active{opacity:1;-webkit-transition:opacity 300ms var(--easing);transition:opacity 300ms var(--easing);}/*!sc*/
115.fade-exit{opacity:1;}/*!sc*/
116.fade-exit-active{opacity:0;-webkit-transition:opacity 300ms var(--easing);transition:opacity 300ms var(--easing);}/*!sc*/
117.gatsby-highlight{background-color:#112340;color:#a2aabc;border-radius:var(--border-radius);margin:2em 0;padding:1.25em;overflow:auto;position:relative;font-family:var(--font-mono);font-size:var(--fz-md);}/*!sc*/
118.gatsby-highlight code[class*='language-'],.gatsby-highlight pre[class*='language-']{height:auto !important;font-size:var(--fz-sm);line-height:1.5;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;tab-size:2;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;}/*!sc*/
119.gatsby-highlight pre[class*='language-']{background-color:transparent;margin:0;padding:0;overflow:initial;float:left;min-width:100%;padding-top:2em;}/*!sc*/
120.gatsby-code-title{padding:1em 1.5em;font-family:var(--font-mono);font-size:var(--fz-xs);background-color:#112340;color:#a2aabc;border-top-left-radius:var(--border-radius);border-top-right-radius:var(--border-radius);border-bottom:1px solid #1d2d50;}
120/*!sc*/
121.gatsby-code-title + .gatsby-highlight{margin-top:0;border-top-left-radius:0;border-top-right-radius:0;}/*!sc*/
122.gatsby-highlight-code-line{display:block;background-color:#1d2d50;border-left:2px solid var(--green);padding-left:calc(1em + 2px);padding-right:1em;margin-right:-1.35em;margin-left:-1.35em;}/*!sc*/
123.gatsby-highlight pre[class*='language-']::before{background:var(--lightest-navy);color:var(--white);font-size:var(--fz-xxs);font-family:var(--font-mono);line-height:1.5;-webkit-letter-spacing:0.1em;-moz-letter-spacing:0.1em;-ms-letter-spacing:0.1em;letter-spacing:0.1em;text-transform:uppercase;border-radius:0 0 3px 3px;position:absolute;top:0;left:1.25rem;padding:0.25rem 0.5rem;}/*!sc*/
124.gatsby-highlight pre[class='language-javascript']::before{content:'js';}/*!sc*/
125.gatsby-highlight pre[class='language-js']::before{content:'js';}/*!sc*/
126.gatsby-highlight pre[class='language-jsx']::before{content:'jsx';}/*!sc*/
127.gatsby-highlight pre[class='language-graphql']::before{content:'GraphQL';}/*!sc*/
128.gatsby-highlight pre[class='language-html']::before{content:'html';}/*!sc*/
129.gatsby-highlight pre[class='language-css']::before{content:'css';}/*!sc*/
130.gatsby-highlight pre[class='language-mdx']::before{content:'mdx';}/*!sc*/
131.gatsby-highlight pre[class='language-shell']::before{content:'shell';}/*!sc*/
132.gatsby-highlight pre[class='language-sh']::before{content:'sh';}/*!sc*/
133.gatsby-highlight pre[class='language-bash']::before{content:'bash';}/*!sc*/
134.gatsby-highlight pre[class='language-yaml']::before{content:'yaml';}/*!sc*/
135.gatsby-highlight pre[class='language-markdown']::before{content:'md';}/*!sc*/
136.gatsby-highlight pre[class='language-json']::before,.gatsby-highlight pre[class='language-json5']::before{content:'json';}/*!sc*/
137.gatsby-highlight pre[class='language-diff']::before{content:'diff';}/*!sc*/
138.gatsby-highlight pre[class='language-text']::before{content:'text';}/*!sc*/
139.gatsby-highlight pre[class='language-flow']::before{content:'flow';}/*!sc*/
140.token{display:inline;}/*!sc*/
141.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#8695b799;}/*!sc*/
142.token.punctuation{color:#a2aabc;}/*!sc*/
143.token.namespace,.token.deleted{color:#ef6b73;}/*!sc*/
144.token.function-name,.token.function,.token.class-name,.token.constant,.token.symbol{color:#ffd580;}/*!sc*/
145.token.attr-name,.token.operator,.token.rule{color:#ffae57;}/*!sc*/
146.token.keyword,.token.boolean,.token.number,.token.property{color:#c3a6ff;}/*!sc*/
147.token.tag,.token.selector,.token.important,.token.atrule,.token.builtin,.token.entity,.token.url{color:#5ccfe6;}/*!sc*/
148.token.string,.token.char,.token.attr-value,.token.regex,.token.variable,.token.inserted{color:#bae67e;}/*!sc*/
149.token.important,.token.bold{font-weight:600;}/*!sc*/
150.token.italic{font-style:italic;}/*!sc*/
151.token.entity{cursor:help;}/*!sc*/
152.namespace{opacity:0.7;}/*!sc*/
153data-styled.g1[id="sc-global-dHTgAJ1"]{content:"sc-global-dHTgAJ1,"}/*!sc*/
154.kPPoGr{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:fixed;top:0;bottom:0;left:0;right:0;width:100%;height:100%;background-color:var(--dark-navy);z-index:99;}/*!sc*/
155.kPPoGr .logo-wrapper{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100px;-webkit-transition:var(--transition);transition:var(--transition);opacity:0;}/*!sc*/
156.kPPoGr .logo-wrapper svg{display:block;width:100%;height:100%;margin:0 auto;fill:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}/*!sc*/
157.kPPoGr .logo-wrapper svg #H{opacity:0;}/*!sc*/
158data-styled.g3[id="loader__StyledLoader-sc-kp1rs5-0"]{content:"kPPoGr,"}/*!sc*/
159</style><style>.gatsby-image-wrapper{position:relative;overflow:hidden}.gatsby-image-wrapper picture.object-fit-polyfill{position:static!important}.gatsby-image-wrapper img{bottom:0;height:100%;left:0;margin:0;max-width:none;padding:0;position:absolute;right:0;top:0;width:100%;object-fit:cover}.gatsby-image-wrapper [data-main-image]{opacity:0;transform:translateZ(0);transition:opacity .25s linear;will-change:opacity}.gatsby-image-wrapper-constrained{display:inline-block;vertical-align:top}</style><noscript><style>.gatsby-image-wrapper noscript [data-main-image]{opacity:1!important}.gatsby-image-wrapper [data-placeholder-image]{opacity:0!important}</style></noscript>
159<script type="module">const e="undefined"!=typeof HTMLImageElement&&"loading"in HTMLImageElement.prototype;e&&document.body.addEventListener("load",(function(e){if(void 0===e.target.dataset.mainImage)return;if(void 0===e.target.dataset.gatsbyImageSsr)return;const t=e.target;let a=null,n=t;for(;null===a&&n;)void 0!==n.parentNode.dataset.gatsbyImageWrapper&&(a=n.parentNode),n=n.parentNode;const o=a.querySelector("[data-placeholder-image]"),r=new Image;r.src=t.currentSrc,r.decode().catch((()=>{})).then((()=>{t.style.opacity=1,o&&(o.style.opacity=0,o.style.transition="opacity 500ms linear")}))}),!0);</script>
159<link rel="sitemap" type="application/xml" href="/sitemap/sitemap-index.xml"/><link rel="icon" href="/favicon-32x32.png?v=8898de036d7769d56472154967345b9c" type="image/png"/><link rel="manifest" href="/manifest.webmanifest" crossorigin="anonymous"/><meta name="theme-color" content="#ef6b73"/><link rel="apple-touch-icon" sizes="48x48" href="/icons/icon-48x48.png?v=8898de036d7769d56472154967345b9c"/><link rel="apple-touch-icon" sizes="72x72" href="/icons/icon-72x72.png?v=8898de036d7769d56472154967345b9c"/><link rel="apple-touch-icon" sizes="96x96" href="/icons/icon-96x96.png?v=8898de036d7769d56472154967345b9c"/><link rel="apple-touch-icon" sizes="144x144" href="/icons/icon-144x144.png?v=8898de036d7769d56472154967345b9c"/><link rel="apple-touch-icon" sizes="192x192" href="/icons/icon-192x192.png?v=8898de036d7769d56472154967345b9c"/><link rel="apple-touch-icon" sizes="256x256" href="/icons/icon-256x256.png?v=8898de036d7769d56472154967345b9c"/><link rel="apple-touch-icon" sizes="384x384" href="/icons/icon-384x384.png?v=8898de036d7769d56472154967345b9c"/><link rel="apple-touch-icon" sizes="512x512" href="/icons/icon-512x512.png?v=8898de036d7769d56472154967345b9c"/><link rel="preconnect" href="https://www.google-analytics.com"/><link rel="dns-prefetch" href="https://www.google-analytics.com"/><link as="script" rel="preload" href="/webpack-runtime-c80e3bc868666d65f46e.js"/><link as="script" rel="preload" href="/framework-f848448fe9438d27bad2.js"/><link as="script" rel="preload" href="/app-38c205d4be59e6d25ee0.js"/><link as="script" rel="preload" href="/546641dfde76ed00139ea2c3eae09499c5f2164a-f5a4e1846fb7b208f1e9.js"/><link as="script" rel="preload" href="/component---src-pages-index-js-215bdd24fafdca67f1f5.js"/><link as="fetch" rel="preload" href="/page-data/index/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/1994492073.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/2009693873.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/2031412112.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/3825832676.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/app-data.json" crossorigin="anonymous"/></head><body class="hidden"><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div id="root"><a class="skip-to-content" href="#content">Skip to Content</a><div class="loader__StyledLoader-sc-kp1rs5-0 kPPoGr loader"><div class="logo-wrapper"><svg id="logo" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><title>Loader Logo</title><g><g transform="translate(11.000000, 5.000000)"></g><path stroke="currentColor" stroke-width="5" stroke-linecap="round" stroke-linejoin="round" d="M 50, 5 L 11, 27 L 11, 72 L 50, 95 L 89, 73 L 89, 28 z"></path></g><text id="H" x="33" y="67" fill="currentColor" font-size="55px" font-family="Lucida Console">H</text></svg></div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div>
159<script>
160  
161  
162  if(true) {
163    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
164    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
165    m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
166    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
167  }
168  if (typeof ga === "function") {
169    ga('create', 'UA-45666519-2', 'auto', {});
170      
171      
172      
173      
174      
175      }</script>
175<script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/";/*]]>*/</script>
175<script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"app":["/app-38c205d4be59e6d25ee0.js"],"component---cache-caches-gatsby-plugin-offline-app-shell-js":["/component---cache-caches-gatsby-plugin-offline-app-shell-js-eb9aa51e276084218fea.js"],"component---src-pages-404-js":["/component---src-pages-404-js-a527d10f912939d21156.js"],"component---src-pages-archive-js":["/component---src-pages-archive-js-fa38f17e0f411caa8bd8.js"],"component---src-pages-index-js":["/component---src-pages-index-js-215bdd24fafdca67f1f5.js"],"component---src-pages-pensieve-index-js":["/component---src-pages-pensieve-index-js-961d184bf19bfb529e98.js"],"component---src-pages-pensieve-tags-js":["/component---src-pages-pensieve-tags-js-12b8230083b944e9c60d.js"],"component---src-templates-post-js":["/component---src-templates-post-js-a04fe3058ceaeff6f89f.js"],"component---src-templates-tag-js":["/component---src-templates-tag-js-eef0d4e897e561c5fd0c.js"]};/*]]>*/</script>
175<script src="/component---src-pages-index-js-215bdd24fafdca67f1f5.js" async=""></script>
175<script src="/546641dfde76ed00139ea2c3eae09499c5f2164a-f5a4e1846fb7b208f1e9.js" async=""></script>
175<script src="/app-38c205d4be59e6d25ee0.js" async=""></script>
175<script src="/framework-f848448fe9438d27bad2.js" async=""></script>
175<script src="/webpack-runtime-c80e3bc868666d65f46e.js" async=""></script>
175</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.