summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/404.vto15
-rw-r--r--src/_components/footer.vto9
-rw-r--r--src/_components/head.vto9
-rw-r--r--src/_components/nav.vto13
-rw-r--r--src/_includes/base.vto20
-rw-r--r--src/_includes/index.vto196
-rw-r--r--src/_includes/page.vto9
-rw-r--r--src/components/Footer.astro16
-rw-r--r--src/components/Head.astro12
-rw-r--r--src/components/Nav.astro34
-rw-r--r--src/components/PostList.astro15
-rw-r--r--src/env.d.ts1
-rw-r--r--src/global.sass (renamed from src/styles/global.sass)7
-rw-r--r--src/index.vto26
-rw-r--r--src/layouts/Base.astro18
-rw-r--r--src/layouts/Blogpost.astro8
-rw-r--r--src/layouts/Index.astro248
-rw-r--r--src/layouts/Page.astro12
-rw-r--r--src/lul.vto11
-rw-r--r--src/pages/404.astro20
-rw-r--r--src/pages/blog/index.astro10
-rw-r--r--src/pages/blog/posts/nix-lib.md178
-rw-r--r--src/pages/index.astro31
-rw-r--r--src/pages/lul.astro13
-rw-r--r--src/public/favicon.icobin0 -> 15406 bytes
-rw-r--r--src/public/files/rickroll.mp4bin0 -> 20247438 bytes
-rw-r--r--src/public/imgs/chris/bkender_bauob.jpgbin0 -> 7404 bytes
-rw-r--r--src/public/imgs/chris/blurry_chris.jpgbin0 -> 14954 bytes
-rw-r--r--src/public/imgs/chris/chis_very_fried.jpgbin0 -> 7966 bytes
-rw-r--r--src/public/imgs/chris/chris_medium_fried.jpgbin0 -> 7272 bytes
-rw-r--r--src/public/imgs/chris/chris_moshed.jpgbin0 -> 51242 bytes
-rw-r--r--src/public/imgs/chris/fried_publisher.jpgbin0 -> 2727 bytes
-rw-r--r--src/public/imgs/chris/help_me.pngbin0 -> 10678 bytes
-rw-r--r--src/public/imgs/chris/nice_chris.pngbin0 -> 157488 bytes
-rw-r--r--src/public/imgs/chris/nice_publisher.pngbin0 -> 98501 bytes
-rw-r--r--src/public/imgs/construction.pngbin0 -> 118352 bytes
-rw-r--r--src/public/imgs/gifs/acab.gifbin0 -> 8785 bytes
-rw-r--r--src/public/imgs/gifs/anybrowser.gifbin0 -> 1286 bytes
-rw-r--r--src/public/imgs/gifs/arnold.gifbin0 -> 5046 bytes
-rw-r--r--src/public/imgs/gifs/bob.gifbin0 -> 142993 bytes
-rw-r--r--src/public/imgs/gifs/capitalism.gifbin0 -> 253 bytes
-rw-r--r--src/public/imgs/gifs/chris.gifbin0 -> 2279 bytes
-rw-r--r--src/public/imgs/gifs/counterstrike.gifbin0 -> 5023 bytes
-rw-r--r--src/public/imgs/gifs/explorer.gifbin0 -> 10877 bytes
-rw-r--r--src/public/imgs/gifs/free.gifbin0 -> 622 bytes
-rw-r--r--src/public/imgs/gifs/gimp.gifbin0 -> 2602 bytes
-rw-r--r--src/public/imgs/gifs/gnu-linux.gifbin0 -> 550 bytes
-rw-r--r--src/public/imgs/gifs/imagine.gifbin0 -> 9865 bytes
-rw-r--r--src/public/imgs/gifs/jsfree.gifbin0 -> 1695 bytes
-rw-r--r--src/public/imgs/gifs/kmelon.gifbin0 -> 2964 bytes
-rw-r--r--src/public/imgs/gifs/legalize.gifbin0 -> 7182 bytes
-rw-r--r--src/public/imgs/gifs/moz.gifbin0 -> 2864 bytes
-rw-r--r--src/public/imgs/gifs/obras.gifbin0 -> 5497 bytes
-rw-r--r--src/public/imgs/gifs/poweredbyfedora.gifbin0 -> 2314 bytes
-rw-r--r--src/public/imgs/gifs/poweredbynix.svg187
-rw-r--r--src/public/imgs/gifs/pride.gifbin0 -> 17783 bytes
-rw-r--r--src/public/imgs/gifs/steam.gifbin0 -> 2750 bytes
-rw-r--r--src/public/imgs/gifs/tired.gifbin0 -> 899 bytes
-rw-r--r--src/public/imgs/gifs/vi.gifbin0 -> 761 bytes
-rw-r--r--src/public/imgs/gifs/web3.gifbin0 -> 483 bytes
-rw-r--r--src/public/imgs/gifs/weezer.gifbin0 -> 24883 bytes
-rw-r--r--src/public/imgs/tapwater.pngbin0 -> 358758 bytes
-rw-r--r--src/public/js/chrisApp.js (renamed from src/scripts/chrisApp.ts)12
63 files changed, 507 insertions, 623 deletions
diff --git a/src/404.vto b/src/404.vto
new file mode 100644
index 0000000..17ccb23
--- /dev/null
+++ b/src/404.vto
@@ -0,0 +1,15 @@
+---
+title: "404!"
+description: "404!"
+layout: page.vto
+---
+
+<h1>404! :(</h1>
+<img
+ src="/imgs/tapwater.png"
+ width="500"
+ height="515"
+ class="mx-auto"
+ decoding="async"
+ alt="can i get you some tapwater?"
+/>
diff --git a/src/_components/footer.vto b/src/_components/footer.vto
new file mode 100644
index 0000000..6c262f1
--- /dev/null
+++ b/src/_components/footer.vto
@@ -0,0 +1,9 @@
+<div class="flex">
+ <div class="flex flex-col items-center gap-1 p-3 mx-auto">
+ <a
+ class="text-text text-xs"
+ href="https://github.com/getchoo/website">source</a
+ >
+ <p class="text-text text-xs">commit: {{ gitCommit }}</p>
+ </div>
+</div>
diff --git a/src/_components/head.vto b/src/_components/head.vto
new file mode 100644
index 0000000..50af97a
--- /dev/null
+++ b/src/_components/head.vto
@@ -0,0 +1,9 @@
+<head>
+ <meta charset="utf-8" />
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+ <title>{{ title }}</title>
+ <meta name="description" content={{ description }} />
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
+ <link rel="stylesheet" href="/global.css" />
+ <link rel="sitemap" href="/sitemap.xml" />
+</head>
diff --git a/src/_components/nav.vto b/src/_components/nav.vto
new file mode 100644
index 0000000..f1d935a
--- /dev/null
+++ b/src/_components/nav.vto
@@ -0,0 +1,13 @@
+<nav>
+ <div class="flex flex-column justify-center mx-auto p-7">
+ <ul class="inline">
+ {{ for item of links }}
+ <li class="inline text-base p-2">
+ <a class="rounded-xl bg-yellow p-2" href={{ item.url }}>
+ {{ item.name }}
+ </a>
+ </li>
+ {{ /for }}
+ </ul>
+ </div>
+</nav>
diff --git a/src/_includes/base.vto b/src/_includes/base.vto
new file mode 100644
index 0000000..0a74785
--- /dev/null
+++ b/src/_includes/base.vto
@@ -0,0 +1,20 @@
+---
+links:
+ - name: home
+ url: "/"
+ - name: miniflux
+ url: "https://miniflux.mydadleft.me"
+ - name: github
+ url: "https://github.com/getchoo"
+---
+
+<!DOCTYPE html>
+<html lang="en">
+ {{ comp.head({ title, description })}}
+
+ <body class="bg-base">
+ {{ comp.nav({ links }) }}
+ {{ content }}
+ {{ comp.footer() }}
+ </body>
+</html>
diff --git a/src/_includes/index.vto b/src/_includes/index.vto
new file mode 100644
index 0000000..4146b43
--- /dev/null
+++ b/src/_includes/index.vto
@@ -0,0 +1,196 @@
+---
+layout: base.vto
+---
+
+<div class="container">
+ <div class="content">
+ {{ content }}
+ </div>
+ <div
+ class="bg-base hidden min-[1280px]:flex flex-col gap-2 text-center items-center justify-center m-20 mt-0 mb-5 p-5 rounded-lg drop-shadow-2xl"
+ >
+ <div id="gif">
+ <img
+ src="/imgs/gifs/legalize.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="legalize now!"
+ />
+ <img
+ src="/imgs/gifs/acab.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="acab"
+ />
+ <a href="https://github.com/sakecode">
+ <!--
+ Powered by NixOS © 2023 by Sake is licensed under (CC BY-NC-SA 4.0)
+ To view the source visit: https://github.com/sakecode/Sake-s-SVGs
+ To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/
+ -->
+ <img
+ src="/imgs/gifs/poweredbynix.svg"
+ width="88"
+ height="31"
+ decoding="async"
+ alt="powered by fedora"
+ />
+ </a>
+ <img
+ src="/imgs/gifs/capitalism.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="let's crush capitalism!"
+ />
+ </div>
+ <div id="gif">
+ <img
+ src="/imgs/gifs/anybrowser.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="best viewed with any browser"
+ />
+ <img
+ src="/imgs/gifs/weezer.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="weezer fan"
+ />
+ <a href="https://dnsense.pub/">
+ <img
+ src="/imgs/gifs/steam.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="play with steam"
+ />
+ </a>
+ <img
+ src="/imgs/gifs/vi.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="made with vi"
+ />
+ <img
+ src="/imgs/gifs/pride.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="pride"
+ />
+ <img
+ src="/imgs/gifs/imagine.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="imagination"
+ />
+ </div>
+ <div id="gif">
+ <img
+ src="/imgs/gifs/moz.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="mozilla is cool"
+ />
+ <img
+ src="/imgs/gifs/free.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="completely free software"
+ />
+ <img
+ src="/imgs/gifs/gimp.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="graphics by gimp"
+ />
+ <img
+ src="/imgs/gifs/explorer.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="marijuana mind explorer"
+ />
+ <img
+ src="/imgs/gifs/jsfree.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="javascript free"
+ />
+ <img
+ src="/imgs/gifs/web3.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="keep the web free! say no to web3!"
+ />
+ <img
+ src="/imgs/gifs/tired.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="tired"
+ />
+ <img
+ src="/imgs/gifs/arnold.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="hey arnold!"
+ />
+ <img
+ src="/imgs/gifs/bob.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="powered by bob"
+ />
+ <img
+ src="/imgs/gifs/counterstrike.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="counter-strike player"
+ />
+ <img
+ src="/imgs/gifs/chris.gif"
+ width="88"
+ height="31"
+ loading="lazy"
+ decoding="async"
+ alt="chris troll"
+ id="chris_gif"
+ />
+ </div>
+ </div>
+</div>
diff --git a/src/_includes/page.vto b/src/_includes/page.vto
new file mode 100644
index 0000000..a3493ea
--- /dev/null
+++ b/src/_includes/page.vto
@@ -0,0 +1,9 @@
+---
+layout: base.vto
+---
+
+<div class="container">
+ <div class="content" id="blogpost">
+ {{ content }}
+ </div>
+</div>
diff --git a/src/components/Footer.astro b/src/components/Footer.astro
deleted file mode 100644
index 0a244c0..0000000
--- a/src/components/Footer.astro
+++ /dev/null
@@ -1,16 +0,0 @@
----
-import { execa } from "execa";
-import "@styles/global.sass";
-
-const { stdout: gitCommit } = await execa("git", ["rev-parse", "HEAD"]);
----
-
-<div class="flex">
- <div class="flex flex-col items-center gap-1 p-3 mx-auto">
- <a
- class="text-text text-xs"
- href="https://github.com/getchoo/getchoo.github.io">source</a
- >
- <p class="text-text text-xs">commit: {gitCommit}</p>
- </div>
-</div>
diff --git a/src/components/Head.astro b/src/components/Head.astro
deleted file mode 100644
index 0cce769..0000000
--- a/src/components/Head.astro
+++ /dev/null
@@ -1,12 +0,0 @@
----
-const { title, description } = Astro.props;
----
-
-<head>
- <meta charset="utf-8" />
- <meta http-equiv="X-UA-Compatible" content="IE=edge" />
- <title>{title}</title>
- <meta name="description" content={description} />
- <meta name="viewport" content="width=device-width, initial-scale=1" />
- <link rel="sitemap" href="/sitemap-index.xml" />
-</head>
diff --git a/src/components/Nav.astro b/src/components/Nav.astro
deleted file mode 100644
index 66ac87e..0000000
--- a/src/components/Nav.astro
+++ /dev/null
@@ -1,34 +0,0 @@
----
-interface Links {
- home: string;
- blog: string;
- forgejo: string;
- grafana: string;
- github: string;
- miniflux: string;
-}
-
-const links: Links = {
- home: "/",
- blog: "/blog",
- grafana: "https://grafana.mydadleft.me",
- miniflux: "https://miniflux.mydadleft.me",
- github: "https://github.com/getchoo",
-};
----
-
-<nav>
- <div class="flex flex-column justify-center mx-auto p-7">
- <ul class="inline">
- {
- Object.entries(links).map(([link, url]) => (
- <li class="inline text-base p-2">
- <a class="rounded-xl bg-yellow p-2" href={url}>
- {link}
- </a>
- </li>
- ))
- }
- </ul>
- </div>
-</nav>
diff --git a/src/components/PostList.astro b/src/components/PostList.astro
deleted file mode 100644
index a537e43..0000000
--- a/src/components/PostList.astro
+++ /dev/null
@@ -1,15 +0,0 @@
----
-const posts = await Astro.glob("../pages/blog/posts/*.md");
----
-
-<div>
- <ul class="postList">
- {
- posts.map((post) => (
- <li>
- <a href={post.url}>{post.frontmatter.title}</a>
- </li>
- ))
- }
- </ul>
-</div>
diff --git a/src/env.d.ts b/src/env.d.ts
deleted file mode 100644
index 9231795..0000000
--- a/src/env.d.ts
+++ /dev/null
@@ -1 +0,0 @@
-/// <reference types="@astrojs/image/client" />
diff --git a/src/styles/global.sass b/src/global.sass
index a6d45e2..8710fed 100644
--- a/src/styles/global.sass
+++ b/src/global.sass
@@ -1,4 +1,3 @@
-@import url('https://fonts.googleapis.com/css2?family=Fira+Code:wght@300;400;700&display=swap')
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500&display=swap')
@tailwind base
@@ -33,9 +32,6 @@ a
body
@apply bg-base p-10
-.astro-code
- @apply p-3 rounded-xl
-
.container
@apply bg-lavender flex flex-auto flex-col items-center justify-center w-fit mx-auto rounded-lg
@@ -53,3 +49,6 @@ body
@apply bg-base text-lg mx-auto p-1 mb-5 mt-5 text-text text-center w-fit
@apply lg:max-w-6xl text-left items-center
+
+#gif
+ @apply flex gap-2
diff --git a/src/index.vto b/src/index.vto
new file mode 100644
index 0000000..ea0c008
--- /dev/null
+++ b/src/index.vto
@@ -0,0 +1,26 @@
+---
+title: "guzzle guzzle"
+description: "guzzle guzzle"
+layout: index.vto
+---
+
+<script src="/js/chrisApp.js"></script>
+<h1 class="bg-base w-fit h-fit mx-auto rounded p-5 text-text">
+ <b>getchoo's website 🦕</b>
+</h1>
+
+<br />
+
+<p>this is under construction. i'm experimenting with lume</p>
+
+<img
+ src="/imgs/gifs/obras.gif"
+ width="106"
+ height="119"
+ class="mx-auto"
+ loading="lazy"
+ decoding="async"
+ alt="construction"
+/>
+
+<a href="/lul">hehe funny click me</a>
diff --git a/src/layouts/Base.astro b/src/layouts/Base.astro
deleted file mode 100644
index a8aa63e..0000000
--- a/src/layouts/Base.astro
+++ /dev/null
@@ -1,18 +0,0 @@
----
-import Head from "@components/Head.astro";
-import Footer from "@components/Footer.astro";
-import Nav from "@components/Nav.astro";
-
-const { title, description } = Astro.props;
----
-
-<!DOCTYPE html>
-<html lang="en">
- <Head title={title} description={description} />
-
- <body class="bg-base">
- <Nav />
- <slot />
- <Footer />
- </body>
-</html>
diff --git a/src/layouts/Blogpost.astro b/src/layouts/Blogpost.astro
deleted file mode 100644
index a52a7d5..0000000
--- a/src/layouts/Blogpost.astro
+++ /dev/null
@@ -1,8 +0,0 @@
----
-import Page from "@layouts/Page.astro";
-const { title, description } = Astro.props.frontmatter;
----
-
-<Page title={title} description={description}>
- <slot />
-</Page>
diff --git a/src/layouts/Index.astro b/src/layouts/Index.astro
deleted file mode 100644
index a5909b7..0000000
--- a/src/layouts/Index.astro
+++ /dev/null
@@ -1,248 +0,0 @@
----
-import Base from "@layouts/Base.astro";
-import { Image } from "@astrojs/image/components";
-const { title, description } = Astro.props;
----
-
-<style>
- #gif {
- @apply flex gap-2;
- }
-</style>
-
-<Base title={title} description={description}>
- <div class="container">
- <div class="content">
- <slot />
- </div>
- <div
- class="bg-base hidden min-[1280px]:flex flex-col gap-2 text-center items-center justify-center m-20 mt-0 mb-5 p-5 rounded-lg drop-shadow-2xl"
- >
- <div id="gif">
- <Image
- src="/imgs/gifs/legalize.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="legalize now!"
- />
- <Image
- src="/imgs/gifs/acab.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="acab"
- />
- <a href="https://github.com/sakecode">
- <!--
- Powered by NixOS © 2023 by Sake is licensed under (CC BY-NC-SA 4.0)
- To view the source visit: https://github.com/sakecode/Sake-s-SVGs
- To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/
- -->
- <Image
- src="/imgs/gifs/poweredbynix.svg"
- width={88}
- height={31}
- format="svg"
- quality={90}
- decoding="async"
- alt="powered by fedora"
- />
- </a>
- <Image
- src="/imgs/gifs/capitalism.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="let's crush capitalism!"
- />
- </div>
- <div id="gif">
- <Image
- src="/imgs/gifs/anybrowser.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="best viewed with any browser"
- />
- <Image
- src="/imgs/gifs/weezer.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="weezer fan"
- />
- <a href="https://dnsense.pub/">
- <Image
- src="/imgs/gifs/steam.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="play with steam"
- />
- </a>
- <Image
- src="/imgs/gifs/vi.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="made with vi"
- />
- <Image
- src="/imgs/gifs/pride.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="pride"
- />
- <Image
- src="/imgs/gifs/imagine.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="imagination"
- />
- </div>
- <div id="gif">
- <Image
- src="/imgs/gifs/moz.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="mozilla is cool"
- />
- <Image
- src="/imgs/gifs/free.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="completely free software"
- />
- <Image
- src="/imgs/gifs/gimp.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="graphics by gimp"
- />
- <Image
- src="/imgs/gifs/explorer.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="marijuana mind explorer"
- />
- <Image
- src="/imgs/gifs/jsfree.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="javascript free"
- />
- <Image
- src="/imgs/gifs/web3.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="keep the web free! say no to web3!"
- />
- <Image
- src="/imgs/gifs/tired.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="tired"
- />
- <Image
- src="/imgs/gifs/arnold.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="hey arnold!"
- />
- <Image
- src="/imgs/gifs/bob.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="powered by bob"
- />
- <Image
- src="/imgs/gifs/counterstrike.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="counter-strike player"
- />
- <Image
- src="/imgs/gifs/chris.gif"
- width={88}
- height={31}
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="chris troll"
- id="chris_gif"
- />
- </div>
- </div>
- </div>
-</Base>
diff --git a/src/layouts/Page.astro b/src/layouts/Page.astro
deleted file mode 100644
index 03569a0..0000000
--- a/src/layouts/Page.astro
+++ /dev/null
@@ -1,12 +0,0 @@
----
-import Base from "@layouts/Base.astro";
-const { title, description } = Astro.props;
----
-
-<Base title={title} description={description}>
- <div class="container">
- <div class="content" id="blogpost">
- <slot />
- </div>
- </div>
-</Base>
diff --git a/src/lul.vto b/src/lul.vto
new file mode 100644
index 0000000..026546c
--- /dev/null
+++ b/src/lul.vto
@@ -0,0 +1,11 @@
+---
+title: "fard"
+description: "xd"
+layout: base.vto
+---
+
+<div class="flex justify-center p-5">
+ <video width="1280" height="720" controls autoplay muted>
+ <source src="/files/rickroll.mp4" type="video/mp4" />
+ </video>
+</div>
diff --git a/src/pages/404.astro b/src/pages/404.astro
deleted file mode 100644
index a34ff13..0000000
--- a/src/pages/404.astro
+++ /dev/null
@@ -1,20 +0,0 @@
----
-import Page from "@layouts/Page.astro";
-import { Image } from "@astrojs/image/components";
-const title = "404!";
-const description = title;
----
-
-<Page title={title} description={description}>
- <h1>404! :(</h1>
- <Image
- src="/imgs/tapwater.png"
- width={500}
- height={515}
- class="mx-auto"
- format="webp"
- quality={90}
- decoding="async"
- alt="can i get you some tapwater?"
- />
-</Page>
diff --git a/src/pages/blog/index.astro b/src/pages/blog/index.astro
deleted file mode 100644
index 939c470..0000000
--- a/src/pages/blog/index.astro
+++ /dev/null
@@ -1,10 +0,0 @@
----
-import Page from "@layouts/Page.astro";
-import PostList from "@components/PostList.astro";
-const title = "getchoo's blog";
-const description = "getchoo's blogposts";
----
-
-<Page title={title} description={description}>
- <PostList />
-</Page>
diff --git a/src/pages/blog/posts/nix-lib.md b/src/pages/blog/posts/nix-lib.md
deleted file mode 100644
index c1ee41a..0000000
--- a/src/pages/blog/posts/nix-lib.md
+++ /dev/null
@@ -1,178 +0,0 @@
----
-layout: "../../../layouts/Blogpost.astro"
-title: making an intuitive, modular nix flake configuration
-description: an explanation of my journey through making a modular nix flake configuration
----
-
-# making an intuitive, modular nix flake configuration
-
-<div id="blogText">
-
-as some of my friends may know, recently i've gone off the nixos "deep end" so to speak, moving almost all of my systems and projects to it. i have a lot of reasons for this, but i think all of them might be better told in a different post. for this one, i'm going to go over my approach to making nix flake configurations that scale across multiple systems and users
-
-</div>
-
-## first things first
-
-<div id="blogText">
-
-i started out with [nixos on wsl](https://github.com/nix-community/NixOS-WSL) (heresy i know), mainly because i was on my windows partition when i first thought about it, but also because i wasn't really sure if i liked it yet. similar to a lot of nix beginners, i quickly got a bit overwhelmed by options.
-
-<br />
-
-i kept hearing about custom modules, overlays, and this thing called a "flake." after a quick search, i came across [this](https://nixos.wiki/wiki/Flakes) page. "oh cool, a way to manage dependencies!" i thought, but seeing as nixos-wsl was already installed on my system and me not thinking i was ever going to use a lot of libraries, utils, etc. i didn't pay much attention -- that is, until i wanted to try out native systemd support in nixos-wsl.
-
-</div>
-
-## dipping my toe in
-
-<div id="blogText">
-
-at the time, in order to use native systemd support i needed to follow the `main` branch of nixos-wsl. since i had been interested in flakes, with some friends using them and the name itself being cool, i decided this might be a good time to learn how to use them!
-
-<br />
-
-...it didn't turn out the way i wanted.
-
-<br />
-
-at first, i couldn't even understand the syntax of the inputs or what they were for, and sadly i couldn't find much on the wiki page to help me there. i tried different formats, but eventually i got `git+https://github.com/nix-community/nixos-wsl?ref=main` to work.
-
-<br />
-
-now another issue: i wasn't really sure how modules worked here. some ideas went through my head like "can i pass them to my config somehow and import them there like i did before?", "can i call the input from the arguments of the file?", "maybe i'm supposed to only use the options since it's already in `inputs`?". all of these could be half correct i guess, but far from the best option. i must have done a few dozen rebuilds in a few hours, but eventually i got to a point where things _mostly_ worked. in the end, i put the `nixos-wsl` module and the attrs i used for it in the `modules` argument for `nixosSystem`. that seemed to work
-
-</div>
-
-## enter: pain
-
-<div id="blogText">
-
-i felt pretty good now. throughout this, i had been moving a lot of the configs for programs to nix -- which was a much better time than gluing things together -- and started considering it as a replacement to my bare git repo of traditional dotfiles. i had also heard of something called home-manager, and with [great instructions](https://nix-community.github.io/home-manager/index.html#sec-flakes-nixos-module) and not a lot of effort, i was able to get that setup and move even more configurations to nix.
-
-<br />
-
-now i realized a problem: i want to start using this on bare metal. i already have a lot of programs and services configured that i would use there too, so how can i share them?
-
-<br />
-
-a quick solution i came up with (and totally didn't take inspiration from my friend [replaycoding](https://github.com/ReplayCoding) with) was making a common folder that i could import files from in the main machine configurations. this would made it trivial for me to share these (basic) configurations across systems, as well as manage all of them in one place. without even realizing it i think this is when i found main benefit of nixos modules: great composability with minimal effort.
-
-<br />
-
-i failed to do at this first, miserably. my configurations became filled with **a lot** of conditionals, entries in `let; in` expressions, and **_hours_** of mysterious `infinite recursion detected` errors. looking back now, this could have been solved with a bit of docs reading (maybe then i would've known you can't use things from `lib` when declaring `imports`), but it was harder for me to find back then, let alone understand. i was basically just writing stuff blind, but somehow -- and i don't know how -- i got it to work.
-
-<br />
-
-i didn't stop here, though. i realized i was repeating a lot of expressions, primarily when declaring the system configurations themselves with `nixosSystem`. this is when the idea of making my own wrappers and utility functions came to mind. i made one called `mkHost`. All it did was take in the system name, modules, system arch, and instance of `pkgs`, but it took me quite a bit of trial and error (like a lot of things so far) due to not understanding how functions were even made.
-
-<br />
-
-> thanks again to replaycoding here for helping me actually import the file containing `mkHost` correctly, i probably would've given up otherwise.
-
-<br />
-
-i was really proud of myself for pulling this off, and i even made some small improvements like concatenating the attrs for each system to `nixosConfigurations`. i was getting somewhere!
-
-</div>
-
-## diving deeper...
-
-<div id="blogText">
-
-`mkHost` was awesome, but i still felt like i could improve more for the future. the next step from `mkHost` was `mkUser`, naturally. this was similar: a very basic function giving me slightly less to type and declaring slightly annoying options. i quickly followed this up with `mkHMUser`, which was again similar, and made portable home-manager configurations trivial.
-
-<br />
-
-this was a really good setup so far, but i still felt like i could make it easier. i saw dotfiles from others such as [hlissner's](https://github.com/hlissner/dotfiles) and projects like [digga](https://github.com/divnix/digga) that seemed to also be accomplishing the same goal i had in mine. being the "diy-er" i am, i of course started going through hlissner's first, and being the "nix noob" i was, i didn't understand almost any of it besides the general concept of automatically importing a lot of files. digga was a bit more interesting, and i was able to start using it without many changes to pre-existing config. i had a few problems with it though, but mainly it was the feeling of not knowing everything that's going on in the background, along with the random (non-standard) outputs it would bring to my flake.
-
-<br />
-
-after a bit of experimenting, i tried to combine ideas from both, but with all of my own home-grown tools. out of this came a function i am still using called `mapFilterDir`. things get a bit advanced here so i think a codeblock might be necessary:
-
-<br />
-
-```nix
-{
- mapFilterDir = dir: filter: map: let
- dirs = filterAttrs filter (readDir dir);
- in
- mapAttrs map dirs;
-}
-```
-
-<br />
-
-for those of you who are not familiar with nix, this function takes in a path to a directory, a function to filter through a list of files from the previously given directory, and a function who's returned value will be assigned to a variable named after each file in the filtered list. it's short and sweet, but can scale pretty well in my experience (though it could probably use a better name :p).
-
-<br />
-
-this, when combined with `mkHost` and `mkHMUser` (i had dropped `mkUser` at this point since i was declaring things manually somewhere else) allowed me to automagically import all host and home-manager configurations in a folder (assuming the host/user was the same as folder of course). this where i really felt like i had done something, and is mostly what i'm still using today
-
-</div>
-
-## enter: happiness and a near completed product
-
-<div id="blogText">
-this is the most recent part of the story, where i started thinking of making these expressions a bit more generalized, as some people i know have shown a bit of interest in nix (hi sake and hisashi). my first idea was to expand everything i had by a lot, maybe even going full `digga` with a `mkFlake` function! quickly though, i realized even that would be a lot of work; but more interestingly, i also realized that it's not what i needed anyways. i looked back at my old attempt at digga and found it was pretty close to what i'm doing now, except my own solutions fit my needs a lot better. sure, i haven't gotten to the level of hlissner's dotfiles yet, but i think what i have right now is good, so why not go after my original goal of only generalizing everything?
-
-<br />
-
-so that's what i did: i planned out exactly what i want, and what others may want too. i didn't want to make expressions that would change how you write a flake, as i think a big part of them is the standardization, both when interacting with them and hacking at them. instead, i only wanted to make things a bit easier, a la [flake-utils](https://github.com/numtide/flake-utils).
-
-</div>
-
-### quick explanation
-
-<div id="blogText">
-the idea i had for these expressions might be a little bit complicated, so i feel a need to explain it here. given a directory structure like so:
-
-<br />
-
-```shell
-| - hosts/
-| - default.nix
-| - glados/
-| - default.nix
-| - flake.nix
-| - users/
-| - default.nix
-| - seth/
-| - home.nix
-| - default.nix
-```
-
-<br />
-
-in `flake.nix`, you can use this:
-
-<br />
-
-```nix
-{
- homeConfigurations = forAllSystems (system: mapHMUsers system ./users);
- nixosConfiguration = mapHosts ./hosts;
-}
-```
-
-<br />
-
-this will collect basic information from the default.nix file in `hosts/` and `users/`, such as the name of the system/user, `pkgs` instance, state version, modules, etc. these values are then put into `mkHost` and `mkHMUser`, where the `default.nix` file is sourced from `hosts/glados`, along with the `home.nix` in `users/seth`. this can scale to any number of users or hosts, given that some attrs are set in the `default.nix` file of the parent folder. the defaults are pretty minimal and extensible, avoiding the feeling of being locked into doing something that i've felt with similar projects.
-
-<br />
-
-in layman's terms: you can declare what actually matters for your system instead of worrying about gluing them all together as flake outputs :)
-
-</div>
-
-## leaping from the depths of `nix repl`
-
-<div id="blogText">
-
-surprisingly, very little changes needed to be made to make everything non-specific to my configuration (thanks past me!). by the time i was done, all i really did was add my previous defaults in `mkHost` and `mkUser` to a [common](https://github.com/getchoo/flake/blob/3066f766ece62acd9b9897082dba28be87889dc1/hosts/default.nix#L3) attrset i use for all hosts in `hosts/default.nix`. there are still some [issues](https://github.com/getchoo/nix-exprs/issues/2), but i think i'm on a good path to having a fully complete "product."
-
-<br />
-
-overall, i feel like i have a sustainable and scalable set of expressions, that along with the _actual_ nixos modules i've made, will give me a nice experience for the long term, with no more worrying about `infinite recursion detected` errors. i just hope that maybe my work can do the same for others :)
-
-</div>
diff --git a/src/pages/index.astro b/src/pages/index.astro
deleted file mode 100644
index 019375f..0000000
--- a/src/pages/index.astro
+++ /dev/null
@@ -1,31 +0,0 @@
----
-import Index from "@layouts/Index.astro";
-import { Image } from "@astrojs/image/components";
-const title = "guzzle guzzle";
-const description = title;
----
-
-<Index title={title} description={description}>
- <script src="../scripts/chrisApp.ts"></script>
- <h1 class="bg-base w-fit h-fit mx-auto rounded p-5 text-text">
- <b>getchoo's website 🚀</b>
- </h1>
-
- <br />
-
- <p>this is under construction. i'm experimenting with astro</p>
-
- <Image
- src="/imgs/gifs/obras.gif"
- width={106}
- height={119}
- class="mx-auto"
- format="webp"
- quality={90}
- loading="lazy"
- decoding="async"
- alt="construction"
- />
-
- <a href="/lul">hehe funny click me</a>
-</Index>
diff --git a/src/pages/lul.astro b/src/pages/lul.astro
deleted file mode 100644
index 44ec1dc..0000000
--- a/src/pages/lul.astro
+++ /dev/null
@@ -1,13 +0,0 @@
----
-import Base from "@layouts/Base.astro";
-const title = "fard";
-const description = "xd";
----
-
-<Base title={title} description={description}>
- <div class="flex justify-center p-5">
- <video width="1280" height="720" controls autoplay muted>
- <source src="/files/rickroll.mp4" type="video/mp4" />
- </video>
- </div>
-</Base>
diff --git a/src/public/favicon.ico b/src/public/favicon.ico
new file mode 100644
index 0000000..4880f14
--- /dev/null
+++ b/src/public/favicon.ico
Binary files differ
diff --git a/src/public/files/rickroll.mp4 b/src/public/files/rickroll.mp4
new file mode 100644
index 0000000..b988dc4
--- /dev/null
+++ b/src/public/files/rickroll.mp4
Binary files differ
diff --git a/src/public/imgs/chris/bkender_bauob.jpg b/src/public/imgs/chris/bkender_bauob.jpg
new file mode 100644
index 0000000..aa32641
--- /dev/null
+++ b/src/public/imgs/chris/bkender_bauob.jpg
Binary files differ
diff --git a/src/public/imgs/chris/blurry_chris.jpg b/src/public/imgs/chris/blurry_chris.jpg
new file mode 100644
index 0000000..331ab3e
--- /dev/null
+++ b/src/public/imgs/chris/blurry_chris.jpg
Binary files differ
diff --git a/src/public/imgs/chris/chis_very_fried.jpg b/src/public/imgs/chris/chis_very_fried.jpg
new file mode 100644
index 0000000..e5ee71b
--- /dev/null
+++ b/src/public/imgs/chris/chis_very_fried.jpg
Binary files differ
diff --git a/src/public/imgs/chris/chris_medium_fried.jpg b/src/public/imgs/chris/chris_medium_fried.jpg
new file mode 100644
index 0000000..b11f978
--- /dev/null
+++ b/src/public/imgs/chris/chris_medium_fried.jpg
Binary files differ
diff --git a/src/public/imgs/chris/chris_moshed.jpg b/src/public/imgs/chris/chris_moshed.jpg
new file mode 100644
index 0000000..6d1c3de
--- /dev/null
+++ b/src/public/imgs/chris/chris_moshed.jpg
Binary files differ
diff --git a/src/public/imgs/chris/fried_publisher.jpg b/src/public/imgs/chris/fried_publisher.jpg
new file mode 100644
index 0000000..0ac6e38
--- /dev/null
+++ b/src/public/imgs/chris/fried_publisher.jpg
Binary files differ
diff --git a/src/public/imgs/chris/help_me.png b/src/public/imgs/chris/help_me.png
new file mode 100644
index 0000000..3ac2f67
--- /dev/null
+++ b/src/public/imgs/chris/help_me.png
Binary files differ
diff --git a/src/public/imgs/chris/nice_chris.png b/src/public/imgs/chris/nice_chris.png
new file mode 100644
index 0000000..af64d6a
--- /dev/null
+++ b/src/public/imgs/chris/nice_chris.png
Binary files differ
diff --git a/src/public/imgs/chris/nice_publisher.png b/src/public/imgs/chris/nice_publisher.png
new file mode 100644
index 0000000..759ef51
--- /dev/null
+++ b/src/public/imgs/chris/nice_publisher.png
Binary files differ
diff --git a/src/public/imgs/construction.png b/src/public/imgs/construction.png
new file mode 100644
index 0000000..1c038b0
--- /dev/null
+++ b/src/public/imgs/construction.png
Binary files differ
diff --git a/src/public/imgs/gifs/acab.gif b/src/public/imgs/gifs/acab.gif
new file mode 100644
index 0000000..6f8ccef
--- /dev/null
+++ b/src/public/imgs/gifs/acab.gif
Binary files differ
diff --git a/src/public/imgs/gifs/anybrowser.gif b/src/public/imgs/gifs/anybrowser.gif
new file mode 100644
index 0000000..d7c0e0e
--- /dev/null
+++ b/src/public/imgs/gifs/anybrowser.gif
Binary files differ
diff --git a/src/public/imgs/gifs/arnold.gif b/src/public/imgs/gifs/arnold.gif
new file mode 100644
index 0000000..0035988
--- /dev/null
+++ b/src/public/imgs/gifs/arnold.gif
Binary files differ
diff --git a/src/public/imgs/gifs/bob.gif b/src/public/imgs/gifs/bob.gif
new file mode 100644
index 0000000..90b6dd5
--- /dev/null
+++ b/src/public/imgs/gifs/bob.gif
Binary files differ
diff --git a/src/public/imgs/gifs/capitalism.gif b/src/public/imgs/gifs/capitalism.gif
new file mode 100644
index 0000000..c4abb60
--- /dev/null
+++ b/src/public/imgs/gifs/capitalism.gif
Binary files differ
diff --git a/src/public/imgs/gifs/chris.gif b/src/public/imgs/gifs/chris.gif
new file mode 100644
index 0000000..a2ddbd5
--- /dev/null
+++ b/src/public/imgs/gifs/chris.gif
Binary files differ
diff --git a/src/public/imgs/gifs/counterstrike.gif b/src/public/imgs/gifs/counterstrike.gif
new file mode 100644
index 0000000..612e116
--- /dev/null
+++ b/src/public/imgs/gifs/counterstrike.gif
Binary files differ
diff --git a/src/public/imgs/gifs/explorer.gif b/src/public/imgs/gifs/explorer.gif
new file mode 100644
index 0000000..676ef7d
--- /dev/null
+++ b/src/public/imgs/gifs/explorer.gif
Binary files differ
diff --git a/src/public/imgs/gifs/free.gif b/src/public/imgs/gifs/free.gif
new file mode 100644
index 0000000..6ed18d1
--- /dev/null
+++ b/src/public/imgs/gifs/free.gif
Binary files differ
diff --git a/src/public/imgs/gifs/gimp.gif b/src/public/imgs/gifs/gimp.gif
new file mode 100644
index 0000000..382315e
--- /dev/null
+++ b/src/public/imgs/gifs/gimp.gif
Binary files differ
diff --git a/src/public/imgs/gifs/gnu-linux.gif b/src/public/imgs/gifs/gnu-linux.gif
new file mode 100644
index 0000000..89e3562
--- /dev/null
+++ b/src/public/imgs/gifs/gnu-linux.gif
Binary files differ
diff --git a/src/public/imgs/gifs/imagine.gif b/src/public/imgs/gifs/imagine.gif
new file mode 100644
index 0000000..fc9f559
--- /dev/null
+++ b/src/public/imgs/gifs/imagine.gif
Binary files differ
diff --git a/src/public/imgs/gifs/jsfree.gif b/src/public/imgs/gifs/jsfree.gif
new file mode 100644
index 0000000..b83040c
--- /dev/null
+++ b/src/public/imgs/gifs/jsfree.gif
Binary files differ
diff --git a/src/public/imgs/gifs/kmelon.gif b/src/public/imgs/gifs/kmelon.gif
new file mode 100644
index 0000000..bc95862
--- /dev/null
+++ b/src/public/imgs/gifs/kmelon.gif
Binary files differ
diff --git a/src/public/imgs/gifs/legalize.gif b/src/public/imgs/gifs/legalize.gif
new file mode 100644
index 0000000..071d4d4
--- /dev/null
+++ b/src/public/imgs/gifs/legalize.gif
Binary files differ
diff --git a/src/public/imgs/gifs/moz.gif b/src/public/imgs/gifs/moz.gif
new file mode 100644
index 0000000..ad0653a
--- /dev/null
+++ b/src/public/imgs/gifs/moz.gif
Binary files differ
diff --git a/src/public/imgs/gifs/obras.gif b/src/public/imgs/gifs/obras.gif
new file mode 100644
index 0000000..3c8443e
--- /dev/null
+++ b/src/public/imgs/gifs/obras.gif
Binary files differ
diff --git a/src/public/imgs/gifs/poweredbyfedora.gif b/src/public/imgs/gifs/poweredbyfedora.gif
new file mode 100644
index 0000000..a632810
--- /dev/null
+++ b/src/public/imgs/gifs/poweredbyfedora.gif
Binary files differ
diff --git a/src/public/imgs/gifs/poweredbynix.svg b/src/public/imgs/gifs/poweredbynix.svg
new file mode 100644
index 0000000..0bc8c80
--- /dev/null
+++ b/src/public/imgs/gifs/poweredbynix.svg
@@ -0,0 +1,187 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Powered by NixOS © 2023 by Sake is licensed under (CC BY-NC-SA 4.0)
+ To view the source visit: https://github.com/sakecode/Sake-s-SVGs
+ To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/
+
+ It uses the following works, unmodified:
+ NixOS Logo by Tim Cuthbertson(@timbertson) is licensed under (CC BY 4.0)
+ To view a copy of this license, visit https://creativecommons.org/licenses/by/4.0/
+
+ It uses the following fonts:
+ The Vegur font, provided graciously under (CC0 1.0)
+ To view a copy of this license, visit https://creativecommons.org/publicdomain/zero/1.0/
+ Get the font at:
+ http://dotcolon.net/font/vegur/
+-->
+<svg id="b" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 88 31">
+ <defs>
+ <style>
+ .bi {
+ fill: url(#ad);
+ }
+
+ .bj {
+ fill: url(#ah);
+ }
+
+ .bk {
+ fill: url(#ab);
+ }
+
+ .bl {
+ fill: url(#aj);
+ }
+
+ .bm {
+ fill: url(#af);
+ }
+
+ .bn {
+ fill: url(#al);
+ }
+
+ .bo {
+ fill: url(#x);
+ }
+
+ .bp {
+ fill: url(#z);
+ }
+
+ .bq {
+ fill: url(#m);
+ }
+
+ .br {
+ fill: url(#v);
+ }
+
+ .bs {
+ fill: url(#bd);
+ }
+
+ .bs, .bt, .bu, .bv, .bw, .bx, .by {
+ fill-rule: evenodd;
+ }
+
+ .bt {
+ fill: url(#bg);
+ }
+
+ .bu {
+ fill: url(#ba);
+ }
+
+ .bv {
+ fill: url(#av);
+ }
+
+ .bw {
+ fill: url(#ay);
+ }
+
+ .bx {
+ fill: url(#ap);
+ }
+
+ .by {
+ fill: url(#as);
+ }
+
+ .bz {
+ fill: url(#e);
+ stroke: url(#f);
+ stroke-width: .5px;
+ }
+ </style>
+ <linearGradient id="e" x1="388.21" y1="-732.57" x2="388.35" y2="-764.02" gradientTransform="translate(-339.91 -720.15) scale(.99 -.98)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" stop-color="#fff"/>
+ <stop offset="1" stop-color="#ebebeb"/>
+ </linearGradient>
+ <linearGradient id="f" x1="385.07" y1="-732.7" x2="385.37" y2="-763.21" gradientTransform="translate(-339.04 -720.24) scale(.99 -.98)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" stop-color="#c8c8c8"/>
+ <stop offset="1" stop-color="#787878"/>
+ </linearGradient>
+ <linearGradient id="m" x1="49.52" y1="15.87" x2="51.1" y2="15.87" gradientUnits="userSpaceOnUse">
+ <stop offset="0" stop-color="#415e9a"/>
+ <stop offset=".23" stop-color="#4a6baf"/>
+ <stop offset="1" stop-color="#5277c3"/>
+ </linearGradient>
+ <linearGradient id="v" x1="65.23" y1="10.9" x2="68.78" y2="10.9" gradientUnits="userSpaceOnUse">
+ <stop offset="0" stop-color="#699ad7"/>
+ <stop offset=".24" stop-color="#7eb1dd"/>
+ <stop offset="1" stop-color="#7ebae4"/>
+ </linearGradient>
+ <linearGradient id="x" x1="61.38" y1="9.05" x2="64.86" y2="9.05" xlink:href="#v"/>
+ <linearGradient id="z" x1="54.94" y1="9.05" x2="58.42" y2="9.05" xlink:href="#v"/>
+ <linearGradient id="ab" x1="51.18" y1="10.04" x2="54.29" y2="10.04" xlink:href="#v"/>
+ <linearGradient id="ad" x1="48.88" y1="10" x2="50.72" y2="10" xlink:href="#v"/>
+ <linearGradient id="af" x1="44.87" y1="10.04" x2="47.98" y2="10.04" xlink:href="#v"/>
+ <linearGradient id="ah" x1="39.39" y1="10.04" x2="44.54" y2="10.04" xlink:href="#v"/>
+ <linearGradient id="aj" x1="35.47" y1="10.04" x2="39.02" y2="10.04" xlink:href="#v"/>
+ <linearGradient id="al" x1="32.02" y1="9.16" x2="35.22" y2="9.16" xlink:href="#v"/>
+ <linearGradient id="ap" x1="224.31" y1="-241.85" x2="229.46" y2="-250.76" gradientTransform="translate(-167.55 -176.77) scale(.8 -.8)" xlink:href="#v"/>
+ <linearGradient id="as" x1="424.01" y1="326.19" x2="429.17" y2="317.28" gradientTransform="translate(-381.06 -153.58) rotate(60) scale(.8 -.8)" xlink:href="#v"/>
+ <linearGradient id="av" x1="-367.32" y1="-352.79" x2="-362.16" y2="-361.71" gradientTransform="translate(-80.86 -373.09) rotate(-60) scale(.8 -.8)" xlink:href="#v"/>
+ <linearGradient id="ay" x1="-559.28" y1="672.04" x2="-554.13" y2="663.12" gradientTransform="translate(-420.72 -523.34) rotate(-180) scale(.8 -.8)" xlink:href="#v"/>
+ <linearGradient id="ba" x1="-569.65" y1="-677.97" x2="-564.59" y2="-686.91" gradientTransform="translate(467.69 -525.72) scale(.8 -.8)" xlink:href="#m"/>
+ <linearGradient id="bd" x1="-761.47" y1="347.27" x2="-756.41" y2="338.33" gradientTransform="translate(-523.24 397.2) rotate(120) scale(.8 -.8)" xlink:href="#m"/>
+ <linearGradient id="bg" x1="-1553.35" y1="-331.81" x2="-1548.28" y2="-340.75" gradientTransform="translate(-827.26 -922.2) rotate(-120) scale(.8 -.8)" xlink:href="#m"/>
+ </defs>
+ <g id="c" data-name="Badge-Layer">
+ <g id="d" data-name="Badge">
+ <path id="g" data-name="rect5035" class="bz" d="m5.03.25h77.94c2.64,0,4.78,1.85,4.78,4.13v22.24c0,2.28-2.14,4.13-4.78,4.13H5.03c-2.64,0-4.78-1.85-4.78-4.13V4.38C.25,2.1,2.39.25,5.03.25Z"/>
+ </g>
+ </g>
+ <g id="h" data-name="Text">
+ <g id="i" data-name="NixOS">
+ <g id="j" data-name="Nix">
+ <path id="k" data-name="X" d="m58.95,17.75h-1.47l-1.8,2.72h-.05l-1.74-2.72h-1.59l2.64,3.6v.05l-2.73,3.74h1.47l1.92-2.93h.05l1.92,2.93h1.59l-2.8-3.8v-.05l2.58-3.54Z"/>
+ <rect id="l" data-name="I" x="49.67" y="17.75" width="1.28" height="7.39"/>
+ <circle id="n" data-name="Dot" class="bq" cx="50.31" cy="15.87" r=".79"/>
+ <path id="o" data-name="N" d="m47.4,14.78h-1.19v5.41c0,.76.03,1.97.08,3.31h-.05c-.6-1.12-1.27-2.18-1.74-2.92l-3.74-5.8h-1.63v10.36h1.19v-5.41c0-.76-.03-2.2-.08-3.53h.05c.89,1.54,1.41,2.4,1.89,3.13l3.74,5.8h1.48v-10.36Z"/>
+ </g>
+ <g id="p" data-name="OS">
+ <g id="q" data-name="S">
+ <path id="r" data-name="path4677" d="m68.84,17.54c0,1.43.75,2.21,2.48,2.91,1.33.54,1.87,1.02,1.87,2,0,1.2-.97,1.79-2.26,1.79-.67,0-1.43-.1-2.27-.39l-.13,1.03c.73.27,1.54.37,2.35.37,2,0,3.68-1.02,3.68-3.06,0-1.42-.87-2.11-2.62-2.81-1.17-.46-1.73-.96-1.73-1.99s.87-1.55,1.96-1.55c.64,0,1.34.16,1.84.36l.13-1.02c-.57-.24-1.27-.36-2.05-.36-1.84,0-3.24,1.06-3.24,2.7h0Z"/>
+ </g>
+ <g id="s" data-name="O">
+ <path id="t" data-name="path4680" d="m63.91,14.89c-2.43,0-4.43,1.96-4.43,5.22s2,5.22,4.43,5.22,4.43-1.96,4.43-5.22-2-5.22-4.43-5.22Zm0,1.02c1.81,0,3.19,1.49,3.19,4.2s-1.38,4.2-3.19,4.2-3.19-1.49-3.19-4.2,1.38-4.2,3.19-4.2Z"/>
+ </g>
+ </g>
+ </g>
+ <g id="u" data-name="PoweredBy">
+ <path id="w" data-name="Y" class="br" d="m67.36,11.95c-.32.87-.92,1.5-1.68,1.72l-.23-.56c.58-.21,1.02-.55,1.21-1.1l-1.43-3.89h.75l1.04,3.2,1.05-3.2h.71l-1.42,3.82Z"/>
+ <path id="y" data-name="B" class="bo" d="m62.03,8.79c.23-.45.65-.74,1.18-.74.98,0,1.64.78,1.64,1.94s-.73,2.04-1.74,2.04c-.54,0-.98-.32-1.1-.73l-.04.65h-.59v-5.88h.66v2.72Zm0,1.42c0,.72.45,1.27,1.02,1.27.62,0,1.08-.56,1.08-1.46,0-.77-.37-1.41-1.06-1.41-.53,0-1.05.51-1.05,1.18v.42Z"/>
+ <path id="aa" data-name="D" class="bp" d="m58.42,11.95h-.59l-.05-.7c-.23.46-.65.78-1.2.78-.98,0-1.64-.78-1.64-1.94s.73-2.04,1.74-2.04c.52,0,.94.29,1.08.67v-2.65h.66v5.88Zm-.66-2.08c0-.72-.45-1.27-1.02-1.27-.62,0-1.08.56-1.08,1.46,0,.77.37,1.41,1.06,1.41.53,0,1.05-.51,1.05-1.18v-.42Z"/>
+ <path id="ac" data-name="E" class="bk" d="m54.07,11.76c-.29.16-.71.26-1.16.26-1.06,0-1.74-.64-1.74-1.89s.68-2.09,1.71-2.09,1.4.85,1.4,1.89c0,.12,0,.2-.03.33h-2.39c.04.86.44,1.24,1.21,1.24.33,0,.7-.11.97-.28l.03.54Zm-.45-2.04c0-.62-.22-1.12-.81-1.12-.53,0-.88.45-.94,1.12h1.74Z"/>
+ <path id="ae" data-name="R" class="bi" d="m49.52,8.7c.11-.37.43-.64.82-.64.14,0,.27.02.38.04l-.03.59c-.12-.03-.23-.05-.38-.05-.47,0-.78.42-.78,1.16v2.14h-.66v-3.82h.59l.04.58Z"/>
+ <path id="ag" data-name="E" class="bm" d="m47.76,11.76c-.29.16-.71.26-1.16.26-1.06,0-1.74-.64-1.74-1.89s.68-2.09,1.71-2.09,1.4.85,1.4,1.89c0,.12,0,.2-.03.33h-2.39c.04.86.44,1.24,1.21,1.24.33,0,.7-.11.97-.28l.03.54Zm-.45-2.04c0-.62-.22-1.12-.81-1.12-.53,0-.88.45-.94,1.12h1.74Z"/>
+ <path id="ai" data-name="W" class="bj" d="m42.68,11.95l-.37-1.42c-.13-.48-.25-.96-.35-1.58-.09.62-.21,1.1-.34,1.58l-.38,1.42h-.74l-1.12-3.82h.74l.46,1.76c.13.48.22.96.3,1.5.07-.54.18-1.02.31-1.5l.46-1.73h.67l.45,1.73c.13.48.23.96.3,1.5.07-.54.18-1.02.31-1.5l.46-1.76h.69l-1.12,3.82h-.74Z"/>
+ <path id="ak" data-name="O" class="bl" d="m39.02,10.04c0,1.19-.69,1.99-1.77,1.99s-1.78-.8-1.78-1.99.69-1.99,1.78-1.99,1.77.8,1.77,1.99Zm-2.83,0c0,.82.36,1.46,1.06,1.46s1.05-.64,1.05-1.46-.36-1.46-1.05-1.46-1.06.64-1.06,1.46Z"/>
+ <path id="am" data-name="P" class="bn" d="m32.02,6.49c.46-.09.85-.12,1.2-.12,1.32,0,2,.7,2,1.61,0,1.18-1.02,1.76-2.18,1.76-.13,0-.22,0-.36-.02v2.24h-.66v-5.46Zm.66,2.66c.12.02.29.02.38.02.82,0,1.45-.38,1.45-1.12,0-.67-.46-1.11-1.27-1.11-.18,0-.3,0-.56.04v2.17Z"/>
+ </g>
+ </g>
+ <g id="an" data-name="Nix Logo">
+ <g id="ao" data-name="Snowflake">
+ <path id="aq" data-name="path3336-6" class="bx" d="m14.79,15.75l5.63,9.75-2.59.02-1.5-2.62-1.51,2.61h-1.29s-.66-1.14-.66-1.14l2.16-3.71-1.53-2.66,1.29-2.25Z"/>
+ <g id="ar" data-name="use3439-6">
+ <path id="at" data-name="path3336-6" class="by" d="m16.82,11.73l-5.63,9.75-1.31-2.23,1.52-2.61h-3.01s-.64-1.12-.64-1.12l.66-1.14h4.29s1.54-2.64,1.54-2.64h2.6Z"/>
+ </g>
+ <g id="au" data-name="use3445-0">
+ <path id="aw" data-name="path3336-6" class="bv" d="m17.25,19.53h11.26s-1.27,2.25-1.27,2.25h-3.02s1.5,2.61,1.5,2.61l-.64,1.11h-1.31s-2.13-3.72-2.13-3.72h-3.07s-1.3-2.25-1.3-2.25Z"/>
+ </g>
+ <g id="ax" data-name="use3449-5">
+ <path id="az" data-name="path3336-6" class="bw" d="m23.81,15.25l-5.63-9.75,2.59-.02,1.5,2.62,1.51-2.61h1.29s.66,1.14.66,1.14l-2.16,3.71,1.53,2.66-1.29,2.25Z"/>
+ </g>
+ <path id="bb" data-name="path4260-0" class="bu" d="m14.79,15.75l5.63,9.75-2.59.02-1.5-2.62-1.51,2.61h-1.29s-.66-1.14-.66-1.14l2.16-3.71-1.53-2.66,1.29-2.25Z"/>
+ <g id="bc" data-name="use4354-5">
+ <path id="be" data-name="path4260-0" class="bs" d="m21.32,11.45h-11.26s1.27-2.25,1.27-2.25h3.02s-1.5-2.61-1.5-2.61l.64-1.11h1.31s2.13,3.72,2.13,3.72h3.07s1.3,2.25,1.3,2.25Z"/>
+ </g>
+ <g id="bf" data-name="use4362-2">
+ <path id="bh" data-name="path4260-0" class="bt" d="m21.76,19.27l5.63-9.75,1.31,2.23-1.52,2.61h3.01s.64,1.12.64,1.12l-.66,1.14h-4.29s-1.54,2.64-1.54,2.64h-2.6Z"/>
+ </g>
+ </g>
+ </g>
+</svg> \ No newline at end of file
diff --git a/src/public/imgs/gifs/pride.gif b/src/public/imgs/gifs/pride.gif
new file mode 100644
index 0000000..9a48896
--- /dev/null
+++ b/src/public/imgs/gifs/pride.gif
Binary files differ
diff --git a/src/public/imgs/gifs/steam.gif b/src/public/imgs/gifs/steam.gif
new file mode 100644
index 0000000..1f4fe29
--- /dev/null
+++ b/src/public/imgs/gifs/steam.gif
Binary files differ
diff --git a/src/public/imgs/gifs/tired.gif b/src/public/imgs/gifs/tired.gif
new file mode 100644
index 0000000..bf53872
--- /dev/null
+++ b/src/public/imgs/gifs/tired.gif
Binary files differ
diff --git a/src/public/imgs/gifs/vi.gif b/src/public/imgs/gifs/vi.gif
new file mode 100644
index 0000000..9aa8301
--- /dev/null
+++ b/src/public/imgs/gifs/vi.gif
Binary files differ
diff --git a/src/public/imgs/gifs/web3.gif b/src/public/imgs/gifs/web3.gif
new file mode 100644
index 0000000..4f5a2f1
--- /dev/null
+++ b/src/public/imgs/gifs/web3.gif
Binary files differ
diff --git a/src/public/imgs/gifs/weezer.gif b/src/public/imgs/gifs/weezer.gif
new file mode 100644
index 0000000..d7fa9d1
--- /dev/null
+++ b/src/public/imgs/gifs/weezer.gif
Binary files differ
diff --git a/src/public/imgs/tapwater.png b/src/public/imgs/tapwater.png
new file mode 100644
index 0000000..e84fe8e
--- /dev/null
+++ b/src/public/imgs/tapwater.png
Binary files differ
diff --git a/src/scripts/chrisApp.ts b/src/public/js/chrisApp.js
index 9a9dc0c..eb78cfa 100644
--- a/src/scripts/chrisApp.ts
+++ b/src/public/js/chrisApp.js
@@ -1,4 +1,3 @@
-/* eslint no-undef: "off" */
const chrisURL = "/imgs/chris/";
function randomChris() {
@@ -20,5 +19,12 @@ function randomChris() {
window.location.href = url;
}
-const chris = document.getElementById("chris_gif");
-chris ? chris.addEventListener("click", randomChris) : {};
+function findChris() {
+ const chris = document.getElementById("chris_gif");
+ chris
+ ? chris.addEventListener("click", randomChris)
+ : console.warn("Couldn't load chris app!");
+}
+
+// avoiding a race condition here
+setTimeout(findChris, 1000);