From d67f3514eff4f45ad1ca84cde6465e622acd4dcc Mon Sep 17 00:00:00 2001
From: flu0r1ne <flu0r1ne@flu0r1ne.net>
Date: Thu, 7 Sep 2023 21:28:37 -0500
Subject: Scoped global styling to all markdown

Make React compatible with markdown-style HTML by added components
with identical styling to markdown. This is done while CSS scoping
is maintained. Additional style is loaded through the markdown loader
by injecting default-styling tags into the components. This allows
default-margin to be added to these elements in addition to the styling
found in the React elements. The homepage reflects the domain, as defined
by an environmental variable.
---
 pages/index.tsx | 49 +++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 45 insertions(+), 4 deletions(-)

(limited to 'pages/index.tsx')

diff --git a/pages/index.tsx b/pages/index.tsx
index 8201dbf..9390157 100644
--- a/pages/index.tsx
+++ b/pages/index.tsx
@@ -1,13 +1,54 @@
 import MarkdownPage from '../templates/MarkdownPage';
+
+import Typ from '../components/Typ';
+import ViewPort from '../components/ViewPort';
+import Link from '../components/Link';
+import Code from '../components/Code';
+
 // @ts-ignore
 import md from './greeting.md';
 
+import { List, ListItem } from '../components/List';
+import { DISPLAY_DOMAIN } from '../utils/env';
+
+
 export default function Home() {
+
+  const gitLink = 'https://git.' + DISPLAY_DOMAIN;
+
+  let email : string;
+
+  switch(DISPLAY_DOMAIN) {
+    case "flu0r1ne.net":
+      email = "flu0r1ne [at] flu0r1ne.net";
+      break;
+    case "al.exander.io":
+      email = "alex [at] al.exander.io";
+      break;
+    default:
+      throw Error("Display domain not recognized");
+  }
+
   return (
     <>
-      <MarkdownPage
-        md={md}
-      />
+      <ViewPort size='md' mt={3} >
+        <Typ variant="h2" gutter>Hello,</Typ>
+        <Typ>Welcome to my homepage. I'm a software developer, engi-nerd, and a recent graduate in Computer Engineering at Texas A&M University. I've worked on a wide range of computational projects across a number of subject areas: robotics, bioinformatics, computer security, networking, deep learning, and computer systems. Engineering projects define my life, and fill much of my waking attention.  I've founded and led two robotics teams, built a SLAM system for autonomous driving, worked as an undergraduate teaching assistant for a Data Structures and Algorithms course, created genome analysis toolkits, and have contributed code to high-performance routers. I'm also passionate about open-source and often flit around the internet contributing to open-source projects. Recently, I found and reported a buffer overrun in an in-tree Linux kernel driver and added zsh auto complete support to the popular <Code>argcomplete</Code> module for Python.</Typ>
+        <List mt={1} mb={1} variant="unordered">
+          <ListItem><Link href="/logs">The Logs</Link></ListItem>
+          <ListItem><Link href={gitLink}>Public Git Projects</Link></ListItem>
+          <ListItem>
+            My PGP keys
+            <List variant="unordered">
+              <ListItem><Link href="/flur01ne.asc">Ascii Armored</Link></ListItem>
+              <ListItem><Link href="/flur01ne.pub">Binary</Link></ListItem>
+            </List>
+          </ListItem>
+        </List>
+        <Typ style={{ marginBottom: '0.5rem' }}>I'm a privacy enthusiast and go by my first name, Alex, or my legacy online handle, <Code>flu0r1ne</Code>.</Typ>
+        <Typ gutter>Best,</Typ>
+        <Typ>- Alex {"< " + email + " >"}</Typ>
+      </ViewPort>
     </>
-  )
+  );
 }
-- 
cgit v1.2.3

