-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
23 lines (16 loc) · 26.7 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
<!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 2.32.13"/><title data-react-helmet="true">Rahmad Al Habib Khasary | Software Engineer</title><meta data-react-helmet="true" name="description" content="Rahmad Al Habib Khasary is a software engineer based in Cibinong, Bogor who specializes in developing, high-quality websites and applications."/><meta data-react-helmet="true" name="image" content="https://abewartech.github.io/og.png"/><meta data-react-helmet="true" property="og:title" content="Rahmad Al Habib Khasary | Software Engineer"/><meta data-react-helmet="true" property="og:description" content="Rahmad Al Habib Khasary is a software engineer based in Cibinong, Bogor who specializes in developing, high-quality websites and applications."/><meta data-react-helmet="true" property="og:image" content="https://abewartech.github.io/og.png"/><meta data-react-helmet="true" property="og:url" content="https://abewartech.github.io/"/><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="@habibkhasary"/><meta data-react-helmet="true" name="twitter:title" content="Rahmad Al Habib Khasary | Software Engineer"/><meta data-react-helmet="true" name="twitter:description" content="Rahmad Al Habib Khasary is a software engineer based in Cibinong, Bogor who specializes in developing, high-quality websites and applications."/><meta data-react-helmet="true" name="twitter:image" content="https://abewartech.github.io/og.png"/><meta data-react-helmet="true" name="google-site-verification" content="DCl7VAf9tcz6eD9gb67NfkNnJ1PKRNcg8qQiwpbx9Lk"/><meta data-react-helmet="true" name="p:domain_verify" content="cfc2bcf1bcc76a8d3f4af04992954fa7"/><style data-styled="cHvtLI cTAzrf" data-styled-version="4.4.1">
/* sc-component-id: sc-global-4051374478 */
@font-face{font-family:'Calibre';src:url(/static/Calibre-Regular-b63c62e591d0c8fbe2c8f009883346d5.woff2) format('woff2'), url(/static/Calibre-Regular-e08232148510aade507c2af9bb66acd0.woff) format('woff');font-weight:400;font-style:normal;font-display:auto;} @font-face{font-family:'Calibre';src:url(/static/Calibre-Medium-46b36969c7bb1d7ed4c8253e8f274788.woff2) format('woff2'), url(/static/Calibre-Medium-115d37180a9c07e2f480ca81b032babe.woff) format('woff');font-weight:500;font-style:normal;font-display:auto;} @font-face{font-family:'Calibre';src:url(/static/Calibre-Semibold-d8b856473a51d7eec2a9bccf2fbea54c.woff2) format('woff2'), url(/static/Calibre-Semibold-347808401d7a6607ff9a86897aec0a39.woff) format('woff');font-weight:600;font-style:normal;font-display:auto;} @font-face{font-family:'Calibre';src:url(/static/Calibre-RegularItalic-35657aa2d12ff78e3d8a8a5ba28c2c35.woff2) format('woff2'), url(/static/Calibre-RegularItalic-3a445970c7bcd6b102ac6bd60178b0bc.woff) format('woff');font-weight:400;font-style:italic;font-display:auto;} @font-face{font-family:'Calibre';src:url(/static/Calibre-MediumItalic-3df14639dd2cb07c83bd39707d70910f.woff2) format('woff2'), url(/static/Calibre-MediumItalic-4afe8032c647b57de924543c052e0ee4.woff) format('woff');font-weight:500;font-style:italic;font-display:auto;} @font-face{font-family:'Calibre';src:url(/static/Calibre-SemiboldItalic-8f3e4b3eaed73e67bbc4fc81f308a35f.woff2) format('woff2'), url(/static/Calibre-SemiboldItalic-6473be72d5216d0ec21d273af09b9fa3.woff) format('woff');font-weight:600;font-style:italic;font-display:auto;} @font-face{font-family:'SF Mono';src:url(/static/SFMono-Regular-7faa66605357721067fe1b07d9103015.woff2) format('woff2'), url(/static/SFMono-Regular-d59c1702c527525e9939ba06166a3750.woff) format('woff');font-weight:400;font-style:normal;font-display:auto;} @font-face{font-family:'SF Mono';src:url(/static/SFMono-Semibold-cebe2bfbe8a283427e3c5ad8a1b8ae2f.woff2) format('woff2'), url(/static/SFMono-Semibold-2d4bff46a7a9ba9dc7701f75726a7815.woff) format('woff');font-weight:600;font-style:normal;font-display:auto;} @font-face{font-family:'SF Mono';src:url(/static/SFMono-RegularItalic-bb1fc3ab1772befac3587b30ca876a09.woff2) format('woff2'), url(/static/SFMono-RegularItalic-502441ff6ee56a1df1558e8461050a46.woff) format('woff');font-weight:400;font-style:italic;font-display:auto;} @font-face{font-family:'SF Mono';src:url(/static/SFMono-SemiboldItalic-2fd68bed64aeaceadc6402efc4d82767.woff2) format('woff2'), url(/static/SFMono-SemiboldItalic-41da0311eaa7077546785a822a6ba21a.woff) format('woff');font-weight:600;font-style:italic;font-display:auto;} :root{--dark-navy:#020c1b;--navy:#0a192f;--light-navy:#112240;--lightest-navy:#233554;--navy-shadow:rgba(2,12,27,0.7);--slate:#8892b0;--light-slate:#a8b2d1;--lightest-slate:#ccd6f6;--white:#e6f1ff;--green:#64ffda;--green-tint:rgba(100,255,218,0.1);--font-sans:'Calibre','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;} html{box-sizing:border-box;width:100%;} *,*:before,*:after{box-sizing:inherit;} ::selection{background-color:var(--slate);color:var(--lightest-slate);} body{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;} @media (max-width:480px){body{font-size:var(--fz-lg);}} body.hidden{overflow:hidden;} body.blur{overflow:hidden;} body.blur header{background-color:transparent;} body.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;} #root{min-height:100vh;display:grid;grid-template-rows:1fr auto;grid-template-columns:100%;} main{margin:0 auto;width:100%;max-width:1600px;min-height:100vh;padding:200px 150px;} @media (max-width:1080px){main{padding:200px 100px;}} @media (max-width:768px){main{padding:150px 50px;}} @media (max-width:480px){main{padding:125px 25px;}} main.fillHeight{padding:0 150px;} @media (max-width:1080px){main.fillHeight{padding:0 100px;}} @media (max-width:768px){main.fillHeight{padding:0 50px;}} @media (max-width:480px){main.fillHeight{padding:0 25px;}} section{margin:0 auto;padding:100px 0;max-width:1000px;} @media (max-width:768px){section{padding:80px 0;}} @media (max-width:480px){section{padding:60px 0;}} h1,h2,h3,h4,h5,h6{margin:0 0 10px 0;font-weight:600;color:var(--lightest-slate);line-height:1.1;} .big-heading{margin:0;font-size:clamp(40px,8vw,80px);} .medium-heading{margin:0;font-size:clamp(40px,8vw,60px);} .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;} .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;} @media (max-width:480px){.numbered-heading:before{margin-bottom:-3px;margin-right:5px;}} .numbered-heading:after{content:'';display:block;position:relative;top:-5px;width:300px;height:1px;margin-left:20px;background-color:var(--lightest-navy);} @media (max-width:1080px){.numbered-heading:after{width:200px;}} @media (max-width:768px){.numbered-heading:after{width:100%;}} @media (max-width:600px){.numbered-heading:after{margin-left:10px;}} img,svg,.gatsby-image-wrapper{width:100%;max-width:100%;vertical-align:middle;} img[alt=""],img:not([alt]){-webkit-filter:blur(5px);filter:blur(5px);} svg{width:100%;height:100%;fill:currentColor;vertical-align:middle;} svg.feather{fill:none;} a{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);cursor:pointer;} a:hover,a:focus{color:var(--green);} a.inline-link{display:inline-block;-webkit-text-decoration:none;text-decoration:none;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;position:relative;-webkit-transition:var(--transition);transition:var(--transition);cursor:pointer;color:var(--green);} a.inline-link:hover,a.inline-link:focus,a.inline-link:active{color:var(--green);outline:0;} a.inline-link:hover:after,a.inline-link:focus:after,a.inline-link:active:after{width:100%;} a.inline-link:hover > *,a.inline-link:focus > *,a.inline-link:active > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);} a.inline-link:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);opacity:0.5;} button{cursor:pointer;border:0;border-radius:0;} input,textarea{border-radius:0;outline:0;} input:focus,textarea:focus{outline:0;} input:focus::-webkit-input-placeholder,textarea:focus::-webkit-input-placeholder,input:active::-webkit-input-placeholder,textarea:active::-webkit-input-placeholder{opacity:0.5;} input:focus::-moz-placeholder,textarea:focus::-moz-placeholder,input:active::-moz-placeholder,textarea:active::-moz-placeholder{opacity:0.5;} input:focus:-ms-input-placeholder,textarea:focus:-ms-input-placeholder,input:active:-ms-input-placeholder,textarea:active:-ms-input-placeholder{opacity:0.5;} input:focus::placeholder,textarea:focus::placeholder,input:active::placeholder,textarea:active::placeholder{opacity:0.5;} p{margin:0 0 15px 0;} p:last-child,p:last-of-type{margin:0;} p > a{display:inline-block;-webkit-text-decoration:none;text-decoration:none;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;position:relative;-webkit-transition:var(--transition);transition:var(--transition);cursor:pointer;color:var(--green);} p > a:hover,p > a:focus,p > a:active{color:var(--green);outline:0;} p > a:hover:after,p > a:focus:after,p > a:active:after{width:100%;} p > a:hover > *,p > a:focus > *,p > a:active > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);} p > a:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);opacity:0.5;} p > code{background-color:var(--light-navy);color:var(--white);font-size:var(--fz-sm);border-radius:var(--border-radius);padding:0.3em 0.5em;} ul.fancy-list{padding:0;margin:0;list-style:none;font-size:var(--fz-lg);} ul.fancy-list li{position:relative;padding-left:30px;margin-bottom:10px;} ul.fancy-list li:before{content:'▹';position:absolute;left:0;color:var(--green);} blockquote{border-left-color:var(--green);border-left-style:solid;border-left-width:1px;margin-left:0px;margin-right:0px;padding-left:1.5rem;} blockquote p{font-style:italic;font-size:24px;} hr{background-color:var(--lightest-navy);height:1px;border-width:0px;border-style:initial;border-color:initial;border-image:initial;margin:1rem;} code{font-family:var(--font-mono);font-size:var(--fz-md);} #logo{color:var(--green);} .overline{color:var(--green);font-family:var(--font-mono);font-size:var(--fz-md);font-weight:400;} .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;} @media (max-width:1080px){.subtitle{font-size:var(--fz-sm);}} @media (max-width:768px){.subtitle{font-size:var(--fz-xs);}} .subtitle a{display:inline-block;-webkit-text-decoration:none;text-decoration:none;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;position:relative;-webkit-transition:var(--transition);transition:var(--transition);cursor:pointer;color:var(--green);line-height:1.5;} .subtitle a:hover,.subtitle a:focus,.subtitle a:active{color:var(--green);outline:0;} .subtitle a:hover:after,.subtitle a:focus:after,.subtitle a:active:after{width:100%;} .subtitle a:hover > *,.subtitle a:focus > *,.subtitle a:active > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);} .subtitle a:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);opacity:0.5;} .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);} .breadcrumb .arrow{display:block;margin-right:10px;padding-top:4px;} .breadcrumb a{display:inline-block;-webkit-text-decoration:none;text-decoration:none;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;position:relative;-webkit-transition:var(--transition);transition:var(--transition);cursor:pointer;color:var(--green);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;} .breadcrumb a:hover,.breadcrumb a:focus,.breadcrumb a:active{color:var(--green);outline:0;} .breadcrumb a:hover:after,.breadcrumb a:focus:after,.breadcrumb a:active:after{width:100%;} .breadcrumb a:hover > *,.breadcrumb a:focus > *,.breadcrumb a:active > *{color:var(--green) !important;-webkit-transition:var(--transition);transition:var(--transition);} .breadcrumb a:after{content:'';display:block;width:0;height:1px;position:relative;bottom:0.37em;background-color:var(--green);-webkit-transition:var(--transition);transition:var(--transition);opacity:0.5;} .gatsby-image-outer-wrapper{height:100%;} .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);} .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);} .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);} .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);} .fade-enter{opacity:0;} .fade-enter-active{opacity:1;-webkit-transition:opacity 300ms var(--easing);transition:opacity 300ms var(--easing);} .fade-exit{opacity:1;} .fade-exit-active{opacity:0;-webkit-transition:opacity 300ms var(--easing);transition:opacity 300ms var(--easing);} .gatsby-highlight{background-color:#112340;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);} .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;} .gatsby-highlight pre[class*='language-']{background-color:transparent;margin:0;padding:0;overflow:initial;float:left;min-width:100%;padding-top:2em;} .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;} .gatsby-code-title + .gatsby-highlight{margin-top:0;border-top-left-radius:0;border-top-right-radius:0;} .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;} .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;} .gatsby-highlight pre[class='language-javascript']::before{content:'js';} .gatsby-highlight pre[class='language-js']::before{content:'js';} .gatsby-highlight pre[class='language-jsx']::before{content:'jsx';} .gatsby-highlight pre[class='language-graphql']::before{content:'GraphQL';} .gatsby-highlight pre[class='language-html']::before{content:'html';} .gatsby-highlight pre[class='language-css']::before{content:'css';} .gatsby-highlight pre[class='language-mdx']::before{content:'mdx';} .gatsby-highlight pre[class='language-shell']::before{content:'shell';} .gatsby-highlight pre[class='language-sh']::before{content:'sh';} .gatsby-highlight pre[class='language-bash']::before{content:'bash';} .gatsby-highlight pre[class='language-yaml']::before{content:'yaml';} .gatsby-highlight pre[class='language-markdown']::before{content:'md';} .gatsby-highlight pre[class='language-json']::before,.gatsby-highlight pre[class='language-json5']::before{content:'json';} .gatsby-highlight pre[class='language-diff']::before{content:'diff';} .gatsby-highlight pre[class='language-text']::before{content:'text';} .gatsby-highlight pre[class='language-flow']::before{content:'flow';} .token{display:inline;} .token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#8695b799;} .token.punctuation{color:#a2aabc;} .token.namespace,.token.deleted{color:#ef6b73;} .token.function-name,.token.function,.token.class-name,.token.constant,.token.symbol{color:#ffd580;} .token.attr-name,.token.operator,.token.rule{color:#ffae57;} .token.keyword,.token.boolean,.token.number,.token.property{color:#c3a6ff;} .token.tag,.token.selector,.token.important,.token.atrule,.token.builtin,.token.entity,.token.url{color:#5ccfe6;} .token.string,.token.char,.token.attr-value,.token.regex,.token.variable,.token.inserted{color:#bae67e;} .token.important,.token.bold{font-weight:600;} .token.italic{font-style:italic;} .token.entity{cursor:help;} .namespace{opacity:0.7;}
/* sc-component-id: layout__SkipToContentLink-sc-1yw8zls-0 */
.cHvtLI{position:absolute;top:auto;left:-999px;width:1px;height:1px;overflow:hidden;z-index:-99;} .cHvtLI:focus,.cHvtLI:active{top:0;left:0;width:auto;height:auto;padding:18px 23px;outline:0;border-radius:var(--border-radius);background-color:var(--light-navy);color:var(--green);font-family:var(--font-mono);font-size:var(--fz-sm);line-height:1;-webkit-text-decoration:none;text-decoration:none;cursor:pointer;overflow:auto;-webkit-transition:var(--transition);transition:var(--transition);z-index:99;}
/* sc-component-id: loader__StyledLoader-sc-177se4j-0 */
.cTAzrf{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;} .cTAzrf .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;} .cTAzrf .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;} .cTAzrf .logo-wrapper svg #B{opacity:0;}</style><link rel="sitemap" type="application/xml" href="/sitemap.xml"/><link rel="icon" href="/favicon-32x32.png?v=8437e4a57a7e32ee0f5d4bf18db18e21" type="image/png"/><link rel="manifest" href="/manifest.webmanifest" crossorigin="anonymous"/><meta name="theme-color" content="#0a192f"/><link rel="apple-touch-icon" sizes="48x48" href="/icons/icon-48x48.png?v=8437e4a57a7e32ee0f5d4bf18db18e21"/><link rel="apple-touch-icon" sizes="72x72" href="/icons/icon-72x72.png?v=8437e4a57a7e32ee0f5d4bf18db18e21"/><link rel="apple-touch-icon" sizes="96x96" href="/icons/icon-96x96.png?v=8437e4a57a7e32ee0f5d4bf18db18e21"/><link rel="apple-touch-icon" sizes="144x144" href="/icons/icon-144x144.png?v=8437e4a57a7e32ee0f5d4bf18db18e21"/><link rel="apple-touch-icon" sizes="192x192" href="/icons/icon-192x192.png?v=8437e4a57a7e32ee0f5d4bf18db18e21"/><link rel="apple-touch-icon" sizes="256x256" href="/icons/icon-256x256.png?v=8437e4a57a7e32ee0f5d4bf18db18e21"/><link rel="apple-touch-icon" sizes="384x384" href="/icons/icon-384x384.png?v=8437e4a57a7e32ee0f5d4bf18db18e21"/><link rel="apple-touch-icon" sizes="512x512" href="/icons/icon-512x512.png?v=8437e4a57a7e32ee0f5d4bf18db18e21"/><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-2bcf25c06353be2c9b91.js"/><link as="script" rel="preload" href="/framework-305b3707783ccc9d7ca6.js"/><link as="script" rel="preload" href="/app-4d7e274530f34c2814cb.js"/><link as="script" rel="preload" href="/2e3cc0ab8b725f1ac0fab2a7e4829da0facef406-0b9310f21de87007cacd.js"/><link as="script" rel="preload" href="/component---src-pages-index-js-550ac5e161125db7c859.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/1143475367.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/3618961439.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/4112399270.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/604461682.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 href="#content" class="layout__SkipToContentLink-sc-1yw8zls-0 cHvtLI">I'm a software engineer based in Cibinong, Bogor specializing in building (and occasionally designing) exceptional websites, applications, and everything in between.</a><div class="loader__StyledLoader-sc-177se4j-0 cTAzrf loader"><div class="logo-wrapper"><svg id="logo" xmlns="http://www.w3.org/2000/svg" width="110" height="74" viewBox="0 0 110 74"><g id="Group_1" data-name="Group 1" transform="translate(-233 -203)" stroke-dasharray="undefined" style="stroke-dashoffset:0"><text id="AB" transform="translate(233 263)" fill="#64ffda" font-size="60" font-family="SFMono-Medium, SF Mono" font-weight="500"><tspan x="0" y="0">AB</tspan></text><line id="Line_1" data-name="Line 1" x2="71" transform="translate(233.5 270.5)" fill="none" stroke="#707070" stroke-width="1" style="opacity:0"></line><text id="e" transform="translate(305 260)" fill="#64ffda" font-size="60" font-family="SFMono-Medium, SF Mono" font-weight="500" style="opacity:0"><tspan x="0" y="0">e</tspan></text></g></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><script>
if(true) {
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
}
if (typeof ga === "function") {
ga('create', 'UA-150360280-2', 'auto', {});
}</script><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-d8d7a3e390d4a6f77d18.js"],"app":["/app-4d7e274530f34c2814cb.js"],"component---cache-caches-gatsby-plugin-offline-app-shell-js":["/component---cache-caches-gatsby-plugin-offline-app-shell-js-16703ee5599528db9f93.js"],"component---src-pages-404-js":["/component---src-pages-404-js-35c672b4f6312d82645b.js"],"component---src-pages-archive-js":["/component---src-pages-archive-js-48a4037b1ab1f46fbe43.js"],"component---src-pages-index-js":["/component---src-pages-index-js-550ac5e161125db7c859.js"],"component---src-pages-project-index-js":["/component---src-pages-project-index-js-fa0ab286545883d8273b.js"],"component---src-pages-project-tags-js":["/component---src-pages-project-tags-js-649b551066d45c67435d.js"],"component---src-templates-post-js":["/component---src-templates-post-js-dac0142543e0d6fa51c1.js"],"component---src-templates-tag-js":["/component---src-templates-tag-js-ac5f4643d52fe388c58f.js"]};/*]]>*/</script><script src="/polyfill-d8d7a3e390d4a6f77d18.js" nomodule=""></script><script src="/component---src-pages-index-js-550ac5e161125db7c859.js" async=""></script><script src="/2e3cc0ab8b725f1ac0fab2a7e4829da0facef406-0b9310f21de87007cacd.js" async=""></script><script src="/app-4d7e274530f34c2814cb.js" async=""></script><script src="/framework-305b3707783ccc9d7ca6.js" async=""></script><script src="/webpack-runtime-2bcf25c06353be2c9b91.js" async=""></script></body></html>