feat: serve static files in dist directory
This commit is contained in:
parent
2f972b6a43
commit
053513b4e6
8 changed files with 5 additions and 2371 deletions
Binary file not shown.
Before Width: | Height: | Size: 13 KiB |
Binary file not shown.
Before Width: | Height: | Size: 1.1 KiB |
|
@ -1,455 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en" data-astro-cid-sckkx6r4>
|
||||
<head>
|
||||
<title>Not Found</title>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<meta name="theme-color" content="#3054bf" />
|
||||
<meta
|
||||
name="description"
|
||||
content="Have you tried turning it off and on again?"
|
||||
/>
|
||||
<meta name="author" content="Ayo Ayco" />
|
||||
<meta name="origin" content="https://ayo.ayco.io/404/" />
|
||||
<!-- Open Graph data -->
|
||||
<meta property="og:site_name" content="Ayo Ayco" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://ayo.ayco.io/404/" />
|
||||
<meta property="og:title" content="Not Found" />
|
||||
<meta
|
||||
property="og:description"
|
||||
content="Have you tried turning it off and on again?"
|
||||
/>
|
||||
<meta property="og:image" content="/ayo.png" />
|
||||
<link rel="me" href="https://ayos.blog" />
|
||||
<link rel="me" href="https://social.ayco.io/@ayo" />
|
||||
<link rel="me" href="https://metapixl.com/@ayo" />
|
||||
<link rel="me" href="https://theres.life/@ayo" />
|
||||
<link rel="shortcut icon" type="image/png" href="static/favicon.ico" />
|
||||
<script>
|
||||
const title = document.title;
|
||||
const defaultTitle =
|
||||
"Ayo Ayco | Software Engineer, Web Developer, Consultant";
|
||||
if (title) {
|
||||
document.title = `${title} | ${defaultTitle}`;
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
*,
|
||||
*:before,
|
||||
*:after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
* {
|
||||
margin: 0;
|
||||
}
|
||||
html,
|
||||
body {
|
||||
height: 100%;
|
||||
background: #fff;
|
||||
}
|
||||
body {
|
||||
line-height: 1.5;
|
||||
letter-spacing: 0.25px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
img,
|
||||
picture,
|
||||
video,
|
||||
canvas,
|
||||
svg,
|
||||
iframe {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
input,
|
||||
button,
|
||||
textarea,
|
||||
select {
|
||||
font: inherit;
|
||||
}
|
||||
p,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
#root,
|
||||
#__next {
|
||||
isolation: isolate;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] {
|
||||
background: var(--ayo-gradient);
|
||||
display: flex;
|
||||
margin: 0 auto;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec] {
|
||||
display: inline-block;
|
||||
text-decoration: underline;
|
||||
color: var(--text-color-light);
|
||||
padding: 0.5em 1em;
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]:hover {
|
||||
color: var(--color-brand-complement);
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec]
|
||||
a[data-astro-cid-dmqpwcec]
|
||||
svg[data-astro-cid-dmqpwcec] {
|
||||
width: 1.5rem;
|
||||
}
|
||||
#wrapper[data-astro-cid-dmqpwcec] {
|
||||
flex: 1;
|
||||
max-width: var(--content-width);
|
||||
margin: 0 auto;
|
||||
text-align: right;
|
||||
}
|
||||
@media only screen and (max-device-width: 360px) {
|
||||
#wrapper[data-astro-cid-dmqpwcec] {
|
||||
text-align: center;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
}
|
||||
main {
|
||||
margin: auto;
|
||||
max-width: var(--content-width);
|
||||
padding: 1em;
|
||||
}
|
||||
h1 {
|
||||
font-size: var(--font-size-xl);
|
||||
}
|
||||
h2 {
|
||||
font-size: var(--font-size-lg);
|
||||
}
|
||||
code {
|
||||
font-family: Menlo, Monaco, Lucida Console, Liberation Mono,
|
||||
DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace;
|
||||
}
|
||||
p,
|
||||
img,
|
||||
table,
|
||||
ul {
|
||||
margin: 1em 0;
|
||||
font-size: var(--font-size-base);
|
||||
}
|
||||
.text-gradient {
|
||||
font-weight: 900;
|
||||
background-image: var(--ayo-gradient);
|
||||
animation: pulse 4s ease-in-out infinite;
|
||||
background-size: 500% 500%;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-size: 100% 200%;
|
||||
background-position-y: 100%;
|
||||
border-radius: 0.4rem;
|
||||
}
|
||||
a {
|
||||
font-weight: 700;
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
a {
|
||||
color: var(--color-brand-complement);
|
||||
}
|
||||
}
|
||||
:root {
|
||||
--content-width: 700px;
|
||||
--font-size-sm: clamp(0.75rem, 0.2vw + 0.66rem, 0.8rem);
|
||||
--font-size-base: clamp(1rem, 0.34vw + 0.91rem, 1.19rem);
|
||||
--font-size-lg: clamp(1.2rem, 0.7vw + 1.2rem, 1.5rem);
|
||||
--font-size-xl: clamp(2.44rem, 2.38vw + 1.85rem, 3.75rem);
|
||||
--color-border: hsl(17, 24%, 90%);
|
||||
--color-link: var(--color-brand-blue-3);
|
||||
--color-brand-blue-1: #3054bf;
|
||||
--color-brand-blue-2: #203880;
|
||||
--color-brand-blue-3: #416fff;
|
||||
--color-brand-blue-4: #101c40;
|
||||
--color-brand-blue-5: #3964e6;
|
||||
--color-brand-complement: orange;
|
||||
--ayo-gradient: linear-gradient(45deg, #3054bf, #416fff);
|
||||
--text-color-dark: black;
|
||||
--text-color-light: #f8f9fa;
|
||||
--bg-dark: #343a40;
|
||||
--bg-darker: #212529;
|
||||
--bg-darkest: #000;
|
||||
}
|
||||
html,
|
||||
body,
|
||||
[data-astro-cid-sckkx6r4] {
|
||||
font-family: system-ui, sans-serif;
|
||||
font-size: var(--font-size-base);
|
||||
color: var(--text-color-dark);
|
||||
background-color: var(--text-color-light);
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
html,
|
||||
body,
|
||||
[data-astro-cid-sckkx6r4] {
|
||||
background: var(--bg-darker);
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
}
|
||||
@keyframes pulse {
|
||||
0%,
|
||||
to {
|
||||
background-position-y: 0%;
|
||||
}
|
||||
50% {
|
||||
background-position-y: 80%;
|
||||
}
|
||||
}
|
||||
footer[data-astro-cid-sz7xmlte] {
|
||||
margin-top: 1em;
|
||||
text-align: right;
|
||||
}
|
||||
footer[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte] {
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
h1[data-astro-cid-zetdm5md] {
|
||||
margin: 0;
|
||||
color: #ffffffbf;
|
||||
}
|
||||
h1[data-astro-cid-zetdm5md] span[data-astro-cid-zetdm5md].heavy-text {
|
||||
font-weight: 900;
|
||||
color: #fff;
|
||||
}
|
||||
main[data-astro-cid-zetdm5md] {
|
||||
max-width: 100% !important;
|
||||
}
|
||||
.highlighted-section__content[data-astro-cid-zetdm5md] {
|
||||
margin: auto;
|
||||
padding: 1em;
|
||||
max-width: var(--content-width);
|
||||
font-weight: 400;
|
||||
font-size: (--font-size-lg);
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
.now-wrapper[data-astro-cid-zetdm5md] {
|
||||
border: 1px solid rgba(255, 255, 255, 0.2);
|
||||
border-radius: 40px;
|
||||
padding: 8px 4px;
|
||||
font-weight: 400;
|
||||
color: #fff;
|
||||
font-size: var(--font-size-sm);
|
||||
text-decoration: none;
|
||||
}
|
||||
.now-label[data-astro-cid-zetdm5md] {
|
||||
border-radius: 40px;
|
||||
background-color: #0009;
|
||||
color: #fff;
|
||||
padding: 4px 8px;
|
||||
text-transform: uppercase;
|
||||
font-weight: 700;
|
||||
}
|
||||
.status[data-astro-cid-zetdm5md] {
|
||||
padding-right: 4px;
|
||||
}
|
||||
.highlighted-section[data-astro-cid-zetdm5md] {
|
||||
background: var(--ayo-gradient);
|
||||
background-size: 500% 500%;
|
||||
animation: pulse 15s ease-in-out infinite;
|
||||
}
|
||||
.highlighted-section__content[data-astro-cid-zetdm5md]
|
||||
ul[data-astro-cid-zetdm5md]
|
||||
a[data-astro-cid-zetdm5md] {
|
||||
color: #fff;
|
||||
font-weight: 400;
|
||||
}
|
||||
.highlighted-section__content[data-astro-cid-zetdm5md]
|
||||
ul[data-astro-cid-zetdm5md] {
|
||||
list-style-type: none;
|
||||
padding: 0;
|
||||
}
|
||||
.cards-section[data-astro-cid-zetdm5md] {
|
||||
margin: auto;
|
||||
max-width: var(--content-width);
|
||||
}
|
||||
.cards-section__grid[data-astro-cid-zetdm5md] {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(24ch, 1fr));
|
||||
gap: 1rem;
|
||||
padding: 0;
|
||||
}
|
||||
@media only screen and (max-device-width: 360px) {
|
||||
.now-wrapper[data-astro-cid-zetdm5md] {
|
||||
border: 0px;
|
||||
font-size: var(--font-size-sm);
|
||||
width: 100%;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 1;
|
||||
-webkit-box-orient: vertical;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
.now-label[data-astro-cid-zetdm5md] {
|
||||
background-color: transparent;
|
||||
color: #fff;
|
||||
text-decoration: underline;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
.now-label[data-astro-cid-zetdm5md]:before {
|
||||
content: "* ";
|
||||
}
|
||||
.now-label[data-astro-cid-zetdm5md]:after {
|
||||
content: ":";
|
||||
}
|
||||
}
|
||||
@media only screen and (min-device-width: 280px) and (max-device-width: 653px) {
|
||||
.highlighted-section__content[data-astro-cid-zetdm5md]
|
||||
ul[data-astro-cid-zetdm5md]
|
||||
li[data-astro-cid-zetdm5md] {
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
}
|
||||
@media only screen and (min-device-width: 360px) and (max-device-width: 812px) {
|
||||
.highlighted-section__content[data-astro-cid-zetdm5md]
|
||||
ul[data-astro-cid-zetdm5md]
|
||||
li[data-astro-cid-zetdm5md] {
|
||||
font-size: var(--font-size-base);
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body data-astro-cid-sckkx6r4>
|
||||
<nav data-astro-cid-dmqpwcec>
|
||||
<div id="wrapper" data-astro-cid-dmqpwcec>
|
||||
<a href="/" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:home"
|
||||
>
|
||||
<path fill="currentColor" d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z" />
|
||||
</svg>
|
||||
home </a
|
||||
><a href="https://ayos.blog" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:blog"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="M3 3v18h18V3zm15 15H6v-1h12zm0-2H6v-1h12zm0-4H6V6h12z"
|
||||
/>
|
||||
</svg>
|
||||
blog </a
|
||||
><a href="https://ayco.io/@ayo" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:mastodon"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="M20.94 14c-.28 1.41-2.44 2.96-4.97 3.26-1.31.15-2.6.3-3.97.24-2.25-.11-4-.54-4-.54v.62c.32 2.22 2.22 2.35 4.03 2.42 1.82.05 3.44-.46 3.44-.46l.08 1.65s-1.28.68-3.55.81c-1.25.07-2.81-.03-4.62-.5-3.92-1.05-4.6-5.24-4.7-9.5l-.01-3.43c0-4.34 2.83-5.61 2.83-5.61C6.95 2.3 9.41 2 11.97 2h.06c2.56 0 5.02.3 6.47.96 0 0 2.83 1.27 2.83 5.61 0 0 .04 3.21-.39 5.43M18 8.91c0-1.08-.3-1.91-.85-2.56-.56-.63-1.3-.96-2.23-.96-1.06 0-1.87.41-2.42 1.23l-.5.88-.5-.88c-.56-.82-1.36-1.23-2.43-1.23-.92 0-1.66.33-2.23.96C6.29 7 6 7.83 6 8.91v5.26h2.1V9.06c0-1.06.45-1.62 1.36-1.62 1 0 1.5.65 1.5 1.93v2.79h2.07V9.37c0-1.28.5-1.93 1.51-1.93.9 0 1.35.56 1.35 1.62v5.11H18z"
|
||||
/>
|
||||
</svg>
|
||||
social </a
|
||||
><a href="https://metapixl.com/i/portfolio/ayo" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:image"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="m8.5 13.5 2.5 3 3.5-4.5 4.5 6H5m16 1V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2"
|
||||
/>
|
||||
</svg>
|
||||
photos </a
|
||||
><a href="https://www.npmjs.com/~aayco" data-astro-cid-dmqpwcec>
|
||||
<svg viewBox="0 0 24 24" data-astro-cid-dmqpwcec astro-icon="gg:npm">
|
||||
<path
|
||||
fill="currentColor"
|
||||
fill-rule="evenodd"
|
||||
d="M5 21a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2zm1-3V6h12v12h-3V9h-3v9z"
|
||||
clip-rule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
npm
|
||||
</a>
|
||||
</div>
|
||||
</nav>
|
||||
<section class="highlighted-section" data-astro-cid-zetdm5md>
|
||||
<div class="highlighted-section__content" data-astro-cid-zetdm5md>
|
||||
<h1
|
||||
title="Ayo Ayco | Software Engineer + Web Developer"
|
||||
data-astro-cid-zetdm5md
|
||||
>
|
||||
<span class="heavy-text" data-astro-cid-zetdm5md>Not</span>Found
|
||||
</h1>
|
||||
<p data-astro-cid-zetdm5md>
|
||||
I tried my best, but the resource you are looking for is not in the
|
||||
website.
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
<main data-astro-cid-zetdm5md>
|
||||
<section class="cards-section" data-astro-cid-zetdm5md>
|
||||
<h2 data-astro-cid-zetdm5md>Don't worry 🤗</h2>
|
||||
<p data-astro-cid-zetdm5md>
|
||||
For your convenience, here are some possibly interesting links:
|
||||
</p>
|
||||
<ol data-astro-cid-zetdm5md>
|
||||
<li data-astro-cid-zetdm5md>
|
||||
<a href="https://ayo.ayco.io" data-astro-cid-zetdm5md
|
||||
>Let's get you back home</a
|
||||
>
|
||||
</li>
|
||||
<li data-astro-cid-zetdm5md>
|
||||
<a href="https://ayo.ayco.io/now" data-astro-cid-zetdm5md
|
||||
>Now: What am I currently up to?</a
|
||||
>
|
||||
</li>
|
||||
<li data-astro-cid-zetdm5md>
|
||||
<a href="https://social.ayco.io" data-astro-cid-zetdm5md
|
||||
>Social / Microblog</a
|
||||
>
|
||||
</li>
|
||||
<li data-astro-cid-zetdm5md>
|
||||
<a href="https://ayo.ayco.io/showcase" data-astro-cid-zetdm5md
|
||||
>Fun Side Projects</a
|
||||
>
|
||||
</li>
|
||||
</ol>
|
||||
<p data-astro-cid-zetdm5md>
|
||||
If you still feel this is a mistake that I can fix on my end, please
|
||||
feel free to email me: ayo[at]ayco.io
|
||||
</p>
|
||||
<footer data-astro-cid-sz7xmlte>
|
||||
<ul style="list-style: none" data-astro-cid-sz7xmlte>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
© 2022-2024
|
||||
<strong data-astro-cid-sz7xmlte>Ayo Ayco</strong>. All Rights
|
||||
Reserved
|
||||
</li>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
This website
|
||||
<a
|
||||
href="https://ayos.blog/stopped-tracking-on-my-sites"
|
||||
data-astro-cid-sz7xmlte
|
||||
>does not track users</a
|
||||
>
|
||||
</li>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
See the
|
||||
<a
|
||||
href="https://ayco.io/sh/ayco.io-flask/tree"
|
||||
data-astro-cid-sz7xmlte
|
||||
>source code</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
</footer>
|
||||
</section>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
|
@ -1,562 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en" data-astro-cid-sckkx6r4>
|
||||
<head>
|
||||
<title>Ayo Ayco | Software Engineer, Web Developer, Consultant</title>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<meta name="theme-color" content="#3054bf" />
|
||||
<meta
|
||||
name="description"
|
||||
content="Professional software engineer specializing in web development with a decade of experience building web applications for both private businesses and government-funded high-impact projects utilizing web technologies, IoT, data viz/insights, remote sensing, and GIS"
|
||||
/>
|
||||
<meta name="author" content="Ayo Ayco" />
|
||||
<meta name="origin" content="https://ayo.ayco.io/" />
|
||||
<!-- Open Graph data -->
|
||||
<meta property="og:site_name" content="Ayo Ayco" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://ayo.ayco.io/" />
|
||||
<meta
|
||||
property="og:title"
|
||||
content="Ayo Ayco | Software Engineer, Web Developer, Consultant"
|
||||
/>
|
||||
<meta
|
||||
property="og:description"
|
||||
content="Professional software engineer specializing in web development with a decade of experience building web applications for both private businesses and government-funded high-impact projects utilizing web technologies, IoT, data viz/insights, remote sensing, and GIS"
|
||||
/>
|
||||
<meta property="og:image" content="/ayo.png" />
|
||||
<link rel="me" href="https://ayos.blog" />
|
||||
<link rel="me" href="https://social.ayco.io/@ayo" />
|
||||
<link rel="me" href="https://metapixl.com/@ayo" />
|
||||
<link rel="me" href="https://theres.life/@ayo" />
|
||||
<link rel="shortcut icon" type="image/png" href="static/favicon.ico" />
|
||||
<style>
|
||||
*,
|
||||
*:before,
|
||||
*:after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
* {
|
||||
margin: 0;
|
||||
}
|
||||
html,
|
||||
body {
|
||||
height: 100%;
|
||||
background: #fff;
|
||||
}
|
||||
body {
|
||||
line-height: 1.5;
|
||||
letter-spacing: 0.25px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
img,
|
||||
picture,
|
||||
video,
|
||||
canvas,
|
||||
svg,
|
||||
iframe {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
input,
|
||||
button,
|
||||
textarea,
|
||||
select {
|
||||
font: inherit;
|
||||
}
|
||||
p,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
#root,
|
||||
#__next {
|
||||
isolation: isolate;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] {
|
||||
background: var(--ayo-gradient);
|
||||
display: flex;
|
||||
margin: 0 auto;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec] {
|
||||
display: inline-block;
|
||||
text-decoration: underline;
|
||||
color: var(--text-color-light);
|
||||
padding: 0.5em 1em;
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]:hover {
|
||||
color: var(--color-brand-complement);
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec]
|
||||
a[data-astro-cid-dmqpwcec]
|
||||
svg[data-astro-cid-dmqpwcec] {
|
||||
width: 1.5rem;
|
||||
}
|
||||
#wrapper[data-astro-cid-dmqpwcec] {
|
||||
flex: 1;
|
||||
max-width: var(--content-width);
|
||||
margin: 0 auto;
|
||||
text-align: right;
|
||||
}
|
||||
@media only screen and (max-device-width: 360px) {
|
||||
#wrapper[data-astro-cid-dmqpwcec] {
|
||||
text-align: center;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
}
|
||||
main {
|
||||
margin: auto;
|
||||
max-width: var(--content-width);
|
||||
padding: 1em;
|
||||
}
|
||||
h1 {
|
||||
font-size: var(--font-size-xl);
|
||||
}
|
||||
h2 {
|
||||
font-size: var(--font-size-lg);
|
||||
}
|
||||
code {
|
||||
font-family: Menlo, Monaco, Lucida Console, Liberation Mono,
|
||||
DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace;
|
||||
}
|
||||
p,
|
||||
img,
|
||||
table,
|
||||
ul {
|
||||
margin: 1em 0;
|
||||
font-size: var(--font-size-base);
|
||||
}
|
||||
.text-gradient {
|
||||
font-weight: 900;
|
||||
background-image: var(--ayo-gradient);
|
||||
animation: pulse 4s ease-in-out infinite;
|
||||
background-size: 500% 500%;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-size: 100% 200%;
|
||||
background-position-y: 100%;
|
||||
border-radius: 0.4rem;
|
||||
}
|
||||
a {
|
||||
font-weight: 700;
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
a {
|
||||
color: var(--color-brand-complement);
|
||||
}
|
||||
}
|
||||
:root {
|
||||
--content-width: 700px;
|
||||
--font-size-sm: clamp(0.75rem, 0.2vw + 0.66rem, 0.8rem);
|
||||
--font-size-base: clamp(1rem, 0.34vw + 0.91rem, 1.19rem);
|
||||
--font-size-lg: clamp(1.2rem, 0.7vw + 1.2rem, 1.5rem);
|
||||
--font-size-xl: clamp(2.44rem, 2.38vw + 1.85rem, 3.75rem);
|
||||
--color-border: hsl(17, 24%, 90%);
|
||||
--color-link: var(--color-brand-blue-3);
|
||||
--color-brand-blue-1: #3054bf;
|
||||
--color-brand-blue-2: #203880;
|
||||
--color-brand-blue-3: #416fff;
|
||||
--color-brand-blue-4: #101c40;
|
||||
--color-brand-blue-5: #3964e6;
|
||||
--color-brand-complement: orange;
|
||||
--ayo-gradient: linear-gradient(45deg, #3054bf, #416fff);
|
||||
--text-color-dark: black;
|
||||
--text-color-light: #f8f9fa;
|
||||
--bg-dark: #343a40;
|
||||
--bg-darker: #212529;
|
||||
--bg-darkest: #000;
|
||||
}
|
||||
html,
|
||||
body,
|
||||
[data-astro-cid-sckkx6r4] {
|
||||
font-family: system-ui, sans-serif;
|
||||
font-size: var(--font-size-base);
|
||||
color: var(--text-color-dark);
|
||||
background-color: var(--text-color-light);
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
html,
|
||||
body,
|
||||
[data-astro-cid-sckkx6r4] {
|
||||
background: var(--bg-darker);
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
}
|
||||
@keyframes pulse {
|
||||
0%,
|
||||
to {
|
||||
background-position-y: 0%;
|
||||
}
|
||||
50% {
|
||||
background-position-y: 80%;
|
||||
}
|
||||
}
|
||||
footer[data-astro-cid-sz7xmlte] {
|
||||
margin-top: 1em;
|
||||
text-align: right;
|
||||
}
|
||||
footer[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte] {
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
:root {
|
||||
--link-gradient: linear-gradient(
|
||||
45deg,
|
||||
var(--color-brand-blue-1),
|
||||
var(--color-brand-blue-3) 30%,
|
||||
var(--color-border) 60%
|
||||
);
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5] {
|
||||
list-style: none;
|
||||
display: flex;
|
||||
padding: 0.15rem;
|
||||
background-size: 400%;
|
||||
border-radius: 0.5rem;
|
||||
background-position: 100%;
|
||||
background-image: var(--link-gradient);
|
||||
transition: background-position 0.6s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5] > a[data-astro-cid-dohjnao5] {
|
||||
width: 100%;
|
||||
text-decoration: none;
|
||||
padding: 1em 1.3em;
|
||||
border-radius: 0.35rem;
|
||||
background-color: #fff;
|
||||
color: var(--text-color-dark);
|
||||
}
|
||||
h2[data-astro-cid-dohjnao5] {
|
||||
margin: 0;
|
||||
transition: color 0.6s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
p[data-astro-cid-dohjnao5] {
|
||||
font-weight: 400;
|
||||
margin-top: 0.75rem;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
h2[data-astro-cid-dohjnao5] span[data-astro-cid-dohjnao5] {
|
||||
display: inline-block;
|
||||
transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5]:is(:hover, :focus-within) {
|
||||
background-position: 0;
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5]:is(:hover, :focus-within)
|
||||
h2[data-astro-cid-dohjnao5]
|
||||
span[data-astro-cid-dohjnao5] {
|
||||
will-change: transform;
|
||||
transform: translate(2px);
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.link-card[data-astro-cid-dohjnao5] > a[data-astro-cid-dohjnao5] {
|
||||
background-color: var(--bg-dark);
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
}
|
||||
h1[data-astro-cid-j7pv25f6] {
|
||||
margin: 0;
|
||||
color: #ffffffbf;
|
||||
}
|
||||
h1[data-astro-cid-j7pv25f6] span[data-astro-cid-j7pv25f6].heavy-text {
|
||||
font-weight: 900;
|
||||
color: #fff;
|
||||
}
|
||||
main[data-astro-cid-j7pv25f6] {
|
||||
max-width: 100% !important;
|
||||
}
|
||||
.now-wrapper[data-astro-cid-j7pv25f6] {
|
||||
border: 1px solid rgba(255, 255, 255, 0.2);
|
||||
border-radius: 40px;
|
||||
padding: 8px 4px;
|
||||
font-weight: 400;
|
||||
color: #fff;
|
||||
font-size: var(--font-size-sm);
|
||||
text-decoration: none;
|
||||
}
|
||||
.now-label[data-astro-cid-j7pv25f6] {
|
||||
border-radius: 40px;
|
||||
background-color: #0009;
|
||||
color: #fff;
|
||||
padding: 4px 8px;
|
||||
margin-right: 0.25em;
|
||||
text-transform: uppercase;
|
||||
font-weight: 700;
|
||||
}
|
||||
.status[data-astro-cid-j7pv25f6] {
|
||||
padding-right: 4px;
|
||||
}
|
||||
.highlighted-section[data-astro-cid-j7pv25f6] {
|
||||
background: var(--ayo-gradient);
|
||||
background-size: 500% 500%;
|
||||
animation: pulse 15s ease-in-out infinite;
|
||||
border-bottom: 1px solid var(--color-brand-blue-1);
|
||||
}
|
||||
.highlighted-section__content[data-astro-cid-j7pv25f6] {
|
||||
margin: auto;
|
||||
padding: 1em 0;
|
||||
max-width: var(--content-width);
|
||||
font-weight: 400;
|
||||
font-size: var(--font-size-lg);
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
.highlighted-section__content__profile-picture[data-astro-cid-j7pv25f6] {
|
||||
float: right;
|
||||
margin: 1em 1em 0 0;
|
||||
border: 5px solid var(--color-brand-blue-1);
|
||||
background-color: var(--color-brand-blue-1);
|
||||
display: block;
|
||||
border-radius: 50%;
|
||||
width: 140px;
|
||||
height: 140px;
|
||||
}
|
||||
.highlighted-section__content[data-astro-cid-j7pv25f6]
|
||||
ul[data-astro-cid-j7pv25f6]
|
||||
a[data-astro-cid-j7pv25f6] {
|
||||
color: #fff;
|
||||
font-weight: 400;
|
||||
}
|
||||
.highlighted-section__content[data-astro-cid-j7pv25f6]
|
||||
ul[data-astro-cid-j7pv25f6] {
|
||||
list-style-type: none;
|
||||
padding: 0;
|
||||
}
|
||||
.highlighted-section__content[data-astro-cid-j7pv25f6]
|
||||
ul[data-astro-cid-j7pv25f6]
|
||||
li[data-astro-cid-j7pv25f6] {
|
||||
padding: 5px 0;
|
||||
}
|
||||
.cards-section[data-astro-cid-j7pv25f6] {
|
||||
margin: auto;
|
||||
max-width: var(--content-width);
|
||||
}
|
||||
.cards-section__grid[data-astro-cid-j7pv25f6] {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(24ch, 1fr));
|
||||
gap: 1rem;
|
||||
padding: 0;
|
||||
}
|
||||
@media only screen and (max-device-width: 360px) {
|
||||
.now-wrapper[data-astro-cid-j7pv25f6] {
|
||||
border: 0px;
|
||||
border-radius: 0;
|
||||
font-size: var(--font-size-sm);
|
||||
width: 100%;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 1;
|
||||
-webkit-box-orient: vertical;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
.now-label[data-astro-cid-j7pv25f6] {
|
||||
display: none;
|
||||
}
|
||||
.status[data-astro-cid-j7pv25f6]:before {
|
||||
content: "Now: ";
|
||||
}
|
||||
.status[data-astro-cid-j7pv25f6] {
|
||||
text-decoration: underline;
|
||||
cursor: pointer;
|
||||
}
|
||||
.highlighted-section__content__profile-picture[data-astro-cid-j7pv25f6] {
|
||||
float: none;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
}
|
||||
}
|
||||
@media only screen and (min-device-width: 280px) and (max-device-width: 653px) {
|
||||
.highlighted-section__content[data-astro-cid-j7pv25f6] {
|
||||
padding: 1em;
|
||||
}
|
||||
.highlighted-section__content__profile-picture[data-astro-cid-j7pv25f6] {
|
||||
float: none;
|
||||
margin: 0;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
}
|
||||
.highlighted-section__content[data-astro-cid-j7pv25f6]
|
||||
ul[data-astro-cid-j7pv25f6]
|
||||
li[data-astro-cid-j7pv25f6] {
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
}
|
||||
@media only screen and (min-device-width: 360px) and (max-device-width: 812px) {
|
||||
.highlighted-section__content[data-astro-cid-j7pv25f6] {
|
||||
padding: 1em;
|
||||
}
|
||||
.highlighted-section__content[data-astro-cid-j7pv25f6]
|
||||
ul[data-astro-cid-j7pv25f6]
|
||||
li[data-astro-cid-j7pv25f6] {
|
||||
font-size: var(--font-size-base);
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body data-astro-cid-sckkx6r4>
|
||||
<nav data-astro-cid-dmqpwcec>
|
||||
<div id="wrapper" data-astro-cid-dmqpwcec>
|
||||
<a href="https://ayos.blog" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:blog"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="M3 3v18h18V3zm15 15H6v-1h12zm0-2H6v-1h12zm0-4H6V6h12z"
|
||||
/>
|
||||
</svg>
|
||||
blog </a
|
||||
><a href="https://ayco.io/@ayo" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:mastodon"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="M20.94 14c-.28 1.41-2.44 2.96-4.97 3.26-1.31.15-2.6.3-3.97.24-2.25-.11-4-.54-4-.54v.62c.32 2.22 2.22 2.35 4.03 2.42 1.82.05 3.44-.46 3.44-.46l.08 1.65s-1.28.68-3.55.81c-1.25.07-2.81-.03-4.62-.5-3.92-1.05-4.6-5.24-4.7-9.5l-.01-3.43c0-4.34 2.83-5.61 2.83-5.61C6.95 2.3 9.41 2 11.97 2h.06c2.56 0 5.02.3 6.47.96 0 0 2.83 1.27 2.83 5.61 0 0 .04 3.21-.39 5.43M18 8.91c0-1.08-.3-1.91-.85-2.56-.56-.63-1.3-.96-2.23-.96-1.06 0-1.87.41-2.42 1.23l-.5.88-.5-.88c-.56-.82-1.36-1.23-2.43-1.23-.92 0-1.66.33-2.23.96C6.29 7 6 7.83 6 8.91v5.26h2.1V9.06c0-1.06.45-1.62 1.36-1.62 1 0 1.5.65 1.5 1.93v2.79h2.07V9.37c0-1.28.5-1.93 1.51-1.93.9 0 1.35.56 1.35 1.62v5.11H18z"
|
||||
/>
|
||||
</svg>
|
||||
social </a
|
||||
><a href="https://metapixl.com/i/portfolio/ayo" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:image"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="m8.5 13.5 2.5 3 3.5-4.5 4.5 6H5m16 1V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2"
|
||||
/>
|
||||
</svg>
|
||||
photos </a
|
||||
><a href="https://www.npmjs.com/~aayco" data-astro-cid-dmqpwcec>
|
||||
<svg viewBox="0 0 24 24" data-astro-cid-dmqpwcec astro-icon="gg:npm">
|
||||
<path
|
||||
fill="currentColor"
|
||||
fill-rule="evenodd"
|
||||
d="M5 21a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2zm1-3V6h12v12h-3V9h-3v9z"
|
||||
clip-rule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
npm
|
||||
</a>
|
||||
</div>
|
||||
</nav>
|
||||
<section class="highlighted-section" data-astro-cid-j7pv25f6>
|
||||
<div class="highlighted-section__content" data-astro-cid-j7pv25f6>
|
||||
<img
|
||||
class="highlighted-section__content__profile-picture"
|
||||
alt="Ayo Ayco's picture"
|
||||
src="https://media.ayco.io/accounts/avatars/109/547/735/999/980/313/original/12bfe46c4e978562.jpeg"
|
||||
width="140"
|
||||
height="140"
|
||||
data-astro-cid-j7pv25f6
|
||||
/>
|
||||
<div class="highlighted-section__content__text" data-astro-cid-j7pv25f6>
|
||||
<h1
|
||||
title="Ayo Ayco | Software Engineer + Web Developer"
|
||||
data-astro-cid-j7pv25f6
|
||||
>
|
||||
<span class="heavy-text" data-astro-cid-j7pv25f6>Ayo</span>Ayco
|
||||
</h1>
|
||||
<ul data-astro-cid-j7pv25f6>
|
||||
<li style="display: flex; gap: 0.25em" data-astro-cid-j7pv25f6>
|
||||
<span class="icon" data-astro-cid-j7pv25f6>😱</span>
|
||||
<span class="text" data-astro-cid-j7pv25f6>Building</span>
|
||||
<a href="https://mcfly.js.org" data-astro-cid-j7pv25f6>McFly</a>
|
||||
</li>
|
||||
<li style="display: flex; gap: 0.25em" data-astro-cid-j7pv25f6>
|
||||
<span class="icon" data-astro-cid-j7pv25f6>🧸</span>
|
||||
<span class="text" data-astro-cid-j7pv25f6>Creator of</span>
|
||||
<a href="https://ayco.io/gh/cozy#readme" data-astro-cid-j7pv25f6
|
||||
>Cozy</a
|
||||
>
|
||||
</li>
|
||||
<li style="display: flex; gap: 0.25em" data-astro-cid-j7pv25f6>
|
||||
<span class="icon" data-astro-cid-j7pv25f6>🧱</span>
|
||||
<span class="text" data-astro-cid-j7pv25f6>Creator of</span>
|
||||
<a href="https://webcomponent.io" data-astro-cid-j7pv25f6
|
||||
>WebComponent.io</a
|
||||
>
|
||||
</li>
|
||||
<li style="display: flex; gap: 0.25em" data-astro-cid-j7pv25f6>
|
||||
<span class="icon" data-astro-cid-j7pv25f6>🦌</span>
|
||||
<span class="text" data-astro-cid-j7pv25f6>Contributor to</span>
|
||||
<a href="https://elk.zone/@ayo@ayco.io" data-astro-cid-j7pv25f6
|
||||
>Elk.zone</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
<a href="/now" class="now-wrapper" data-astro-cid-j7pv25f6>
|
||||
<span class="now-label" data-astro-cid-j7pv25f6>Now</span>
|
||||
<span class="status" data-astro-cid-j7pv25f6
|
||||
>Certified Software Architecture Professional</span
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<main data-astro-cid-j7pv25f6>
|
||||
<section class="cards-section" data-astro-cid-j7pv25f6>
|
||||
<ul class="cards-section__grid" data-astro-cid-j7pv25f6>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a href="/showcase" data-astro-cid-dohjnao5>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
Fun Side Projects
|
||||
<span data-astro-cid-dohjnao5> →</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>See demos of my side projects</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a
|
||||
href="https://ayco.io/cv"
|
||||
target="_blank"
|
||||
data-astro-cid-dohjnao5
|
||||
>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
CV / Resume <span data-astro-cid-dohjnao5> ↗</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>
|
||||
Download and peruse my skills and experience
|
||||
</p>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<footer data-astro-cid-sz7xmlte>
|
||||
<ul style="list-style: none" data-astro-cid-sz7xmlte>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
© 2022-2024
|
||||
<strong data-astro-cid-sz7xmlte>Ayo Ayco</strong>. All Rights
|
||||
Reserved
|
||||
</li>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
This website
|
||||
<a
|
||||
href="https://ayos.blog/stopped-tracking-on-my-sites"
|
||||
data-astro-cid-sz7xmlte
|
||||
>does not track users</a
|
||||
>
|
||||
</li>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
See the
|
||||
<a
|
||||
href="https://ayco.io/sh/ayco.io-flask/tree"
|
||||
data-astro-cid-sz7xmlte
|
||||
>source code</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
</footer>
|
||||
</section>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
|
@ -1,484 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en" data-astro-cid-sckkx6r4>
|
||||
<head>
|
||||
<title>Now</title>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<meta name="theme-color" content="#3054bf" />
|
||||
<meta name="description" content="What is Ayo Ayco currently up to?" />
|
||||
<meta name="author" content="Ayo Ayco" />
|
||||
<meta name="origin" content="https://ayo.ayco.io/now/" />
|
||||
<!-- Open Graph data -->
|
||||
<meta property="og:site_name" content="Ayo Ayco" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://ayo.ayco.io/now/" />
|
||||
<meta property="og:title" content="Now" />
|
||||
<meta
|
||||
property="og:description"
|
||||
content="What is Ayo Ayco currently up to?"
|
||||
/>
|
||||
<meta property="og:image" content="/ayo.png" />
|
||||
<link rel="me" href="https://ayos.blog" />
|
||||
<link rel="me" href="https://social.ayco.io/@ayo" />
|
||||
<link rel="me" href="https://metapixl.com/@ayo" />
|
||||
<link rel="me" href="https://theres.life/@ayo" />
|
||||
<link rel="shortcut icon" type="image/png" href="/static/favicon.ico" />
|
||||
<script>
|
||||
const title = document.title;
|
||||
const defaultTitle =
|
||||
"Ayo Ayco | Software Engineer, Web Developer, Consultant";
|
||||
if (title) {
|
||||
document.title = `${title} | ${defaultTitle}`;
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
*,
|
||||
*:before,
|
||||
*:after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
* {
|
||||
margin: 0;
|
||||
}
|
||||
html,
|
||||
body {
|
||||
height: 100%;
|
||||
background: #fff;
|
||||
}
|
||||
body {
|
||||
line-height: 1.5;
|
||||
letter-spacing: 0.25px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
img,
|
||||
picture,
|
||||
video,
|
||||
canvas,
|
||||
svg,
|
||||
iframe {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
input,
|
||||
button,
|
||||
textarea,
|
||||
select {
|
||||
font: inherit;
|
||||
}
|
||||
p,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
#root,
|
||||
#__next {
|
||||
isolation: isolate;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] {
|
||||
background: var(--ayo-gradient);
|
||||
display: flex;
|
||||
margin: 0 auto;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec] {
|
||||
display: inline-block;
|
||||
text-decoration: underline;
|
||||
color: var(--text-color-light);
|
||||
padding: 0.5em 1em;
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]:hover {
|
||||
color: var(--color-brand-complement);
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec]
|
||||
a[data-astro-cid-dmqpwcec]
|
||||
svg[data-astro-cid-dmqpwcec] {
|
||||
width: 1.5rem;
|
||||
}
|
||||
#wrapper[data-astro-cid-dmqpwcec] {
|
||||
flex: 1;
|
||||
max-width: var(--content-width);
|
||||
margin: 0 auto;
|
||||
text-align: right;
|
||||
}
|
||||
@media only screen and (max-device-width: 360px) {
|
||||
#wrapper[data-astro-cid-dmqpwcec] {
|
||||
text-align: center;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
}
|
||||
main {
|
||||
margin: auto;
|
||||
max-width: var(--content-width);
|
||||
padding: 1em;
|
||||
}
|
||||
h1 {
|
||||
font-size: var(--font-size-xl);
|
||||
}
|
||||
h2 {
|
||||
font-size: var(--font-size-lg);
|
||||
}
|
||||
code {
|
||||
font-family: Menlo, Monaco, Lucida Console, Liberation Mono,
|
||||
DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace;
|
||||
}
|
||||
p,
|
||||
img,
|
||||
table,
|
||||
ul {
|
||||
margin: 1em 0;
|
||||
font-size: var(--font-size-base);
|
||||
}
|
||||
.text-gradient {
|
||||
font-weight: 900;
|
||||
background-image: var(--ayo-gradient);
|
||||
animation: pulse 4s ease-in-out infinite;
|
||||
background-size: 500% 500%;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-size: 100% 200%;
|
||||
background-position-y: 100%;
|
||||
border-radius: 0.4rem;
|
||||
}
|
||||
a {
|
||||
font-weight: 700;
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
a {
|
||||
color: var(--color-brand-complement);
|
||||
}
|
||||
}
|
||||
:root {
|
||||
--content-width: 700px;
|
||||
--font-size-sm: clamp(0.75rem, 0.2vw + 0.66rem, 0.8rem);
|
||||
--font-size-base: clamp(1rem, 0.34vw + 0.91rem, 1.19rem);
|
||||
--font-size-lg: clamp(1.2rem, 0.7vw + 1.2rem, 1.5rem);
|
||||
--font-size-xl: clamp(2.44rem, 2.38vw + 1.85rem, 3.75rem);
|
||||
--color-border: hsl(17, 24%, 90%);
|
||||
--color-link: var(--color-brand-blue-3);
|
||||
--color-brand-blue-1: #3054bf;
|
||||
--color-brand-blue-2: #203880;
|
||||
--color-brand-blue-3: #416fff;
|
||||
--color-brand-blue-4: #101c40;
|
||||
--color-brand-blue-5: #3964e6;
|
||||
--color-brand-complement: orange;
|
||||
--ayo-gradient: linear-gradient(45deg, #3054bf, #416fff);
|
||||
--text-color-dark: black;
|
||||
--text-color-light: #f8f9fa;
|
||||
--bg-dark: #343a40;
|
||||
--bg-darker: #212529;
|
||||
--bg-darkest: #000;
|
||||
}
|
||||
html,
|
||||
body,
|
||||
[data-astro-cid-sckkx6r4] {
|
||||
font-family: system-ui, sans-serif;
|
||||
font-size: var(--font-size-base);
|
||||
color: var(--text-color-dark);
|
||||
background-color: var(--text-color-light);
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
html,
|
||||
body,
|
||||
[data-astro-cid-sckkx6r4] {
|
||||
background: var(--bg-darker);
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
}
|
||||
@keyframes pulse {
|
||||
0%,
|
||||
to {
|
||||
background-position-y: 0%;
|
||||
}
|
||||
50% {
|
||||
background-position-y: 80%;
|
||||
}
|
||||
}
|
||||
footer[data-astro-cid-sz7xmlte] {
|
||||
margin-top: 1em;
|
||||
text-align: right;
|
||||
}
|
||||
footer[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte] {
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
main[data-astro-cid-lfnvi74r] {
|
||||
margin: auto;
|
||||
padding: 1em;
|
||||
max-width: var(--content-width);
|
||||
}
|
||||
.text-gradient[data-astro-cid-lfnvi74r] {
|
||||
font-weight: 900;
|
||||
background-image: var(--ayo-gradient);
|
||||
animation: pulse 4s ease-in-out infinite;
|
||||
background-size: 500% 500%;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-size: 100% 200%;
|
||||
background-position-y: 100%;
|
||||
border-radius: 0.4rem;
|
||||
}
|
||||
.highlighted-content[data-astro-cid-lfnvi74r] {
|
||||
margin: 1rem 0;
|
||||
background: #4f39fa;
|
||||
padding: 1rem;
|
||||
border-radius: 0.4rem;
|
||||
color: var(--color-bg);
|
||||
}
|
||||
.highlighted-content[data-astro-cid-lfnvi74r]
|
||||
code[data-astro-cid-lfnvi74r] {
|
||||
font-size: var(--font-size-base);
|
||||
border: 0.1em solid var(--color-border);
|
||||
border-radius: 4px;
|
||||
padding: 0.15em 0.25em;
|
||||
}
|
||||
.link-card-grid[data-astro-cid-lfnvi74r] {
|
||||
display: grid;
|
||||
gap: 1rem;
|
||||
padding: 0;
|
||||
}
|
||||
main[data-astro-cid-hc67wfev] {
|
||||
margin: auto;
|
||||
padding: 1em;
|
||||
max-width: var(--content-width);
|
||||
}
|
||||
.text-gradient[data-astro-cid-hc67wfev] {
|
||||
font-weight: 900;
|
||||
background-image: var(--ayo-gradient);
|
||||
animation: pulse 4s ease-in-out infinite;
|
||||
background-size: 500% 500%;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-size: 100% 200%;
|
||||
background-position-y: 100%;
|
||||
border-radius: 0.4rem;
|
||||
}
|
||||
.highlighted-content[data-astro-cid-hc67wfev] {
|
||||
margin: 1rem 0;
|
||||
background: #4f39fa;
|
||||
padding: 1rem;
|
||||
border-radius: 0.4rem;
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
.highlighted-content[data-astro-cid-hc67wfev]
|
||||
code[data-astro-cid-hc67wfev] {
|
||||
font-size: var(--font-size-base);
|
||||
border: 0.1em solid var(--color-border);
|
||||
border-radius: 4px;
|
||||
padding: 0.15em 0.25em;
|
||||
}
|
||||
.link-card-grid[data-astro-cid-hc67wfev] {
|
||||
display: grid;
|
||||
gap: 1rem;
|
||||
padding: 0;
|
||||
}
|
||||
main[data-astro-cid-g2ggi6j6] {
|
||||
margin: auto;
|
||||
padding: 1em;
|
||||
max-width: var(--content-width);
|
||||
}
|
||||
.text-gradient[data-astro-cid-g2ggi6j6] {
|
||||
font-weight: 900;
|
||||
background-image: var(--ayo-gradient);
|
||||
animation: pulse 4s ease-in-out infinite;
|
||||
background-size: 500% 500%;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-size: 100% 200%;
|
||||
background-position-y: 100%;
|
||||
border-radius: 0.4rem;
|
||||
}
|
||||
.highlighted-content[data-astro-cid-g2ggi6j6] {
|
||||
margin: 1rem 0;
|
||||
background: #4f39fa;
|
||||
padding: 1rem;
|
||||
border-radius: 0.4rem;
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
.highlighted-content[data-astro-cid-g2ggi6j6]
|
||||
code[data-astro-cid-g2ggi6j6] {
|
||||
font-size: var(--font-size-base);
|
||||
border: 0.1em solid var(--color-border);
|
||||
border-radius: 4px;
|
||||
padding: 0.15em 0.25em;
|
||||
}
|
||||
.link-card-grid[data-astro-cid-g2ggi6j6] {
|
||||
display: grid;
|
||||
gap: 1rem;
|
||||
padding: 0;
|
||||
}
|
||||
main[data-astro-cid-vbmtzxad] {
|
||||
margin: auto;
|
||||
padding: 1em;
|
||||
max-width: var(--content-width);
|
||||
}
|
||||
.text-gradient[data-astro-cid-vbmtzxad] {
|
||||
font-weight: 900;
|
||||
background-image: var(--ayo-gradient);
|
||||
animation: pulse 4s ease-in-out infinite;
|
||||
background-size: 500% 500%;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-size: 100% 200%;
|
||||
background-position-y: 100%;
|
||||
border-radius: 0.4rem;
|
||||
}
|
||||
.highlighted-content[data-astro-cid-vbmtzxad] {
|
||||
margin: 1rem 0;
|
||||
background: #4f39fa;
|
||||
padding: 1rem;
|
||||
border-radius: 0.4rem;
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
.highlighted-content[data-astro-cid-vbmtzxad]
|
||||
code[data-astro-cid-vbmtzxad] {
|
||||
font-size: var(--font-size-base);
|
||||
border: 0.1em solid var(--color-border);
|
||||
border-radius: 4px;
|
||||
padding: 0.15em 0.25em;
|
||||
}
|
||||
.link-card-grid[data-astro-cid-vbmtzxad] {
|
||||
display: grid;
|
||||
gap: 1rem;
|
||||
padding: 0;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body data-astro-cid-sckkx6r4>
|
||||
<nav data-astro-cid-dmqpwcec>
|
||||
<div id="wrapper" data-astro-cid-dmqpwcec>
|
||||
<a href="/" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:home"
|
||||
>
|
||||
<path fill="currentColor" d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z" />
|
||||
</svg>
|
||||
home </a
|
||||
><a href="https://ayos.blog" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:blog"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="M3 3v18h18V3zm15 15H6v-1h12zm0-2H6v-1h12zm0-4H6V6h12z"
|
||||
/>
|
||||
</svg>
|
||||
blog </a
|
||||
><a href="https://ayco.io/@ayo" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:mastodon"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="M20.94 14c-.28 1.41-2.44 2.96-4.97 3.26-1.31.15-2.6.3-3.97.24-2.25-.11-4-.54-4-.54v.62c.32 2.22 2.22 2.35 4.03 2.42 1.82.05 3.44-.46 3.44-.46l.08 1.65s-1.28.68-3.55.81c-1.25.07-2.81-.03-4.62-.5-3.92-1.05-4.6-5.24-4.7-9.5l-.01-3.43c0-4.34 2.83-5.61 2.83-5.61C6.95 2.3 9.41 2 11.97 2h.06c2.56 0 5.02.3 6.47.96 0 0 2.83 1.27 2.83 5.61 0 0 .04 3.21-.39 5.43M18 8.91c0-1.08-.3-1.91-.85-2.56-.56-.63-1.3-.96-2.23-.96-1.06 0-1.87.41-2.42 1.23l-.5.88-.5-.88c-.56-.82-1.36-1.23-2.43-1.23-.92 0-1.66.33-2.23.96C6.29 7 6 7.83 6 8.91v5.26h2.1V9.06c0-1.06.45-1.62 1.36-1.62 1 0 1.5.65 1.5 1.93v2.79h2.07V9.37c0-1.28.5-1.93 1.51-1.93.9 0 1.35.56 1.35 1.62v5.11H18z"
|
||||
/>
|
||||
</svg>
|
||||
social </a
|
||||
><a href="https://metapixl.com/i/portfolio/ayo" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:image"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="m8.5 13.5 2.5 3 3.5-4.5 4.5 6H5m16 1V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2"
|
||||
/>
|
||||
</svg>
|
||||
photos </a
|
||||
><a href="https://www.npmjs.com/~aayco" data-astro-cid-dmqpwcec>
|
||||
<svg viewBox="0 0 24 24" data-astro-cid-dmqpwcec astro-icon="gg:npm">
|
||||
<path
|
||||
fill="currentColor"
|
||||
fill-rule="evenodd"
|
||||
d="M5 21a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2zm1-3V6h12v12h-3V9h-3v9z"
|
||||
clip-rule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
npm
|
||||
</a>
|
||||
</div>
|
||||
</nav>
|
||||
<main data-astro-cid-lfnvi74r>
|
||||
<h1 data-astro-cid-lfnvi74r>
|
||||
<span class="text-gradient" data-astro-cid-lfnvi74r>Now</span>
|
||||
</h1>
|
||||
<em data-astro-cid-lfnvi74r>What am I currently up to?</em>
|
||||
<p data-astro-cid-lfnvi74r>
|
||||
🎉 Thrilled to share I am now a Certified Professional for Software
|
||||
Architecture (CPSA-F®) after having completed and passed the
|
||||
<a href="https://www.isaqb.org/" target="_blank" data-astro-cid-lfnvi74r
|
||||
>iSAQB® – International Software Architecture Qualification Board</a
|
||||
>'s intensive training and examination.
|
||||
</p>
|
||||
<p data-astro-cid-lfnvi74r>
|
||||
This means I have the necessary basis for facilitating / participating
|
||||
in architectural design activities for software development.
|
||||
</p>
|
||||
<p data-astro-cid-lfnvi74r>
|
||||
Having a consistent language in Software Architecture is beneficial when
|
||||
communicating with stakeholders and clarifying consistent patterns and
|
||||
principles that guide the development of software products.
|
||||
</p>
|
||||
<!-- <h2>Previously...</h2>
|
||||
<ul>
|
||||
<li>
|
||||
<a href="/now/and-then/posts/01-19-2023" title="01-19-2023">
|
||||
01-19-2023
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="/now/and-then/posts/06-23-2023" title="06-23-2023">
|
||||
06-23-2023
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="/now/and-then/posts/09-20-2022" title="09-20-2022">
|
||||
09-20-2022
|
||||
</a>
|
||||
</li>
|
||||
</ul> -->
|
||||
<hr data-astro-cid-lfnvi74r />
|
||||
<em data-astro-cid-lfnvi74r
|
||||
><a href="https://nownownow.com/about" data-astro-cid-lfnvi74r
|
||||
>About now pages</a
|
||||
></em
|
||||
>
|
||||
<footer data-astro-cid-sz7xmlte>
|
||||
<ul style="list-style: none" data-astro-cid-sz7xmlte>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
© 2022-2024 <strong data-astro-cid-sz7xmlte>Ayo Ayco</strong>.
|
||||
All Rights Reserved
|
||||
</li>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
This website
|
||||
<a
|
||||
href="https://ayos.blog/stopped-tracking-on-my-sites"
|
||||
data-astro-cid-sz7xmlte
|
||||
>does not track users</a
|
||||
>
|
||||
</li>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
See the
|
||||
<a
|
||||
href="https://ayco.io/sh/ayco.io-flask/tree"
|
||||
data-astro-cid-sz7xmlte
|
||||
>source code</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
</footer>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
|
@ -1,438 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en" data-astro-cid-sckkx6r4>
|
||||
<head>
|
||||
<title>Fun Side Projects</title>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<meta name="theme-color" content="#3054bf" />
|
||||
<meta
|
||||
name="description"
|
||||
content="See demos of side projects Ayo Ayco created"
|
||||
/>
|
||||
<meta name="author" content="Ayo Ayco" />
|
||||
<meta name="origin" content="https://ayo.ayco.io/showcase/" />
|
||||
<!-- Open Graph data -->
|
||||
<meta property="og:site_name" content="Ayo Ayco" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://ayo.ayco.io/showcase/" />
|
||||
<meta property="og:title" content="Fun Side Projects" />
|
||||
<meta
|
||||
property="og:description"
|
||||
content="See demos of side projects Ayo Ayco created"
|
||||
/>
|
||||
<meta property="og:image" content="/ayo.png" />
|
||||
<link rel="me" href="https://ayos.blog" />
|
||||
<link rel="me" href="https://social.ayco.io/@ayo" />
|
||||
<link rel="me" href="https://metapixl.com/@ayo" />
|
||||
<link rel="me" href="https://theres.life/@ayo" />
|
||||
<link rel="shortcut icon" type="image/png" href="/static/favicon.ico" />
|
||||
<script>
|
||||
const title = document.title;
|
||||
const defaultTitle =
|
||||
"Ayo Ayco | Software Engineer, Web Developer, Consultant";
|
||||
if (title) {
|
||||
document.title = `${title} | ${defaultTitle}`;
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
*,
|
||||
*:before,
|
||||
*:after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
* {
|
||||
margin: 0;
|
||||
}
|
||||
html,
|
||||
body {
|
||||
height: 100%;
|
||||
background: #fff;
|
||||
}
|
||||
body {
|
||||
line-height: 1.5;
|
||||
letter-spacing: 0.25px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
img,
|
||||
picture,
|
||||
video,
|
||||
canvas,
|
||||
svg,
|
||||
iframe {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
input,
|
||||
button,
|
||||
textarea,
|
||||
select {
|
||||
font: inherit;
|
||||
}
|
||||
p,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
#root,
|
||||
#__next {
|
||||
isolation: isolate;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] {
|
||||
background: var(--ayo-gradient);
|
||||
display: flex;
|
||||
margin: 0 auto;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec] {
|
||||
display: inline-block;
|
||||
text-decoration: underline;
|
||||
color: var(--text-color-light);
|
||||
padding: 0.5em 1em;
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]:hover {
|
||||
color: var(--color-brand-complement);
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec]
|
||||
a[data-astro-cid-dmqpwcec]
|
||||
svg[data-astro-cid-dmqpwcec] {
|
||||
width: 1.5rem;
|
||||
}
|
||||
#wrapper[data-astro-cid-dmqpwcec] {
|
||||
flex: 1;
|
||||
max-width: var(--content-width);
|
||||
margin: 0 auto;
|
||||
text-align: right;
|
||||
}
|
||||
@media only screen and (max-device-width: 360px) {
|
||||
#wrapper[data-astro-cid-dmqpwcec] {
|
||||
text-align: center;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
}
|
||||
main {
|
||||
margin: auto;
|
||||
max-width: var(--content-width);
|
||||
padding: 1em;
|
||||
}
|
||||
h1 {
|
||||
font-size: var(--font-size-xl);
|
||||
}
|
||||
h2 {
|
||||
font-size: var(--font-size-lg);
|
||||
}
|
||||
code {
|
||||
font-family: Menlo, Monaco, Lucida Console, Liberation Mono,
|
||||
DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace;
|
||||
}
|
||||
p,
|
||||
img,
|
||||
table,
|
||||
ul {
|
||||
margin: 1em 0;
|
||||
font-size: var(--font-size-base);
|
||||
}
|
||||
.text-gradient {
|
||||
font-weight: 900;
|
||||
background-image: var(--ayo-gradient);
|
||||
animation: pulse 4s ease-in-out infinite;
|
||||
background-size: 500% 500%;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-size: 100% 200%;
|
||||
background-position-y: 100%;
|
||||
border-radius: 0.4rem;
|
||||
}
|
||||
a {
|
||||
font-weight: 700;
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
a {
|
||||
color: var(--color-brand-complement);
|
||||
}
|
||||
}
|
||||
:root {
|
||||
--content-width: 700px;
|
||||
--font-size-sm: clamp(0.75rem, 0.2vw + 0.66rem, 0.8rem);
|
||||
--font-size-base: clamp(1rem, 0.34vw + 0.91rem, 1.19rem);
|
||||
--font-size-lg: clamp(1.2rem, 0.7vw + 1.2rem, 1.5rem);
|
||||
--font-size-xl: clamp(2.44rem, 2.38vw + 1.85rem, 3.75rem);
|
||||
--color-border: hsl(17, 24%, 90%);
|
||||
--color-link: var(--color-brand-blue-3);
|
||||
--color-brand-blue-1: #3054bf;
|
||||
--color-brand-blue-2: #203880;
|
||||
--color-brand-blue-3: #416fff;
|
||||
--color-brand-blue-4: #101c40;
|
||||
--color-brand-blue-5: #3964e6;
|
||||
--color-brand-complement: orange;
|
||||
--ayo-gradient: linear-gradient(45deg, #3054bf, #416fff);
|
||||
--text-color-dark: black;
|
||||
--text-color-light: #f8f9fa;
|
||||
--bg-dark: #343a40;
|
||||
--bg-darker: #212529;
|
||||
--bg-darkest: #000;
|
||||
}
|
||||
html,
|
||||
body,
|
||||
[data-astro-cid-sckkx6r4] {
|
||||
font-family: system-ui, sans-serif;
|
||||
font-size: var(--font-size-base);
|
||||
color: var(--text-color-dark);
|
||||
background-color: var(--text-color-light);
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
html,
|
||||
body,
|
||||
[data-astro-cid-sckkx6r4] {
|
||||
background: var(--bg-darker);
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
}
|
||||
@keyframes pulse {
|
||||
0%,
|
||||
to {
|
||||
background-position-y: 0%;
|
||||
}
|
||||
50% {
|
||||
background-position-y: 80%;
|
||||
}
|
||||
}
|
||||
footer[data-astro-cid-sz7xmlte] {
|
||||
margin-top: 1em;
|
||||
text-align: right;
|
||||
}
|
||||
footer[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte] {
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
:root {
|
||||
--link-gradient: linear-gradient(
|
||||
45deg,
|
||||
var(--color-brand-blue-1),
|
||||
var(--color-brand-blue-3) 30%,
|
||||
var(--color-border) 60%
|
||||
);
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5] {
|
||||
list-style: none;
|
||||
display: flex;
|
||||
padding: 0.15rem;
|
||||
background-size: 400%;
|
||||
border-radius: 0.5rem;
|
||||
background-position: 100%;
|
||||
background-image: var(--link-gradient);
|
||||
transition: background-position 0.6s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5] > a[data-astro-cid-dohjnao5] {
|
||||
width: 100%;
|
||||
text-decoration: none;
|
||||
padding: 1em 1.3em;
|
||||
border-radius: 0.35rem;
|
||||
background-color: #fff;
|
||||
color: var(--text-color-dark);
|
||||
}
|
||||
h2[data-astro-cid-dohjnao5] {
|
||||
margin: 0;
|
||||
transition: color 0.6s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
p[data-astro-cid-dohjnao5] {
|
||||
font-weight: 400;
|
||||
margin-top: 0.75rem;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
h2[data-astro-cid-dohjnao5] span[data-astro-cid-dohjnao5] {
|
||||
display: inline-block;
|
||||
transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5]:is(:hover, :focus-within) {
|
||||
background-position: 0;
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5]:is(:hover, :focus-within)
|
||||
h2[data-astro-cid-dohjnao5]
|
||||
span[data-astro-cid-dohjnao5] {
|
||||
will-change: transform;
|
||||
transform: translate(2px);
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.link-card[data-astro-cid-dohjnao5] > a[data-astro-cid-dohjnao5] {
|
||||
background-color: var(--bg-dark);
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
}
|
||||
ul[data-astro-cid-w3h7vj4w] {
|
||||
list-style: none;
|
||||
display: grid;
|
||||
gap: 1rem;
|
||||
padding: 0;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body data-astro-cid-sckkx6r4>
|
||||
<nav data-astro-cid-dmqpwcec>
|
||||
<div id="wrapper" data-astro-cid-dmqpwcec>
|
||||
<a href="/" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:home"
|
||||
>
|
||||
<path fill="currentColor" d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z" />
|
||||
</svg>
|
||||
home </a
|
||||
><a href="https://ayos.blog" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:blog"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="M3 3v18h18V3zm15 15H6v-1h12zm0-2H6v-1h12zm0-4H6V6h12z"
|
||||
/>
|
||||
</svg>
|
||||
blog </a
|
||||
><a href="https://ayco.io/@ayo" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:mastodon"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="M20.94 14c-.28 1.41-2.44 2.96-4.97 3.26-1.31.15-2.6.3-3.97.24-2.25-.11-4-.54-4-.54v.62c.32 2.22 2.22 2.35 4.03 2.42 1.82.05 3.44-.46 3.44-.46l.08 1.65s-1.28.68-3.55.81c-1.25.07-2.81-.03-4.62-.5-3.92-1.05-4.6-5.24-4.7-9.5l-.01-3.43c0-4.34 2.83-5.61 2.83-5.61C6.95 2.3 9.41 2 11.97 2h.06c2.56 0 5.02.3 6.47.96 0 0 2.83 1.27 2.83 5.61 0 0 .04 3.21-.39 5.43M18 8.91c0-1.08-.3-1.91-.85-2.56-.56-.63-1.3-.96-2.23-.96-1.06 0-1.87.41-2.42 1.23l-.5.88-.5-.88c-.56-.82-1.36-1.23-2.43-1.23-.92 0-1.66.33-2.23.96C6.29 7 6 7.83 6 8.91v5.26h2.1V9.06c0-1.06.45-1.62 1.36-1.62 1 0 1.5.65 1.5 1.93v2.79h2.07V9.37c0-1.28.5-1.93 1.51-1.93.9 0 1.35.56 1.35 1.62v5.11H18z"
|
||||
/>
|
||||
</svg>
|
||||
social </a
|
||||
><a href="https://metapixl.com/i/portfolio/ayo" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:image"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="m8.5 13.5 2.5 3 3.5-4.5 4.5 6H5m16 1V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2"
|
||||
/>
|
||||
</svg>
|
||||
photos </a
|
||||
><a href="https://www.npmjs.com/~aayco" data-astro-cid-dmqpwcec>
|
||||
<svg viewBox="0 0 24 24" data-astro-cid-dmqpwcec astro-icon="gg:npm">
|
||||
<path
|
||||
fill="currentColor"
|
||||
fill-rule="evenodd"
|
||||
d="M5 21a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2zm1-3V6h12v12h-3V9h-3v9z"
|
||||
clip-rule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
npm
|
||||
</a>
|
||||
</div>
|
||||
</nav>
|
||||
<main data-astro-cid-w3h7vj4w>
|
||||
<h1 data-astro-cid-w3h7vj4w>
|
||||
Fun
|
||||
<span class="text-gradient" data-astro-cid-w3h7vj4w>Side Projects</span>
|
||||
</h1>
|
||||
<p data-astro-cid-w3h7vj4w>
|
||||
See more of my previous projects at
|
||||
<a href="https://ayos.blog/projects" data-astro-cid-w3h7vj4w>my blog</a
|
||||
>.
|
||||
</p>
|
||||
<ul data-astro-cid-w3h7vj4w>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a href="/stuff" data-astro-cid-dohjnao5>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
Small Stuff 🧱 <span data-astro-cid-dohjnao5> →</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>Building blocks for projects</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a
|
||||
href="https://ayco.io/gh/cozy#readme"
|
||||
target="_blank"
|
||||
data-astro-cid-dohjnao5
|
||||
>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
Cozy 🧸 <span data-astro-cid-dohjnao5> ↗</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>Your modern-day reading assistant</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a
|
||||
href="https://kaboom.ayco.io"
|
||||
target="_blank"
|
||||
data-astro-cid-dohjnao5
|
||||
>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
Kaboom! <span data-astro-cid-dohjnao5> ↗</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>
|
||||
Simple physics simulation with Matter.js 👨🏻🔬
|
||||
</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a href="https://mnswpr.com" target="_blank" data-astro-cid-dohjnao5>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
Minesweeper <span data-astro-cid-dohjnao5> ↗</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>
|
||||
Recreated the classic game for the web 💣
|
||||
</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a href="https://github.com/astro-reactive/astro-reactive" target="_blank" data-astro-cid-dohjnao5>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
Reactive Form <span data-astro-cid-dohjnao5> ↗</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>
|
||||
The reactive form component for Astro 🔥
|
||||
</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a href="https://ayco.io/gh/astro-github-stats" target="_blank" data-astro-cid-dohjnao5>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
GitHub Stats <span data-astro-cid-dohjnao5> ↗</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>
|
||||
Embed GitHub stats on your Astro page ✨
|
||||
</p>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<footer data-astro-cid-sz7xmlte>
|
||||
<ul style="list-style: none" data-astro-cid-sz7xmlte>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
© 2022-2024 <strong data-astro-cid-sz7xmlte>Ayo Ayco</strong>.
|
||||
All Rights Reserved
|
||||
</li>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
This website
|
||||
<a
|
||||
href="https://ayos.blog/stopped-tracking-on-my-sites"
|
||||
data-astro-cid-sz7xmlte
|
||||
>does not track users</a
|
||||
>
|
||||
</li>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
See the
|
||||
<a
|
||||
href="https://ayco.io/sh/ayco.io-flask/tree"
|
||||
data-astro-cid-sz7xmlte
|
||||
>source code</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
</footer>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
|
@ -1,417 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en" data-astro-cid-sckkx6r4>
|
||||
<head>
|
||||
<title>Stuff: Smaller Building Blocks</title>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<meta name="theme-color" content="#3054bf" />
|
||||
<meta
|
||||
name="description"
|
||||
content="See demos of side projects Ayo Ayco created"
|
||||
/>
|
||||
<meta name="author" content="Ayo Ayco" />
|
||||
<meta name="origin" content="https://ayo.ayco.io/stuff/" />
|
||||
<!-- Open Graph data -->
|
||||
<meta property="og:site_name" content="Ayo Ayco" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://ayo.ayco.io/stuff/" />
|
||||
<meta property="og:title" content="Stuff: Smaller Building Blocks" />
|
||||
<meta
|
||||
property="og:description"
|
||||
content="See demos of side projects Ayo Ayco created"
|
||||
/>
|
||||
<meta property="og:image" content="/ayo.png" />
|
||||
<link rel="me" href="https://ayos.blog" />
|
||||
<link rel="me" href="https://social.ayco.io/@ayo" />
|
||||
<link rel="me" href="https://metapixl.com/@ayo" />
|
||||
<link rel="me" href="https://theres.life/@ayo" />
|
||||
<link rel="shortcut icon" type="image/png" href="/static/favicon.ico" />
|
||||
<script>
|
||||
const title = document.title;
|
||||
const defaultTitle =
|
||||
"Ayo Ayco | Software Engineer, Web Developer, Consultant";
|
||||
if (title) {
|
||||
document.title = `${title} | ${defaultTitle}`;
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
*,
|
||||
*:before,
|
||||
*:after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
* {
|
||||
margin: 0;
|
||||
}
|
||||
html,
|
||||
body {
|
||||
height: 100%;
|
||||
background: #fff;
|
||||
}
|
||||
body {
|
||||
line-height: 1.5;
|
||||
letter-spacing: 0.25px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
img,
|
||||
picture,
|
||||
video,
|
||||
canvas,
|
||||
svg,
|
||||
iframe {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
input,
|
||||
button,
|
||||
textarea,
|
||||
select {
|
||||
font: inherit;
|
||||
}
|
||||
p,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
#root,
|
||||
#__next {
|
||||
isolation: isolate;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] {
|
||||
background: var(--ayo-gradient);
|
||||
display: flex;
|
||||
margin: 0 auto;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec] {
|
||||
display: inline-block;
|
||||
text-decoration: underline;
|
||||
color: var(--text-color-light);
|
||||
padding: 0.5em 1em;
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]:hover {
|
||||
color: var(--color-brand-complement);
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec]
|
||||
a[data-astro-cid-dmqpwcec]
|
||||
svg[data-astro-cid-dmqpwcec] {
|
||||
width: 1.5rem;
|
||||
}
|
||||
#wrapper[data-astro-cid-dmqpwcec] {
|
||||
flex: 1;
|
||||
max-width: var(--content-width);
|
||||
margin: 0 auto;
|
||||
text-align: right;
|
||||
}
|
||||
@media only screen and (max-device-width: 360px) {
|
||||
#wrapper[data-astro-cid-dmqpwcec] {
|
||||
text-align: center;
|
||||
}
|
||||
nav[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
}
|
||||
main {
|
||||
margin: auto;
|
||||
max-width: var(--content-width);
|
||||
padding: 1em;
|
||||
}
|
||||
h1 {
|
||||
font-size: var(--font-size-xl);
|
||||
}
|
||||
h2 {
|
||||
font-size: var(--font-size-lg);
|
||||
}
|
||||
code {
|
||||
font-family: Menlo, Monaco, Lucida Console, Liberation Mono,
|
||||
DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace;
|
||||
}
|
||||
p,
|
||||
img,
|
||||
table,
|
||||
ul {
|
||||
margin: 1em 0;
|
||||
font-size: var(--font-size-base);
|
||||
}
|
||||
.text-gradient {
|
||||
font-weight: 900;
|
||||
background-image: var(--ayo-gradient);
|
||||
animation: pulse 4s ease-in-out infinite;
|
||||
background-size: 500% 500%;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-size: 100% 200%;
|
||||
background-position-y: 100%;
|
||||
border-radius: 0.4rem;
|
||||
}
|
||||
a {
|
||||
font-weight: 700;
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
a {
|
||||
color: var(--color-brand-complement);
|
||||
}
|
||||
}
|
||||
:root {
|
||||
--content-width: 700px;
|
||||
--font-size-sm: clamp(0.75rem, 0.2vw + 0.66rem, 0.8rem);
|
||||
--font-size-base: clamp(1rem, 0.34vw + 0.91rem, 1.19rem);
|
||||
--font-size-lg: clamp(1.2rem, 0.7vw + 1.2rem, 1.5rem);
|
||||
--font-size-xl: clamp(2.44rem, 2.38vw + 1.85rem, 3.75rem);
|
||||
--color-border: hsl(17, 24%, 90%);
|
||||
--color-link: var(--color-brand-blue-3);
|
||||
--color-brand-blue-1: #3054bf;
|
||||
--color-brand-blue-2: #203880;
|
||||
--color-brand-blue-3: #416fff;
|
||||
--color-brand-blue-4: #101c40;
|
||||
--color-brand-blue-5: #3964e6;
|
||||
--color-brand-complement: orange;
|
||||
--ayo-gradient: linear-gradient(45deg, #3054bf, #416fff);
|
||||
--text-color-dark: black;
|
||||
--text-color-light: #f8f9fa;
|
||||
--bg-dark: #343a40;
|
||||
--bg-darker: #212529;
|
||||
--bg-darkest: #000;
|
||||
}
|
||||
html,
|
||||
body,
|
||||
[data-astro-cid-sckkx6r4] {
|
||||
font-family: system-ui, sans-serif;
|
||||
font-size: var(--font-size-base);
|
||||
color: var(--text-color-dark);
|
||||
background-color: var(--text-color-light);
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
html,
|
||||
body,
|
||||
[data-astro-cid-sckkx6r4] {
|
||||
background: var(--bg-darker);
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
}
|
||||
@keyframes pulse {
|
||||
0%,
|
||||
to {
|
||||
background-position-y: 0%;
|
||||
}
|
||||
50% {
|
||||
background-position-y: 80%;
|
||||
}
|
||||
}
|
||||
footer[data-astro-cid-sz7xmlte] {
|
||||
margin-top: 1em;
|
||||
text-align: right;
|
||||
}
|
||||
footer[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte] {
|
||||
font-size: var(--font-size-sm);
|
||||
}
|
||||
:root {
|
||||
--link-gradient: linear-gradient(
|
||||
45deg,
|
||||
var(--color-brand-blue-1),
|
||||
var(--color-brand-blue-3) 30%,
|
||||
var(--color-border) 60%
|
||||
);
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5] {
|
||||
list-style: none;
|
||||
display: flex;
|
||||
padding: 0.15rem;
|
||||
background-size: 400%;
|
||||
border-radius: 0.5rem;
|
||||
background-position: 100%;
|
||||
background-image: var(--link-gradient);
|
||||
transition: background-position 0.6s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5] > a[data-astro-cid-dohjnao5] {
|
||||
width: 100%;
|
||||
text-decoration: none;
|
||||
padding: 1em 1.3em;
|
||||
border-radius: 0.35rem;
|
||||
background-color: #fff;
|
||||
color: var(--text-color-dark);
|
||||
}
|
||||
h2[data-astro-cid-dohjnao5] {
|
||||
margin: 0;
|
||||
transition: color 0.6s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
p[data-astro-cid-dohjnao5] {
|
||||
font-weight: 400;
|
||||
margin-top: 0.75rem;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
h2[data-astro-cid-dohjnao5] span[data-astro-cid-dohjnao5] {
|
||||
display: inline-block;
|
||||
transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5]:is(:hover, :focus-within) {
|
||||
background-position: 0;
|
||||
}
|
||||
.link-card[data-astro-cid-dohjnao5]:is(:hover, :focus-within)
|
||||
h2[data-astro-cid-dohjnao5]
|
||||
span[data-astro-cid-dohjnao5] {
|
||||
will-change: transform;
|
||||
transform: translate(2px);
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.link-card[data-astro-cid-dohjnao5] > a[data-astro-cid-dohjnao5] {
|
||||
background-color: var(--bg-dark);
|
||||
color: var(--text-color-light);
|
||||
}
|
||||
}
|
||||
ul[data-astro-cid-2zbi74ef] {
|
||||
list-style: none;
|
||||
display: grid;
|
||||
gap: 1rem;
|
||||
padding: 0;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body data-astro-cid-sckkx6r4>
|
||||
<nav data-astro-cid-dmqpwcec>
|
||||
<div id="wrapper" data-astro-cid-dmqpwcec>
|
||||
<a href="/" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:home"
|
||||
>
|
||||
<path fill="currentColor" d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z" />
|
||||
</svg>
|
||||
home </a
|
||||
><a href="https://ayos.blog" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:blog"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="M3 3v18h18V3zm15 15H6v-1h12zm0-2H6v-1h12zm0-4H6V6h12z"
|
||||
/>
|
||||
</svg>
|
||||
blog </a
|
||||
><a href="https://ayco.io/@ayo" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:mastodon"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="M20.94 14c-.28 1.41-2.44 2.96-4.97 3.26-1.31.15-2.6.3-3.97.24-2.25-.11-4-.54-4-.54v.62c.32 2.22 2.22 2.35 4.03 2.42 1.82.05 3.44-.46 3.44-.46l.08 1.65s-1.28.68-3.55.81c-1.25.07-2.81-.03-4.62-.5-3.92-1.05-4.6-5.24-4.7-9.5l-.01-3.43c0-4.34 2.83-5.61 2.83-5.61C6.95 2.3 9.41 2 11.97 2h.06c2.56 0 5.02.3 6.47.96 0 0 2.83 1.27 2.83 5.61 0 0 .04 3.21-.39 5.43M18 8.91c0-1.08-.3-1.91-.85-2.56-.56-.63-1.3-.96-2.23-.96-1.06 0-1.87.41-2.42 1.23l-.5.88-.5-.88c-.56-.82-1.36-1.23-2.43-1.23-.92 0-1.66.33-2.23.96C6.29 7 6 7.83 6 8.91v5.26h2.1V9.06c0-1.06.45-1.62 1.36-1.62 1 0 1.5.65 1.5 1.93v2.79h2.07V9.37c0-1.28.5-1.93 1.51-1.93.9 0 1.35.56 1.35 1.62v5.11H18z"
|
||||
/>
|
||||
</svg>
|
||||
social </a
|
||||
><a href="https://metapixl.com/i/portfolio/ayo" data-astro-cid-dmqpwcec>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
data-astro-cid-dmqpwcec
|
||||
astro-icon="mdi:image"
|
||||
>
|
||||
<path
|
||||
fill="currentColor"
|
||||
d="m8.5 13.5 2.5 3 3.5-4.5 4.5 6H5m16 1V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2"
|
||||
/>
|
||||
</svg>
|
||||
photos </a
|
||||
><a href="https://www.npmjs.com/~aayco" data-astro-cid-dmqpwcec>
|
||||
<svg viewBox="0 0 24 24" data-astro-cid-dmqpwcec astro-icon="gg:npm">
|
||||
<path
|
||||
fill="currentColor"
|
||||
fill-rule="evenodd"
|
||||
d="M5 21a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2zm1-3V6h12v12h-3V9h-3v9z"
|
||||
clip-rule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
npm
|
||||
</a>
|
||||
</div>
|
||||
</nav>
|
||||
<main data-astro-cid-2zbi74ef>
|
||||
<h1 class="text-gradient" data-astro-cid-2zbi74ef>Stuff</h1>
|
||||
<p data-astro-cid-2zbi74ef>
|
||||
Because software is not just a huge pile of code, but a combination of
|
||||
small, reusable stuff...
|
||||
</p>
|
||||
<ul data-astro-cid-2zbi74ef>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a
|
||||
href="https://ayco.io/n/web-component-base"
|
||||
target="_blank"
|
||||
data-astro-cid-dohjnao5
|
||||
>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
Web Component Base
|
||||
<span data-astro-cid-dohjnao5> ↗</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>
|
||||
This provides a minimal vanilla JS base class that aims to reduce
|
||||
the complexity of creating reactive custom elements.
|
||||
</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a
|
||||
href="https://ayco.io/n/@ayco/astro-resume"
|
||||
target="_blank"
|
||||
data-astro-cid-dohjnao5
|
||||
>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
Astro Resume <span data-astro-cid-dohjnao5> ↗</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>
|
||||
Utilities for serializing data from server for use in the client
|
||||
with types preserved across components.
|
||||
</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card" data-astro-cid-dohjnao5>
|
||||
<a
|
||||
href="https://ayco.io/n/generate-timezone-json"
|
||||
target="_blank"
|
||||
data-astro-cid-dohjnao5
|
||||
>
|
||||
<h2 data-astro-cid-dohjnao5>
|
||||
Time Zone JSON Generator
|
||||
<span data-astro-cid-dohjnao5> ↗</span>
|
||||
</h2>
|
||||
<p data-astro-cid-dohjnao5>
|
||||
Generate a JSON file containing time zones from the official IANA
|
||||
Database or your own zone.tab file
|
||||
</p>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<footer data-astro-cid-sz7xmlte>
|
||||
<ul style="list-style: none" data-astro-cid-sz7xmlte>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
© 2022-2024 <strong data-astro-cid-sz7xmlte>Ayo Ayco</strong>.
|
||||
All Rights Reserved
|
||||
</li>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
This website
|
||||
<a
|
||||
href="https://ayos.blog/stopped-tracking-on-my-sites"
|
||||
data-astro-cid-sz7xmlte
|
||||
>does not track users</a
|
||||
>
|
||||
</li>
|
||||
<li data-astro-cid-sz7xmlte>
|
||||
See the
|
||||
<a
|
||||
href="https://ayco.io/sh/ayco.io-flask/tree"
|
||||
data-astro-cid-sz7xmlte
|
||||
>source code</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
</footer>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
20
web.py
20
web.py
|
@ -1,23 +1,13 @@
|
|||
from flask import Flask, render_template
|
||||
from flask import Flask, send_from_directory
|
||||
app = Flask(__name__)
|
||||
|
||||
@app.route('/')
|
||||
def home():
|
||||
return render_template('index.html')
|
||||
|
||||
@app.route('/showcase')
|
||||
def showcase():
|
||||
return render_template('showcase.html')
|
||||
|
||||
@app.route('/stuff')
|
||||
def stuff():
|
||||
return render_template('stuff.html')
|
||||
|
||||
@app.route('/now')
|
||||
def now():
|
||||
return render_template('now.html')
|
||||
|
||||
return send_from_directory('dist', 'index.html')
|
||||
|
||||
@app.route('/<path:path>')
|
||||
def dist(path):
|
||||
return send_from_directory('dist', path)
|
||||
|
||||
if __name__ == '__main__':
|
||||
app.run(host='0.0.0.0')
|
||||
|
|
Loading…
Reference in a new issue