fixed typos, added logos, changed email

This commit is contained in:
Noah Swerhun 2024-03-30 12:30:54 -05:00
parent 0de74d2092
commit 3f30510013
15 changed files with 248 additions and 23 deletions

1
.gitignore vendored
View file

@ -19,3 +19,4 @@ pnpm-debug.log*
# macOS-specific files # macOS-specific files
.DS_Store .DS_Store
sync.sh

78
public/assets/favicon.svg Normal file
View file

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="300"
height="300"
viewBox="0 0 300 300"
version="1.1"
id="svg1"
inkscape:export-filename="git_favicon.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xml:space="preserve"
inkscape:version="1.3.2 (091e20ef0f, 2023-11-25, custom)"
sodipodi:docname="favicon.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
id="namedview1"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:document-units="px"
showguides="true"
inkscape:zoom="2.2250293"
inkscape:cx="126.96462"
inkscape:cy="169.8854"
inkscape:window-width="1906"
inkscape:window-height="1164"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="layer1"><sodipodi:guide
position="-30.561395,300"
orientation="0,-1"
id="guide1"
inkscape:locked="false" /><sodipodi:guide
position="-69.662003,-0.22076072"
orientation="0,-1"
id="guide2"
inkscape:locked="false" /><sodipodi:guide
position="0,78.87932"
orientation="1,0"
id="guide3"
inkscape:locked="false" /><sodipodi:guide
position="300.22076,134.15949"
orientation="1,0"
id="guide4"
inkscape:locked="false" /></sodipodi:namedview><defs
id="defs1"><clipPath
id="a"><path
d="M0 .113h91.887V92H0Zm0 0"
id="path1" /></clipPath></defs><g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"><rect
style="fill:#121412;fill-opacity:1;stroke-width:1.05615"
id="rect1"
width="300"
height="300"
x="0"
y="0"
ry="41.023827" /><text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:245.333px;font-family:Fahkwang;-inkscape-font-specification:'Fahkwang Bold';fill:#121412;fill-opacity:1;stroke-width:1"
x="48.309475"
y="235.86653"
id="text6"><tspan
sodipodi:role="line"
id="tspan6"
x="48.309475"
y="235.86653"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:245.333px;font-family:Fahkwang;-inkscape-font-specification:'Fahkwang Bold';fill:#f2fcf4;fill-opacity:1;stroke-width:1">N</tspan></text></g></svg>

After

Width:  |  Height:  |  Size: 2.8 KiB

View file

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="300"
height="300"
viewBox="0 0 300 300"
version="1.1"
id="svg1"
inkscape:export-filename="git_favicon.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xml:space="preserve"
inkscape:version="1.3.2 (091e20ef0f, 2023-11-25, custom)"
sodipodi:docname="favicon_git.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
id="namedview1"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:document-units="px"
showguides="true"
inkscape:zoom="2.2250293"
inkscape:cx="126.96462"
inkscape:cy="169.8854"
inkscape:window-width="1906"
inkscape:window-height="1164"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="layer1"><sodipodi:guide
position="-30.561395,300"
orientation="0,-1"
id="guide1"
inkscape:locked="false" /><sodipodi:guide
position="-69.662003,-0.22076072"
orientation="0,-1"
id="guide2"
inkscape:locked="false" /><sodipodi:guide
position="0,78.87932"
orientation="1,0"
id="guide3"
inkscape:locked="false" /><sodipodi:guide
position="300.22076,134.15949"
orientation="1,0"
id="guide4"
inkscape:locked="false" /></sodipodi:namedview><defs
id="defs1"><clipPath
id="a"><path
d="M0 .113h91.887V92H0Zm0 0"
id="path1" /></clipPath></defs><g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"><rect
style="fill:#121412;fill-opacity:1;stroke-width:0.704285"
id="rect1"
width="200.05225"
height="200.05225"
x="0"
y="0"
ry="27.356361" /><rect
style="fill:#121412;fill-opacity:1;stroke-width:0.42276"
id="rect1-4"
width="120.48536"
height="119.68626"
x="232.76726"
y="-53.60133"
ry="16.366627"
transform="rotate(43.795632)" /><text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:163.598px;font-family:Fahkwang;-inkscape-font-specification:'Fahkwang Bold';fill:#121412;fill-opacity:1;stroke-width:0.666841"
x="32.214729"
y="157.28543"
id="text6"><tspan
sodipodi:role="line"
id="tspan6"
x="32.214729"
y="157.28543"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:163.598px;font-family:Fahkwang;-inkscape-font-specification:'Fahkwang Bold';fill:#f2fcf4;fill-opacity:1;stroke-width:0.666841">N</tspan></text><path
style="fill:#f03c2e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.06862"
d="m 296.20681,196.64893 -82.99335,-82.98714 a 12.242143,12.242143 0 0 0 -17.31858,0 l -17.22753,17.23579 21.85713,21.85713 a 14.542457,14.542457 0 0 1 14.95617,3.48356 14.55073,14.55073 0 0 1 3.45256,15.05342 l 21.07311,21.0669 a 14.538321,14.538321 0 0 1 15.05547,3.45876 14.563144,14.563144 0 0 1 0,20.59732 14.583829,14.583829 0 0 1 -20.61386,0 14.571418,14.571418 0 0 1 -3.16087,-15.84568 l -19.65197,-19.64576 v 51.70948 a 14.563144,14.563144 0 0 1 3.84765,23.35483 14.563144,14.563144 0 0 1 -20.59732,0 14.563144,14.563144 0 0 1 0,-20.59941 14.604517,14.604517 0 0 1 4.76612,-3.18361 v -52.1853 a 14.581763,14.581763 0 0 1 -7.90218,-19.1017 L 170.1984,139.3624 113.28629,196.26002 a 12.256622,12.256622 0 0 0 0,17.3165 l 82.99751,82.99751 a 12.256622,12.256622 0 0 0 17.31442,0 l 82.60859,-82.60861 a 12.256622,12.256622 0 0 0 0,-17.31649"
id="path2"
clip-path="url(#clipPath3)" /></g></svg>

After

Width:  |  Height:  |  Size: 4 KiB

View file

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="300"
height="300"
viewBox="0 0 300 300"
version="1.1"
id="svg1"
xml:space="preserve"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs1" /><g
id="layer1"><rect
style="fill:#121412;fill-opacity:1;stroke-width:0.704285"
id="rect1"
width="200.05225"
height="200.05225"
x="0"
y="0"
ry="27.356361" /><rect
style="fill:#121412;fill-opacity:1;stroke-width:0.42276"
id="rect1-4"
width="120.48536"
height="119.68626"
x="232.76726"
y="-53.60133"
ry="16.366627"
transform="rotate(43.795632)" /><path
style="font-weight:bold;font-size:163.598px;font-family:Fahkwang;-inkscape-font-specification:'Fahkwang Bold';fill:#f2fcf4;stroke-width:0.666841"
d="M 43.993786,42.766826 H 71.314653 L 129.88274,120.14868 V 42.766826 h 26.17568 V 157.28543 H 137.40825 L 70.169467,67.306527 V 157.28543 H 43.993786 Z"
id="text6"
aria-label="N" /><path
style="fill:#f03c2e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.06862"
d="m 296.20681,196.64893 -82.99335,-82.98714 a 12.242143,12.242143 0 0 0 -17.31858,0 l -17.22753,17.23579 21.85713,21.85713 a 14.542457,14.542457 0 0 1 14.95617,3.48356 14.55073,14.55073 0 0 1 3.45256,15.05342 l 21.07311,21.0669 a 14.538321,14.538321 0 0 1 15.05547,3.45876 14.563144,14.563144 0 0 1 0,20.59732 14.583829,14.583829 0 0 1 -20.61386,0 14.571418,14.571418 0 0 1 -3.16087,-15.84568 l -19.65197,-19.64576 v 51.70948 a 14.563144,14.563144 0 0 1 3.84765,23.35483 14.563144,14.563144 0 0 1 -20.59732,0 14.563144,14.563144 0 0 1 0,-20.59941 14.604517,14.604517 0 0 1 4.76612,-3.18361 v -52.1853 a 14.581763,14.581763 0 0 1 -7.90218,-19.1017 L 170.1984,139.3624 113.28629,196.26002 a 12.256622,12.256622 0 0 0 0,17.3165 l 82.99751,82.99751 a 12.256622,12.256622 0 0 0 17.31442,0 l 82.60859,-82.60861 a 12.256622,12.256622 0 0 0 0,-17.31649"
id="path2"
clip-path="url(#clipPath3)" /></g></svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View file

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="300"
height="300"
viewBox="0 0 300 300"
version="1.1"
id="svg1"
xml:space="preserve"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs1" /><g
id="layer1"><rect
style="fill:#121412;fill-opacity:1;stroke-width:1.05615"
id="rect1"
width="300"
height="300"
x="0"
y="0"
ry="41.023827" /><path
style="font-weight:bold;font-size:245.333px;font-family:Fahkwang;-inkscape-font-specification:'Fahkwang Bold';fill:#f2fcf4"
d="m 65.97345,64.133437 h 40.97061 L 194.77327,180.17594 V 64.133437 h 39.25328 V 235.86653 H 206.05859 L 105.22673,100.93339 V 235.86653 H 65.97345 Z"
id="text6"
aria-label="N" /></g></svg>

After

Width:  |  Height:  |  Size: 879 B

BIN
public/assets/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

BIN
public/assets/logo_git.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

BIN
public/favicon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

View file

@ -1,9 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 128 128">
<path d="M50.4 78.5a75.1 75.1 0 0 0-28.5 6.9l24.2-65.7c.7-2 1.9-3.2 3.4-3.2h29c1.5 0 2.7 1.2 3.4 3.2l24.2 65.7s-11.6-7-28.5-7L67 45.5c-.4-1.7-1.6-2.8-2.9-2.8-1.3 0-2.5 1.1-2.9 2.7L50.4 78.5Zm-1.1 28.2Zm-4.2-20.2c-2 6.6-.6 15.8 4.2 20.2a17.5 17.5 0 0 1 .2-.7 5.5 5.5 0 0 1 5.7-4.5c2.8.1 4.3 1.5 4.7 4.7.2 1.1.2 2.3.2 3.5v.4c0 2.7.7 5.2 2.2 7.4a13 13 0 0 0 5.7 4.9v-.3l-.2-.3c-1.8-5.6-.5-9.5 4.4-12.8l1.5-1a73 73 0 0 0 3.2-2.2 16 16 0 0 0 6.8-11.4c.3-2 .1-4-.6-6l-.8.6-1.6 1a37 37 0 0 1-22.4 2.7c-5-.7-9.7-2-13.2-6.2Z" />
<style>
path { fill: #000; }
@media (prefers-color-scheme: dark) {
path { fill: #FFF; }
}
</style>
</svg>

Before

Width:  |  Height:  |  Size: 749 B

BIN
public/favicon_git.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

View file

@ -15,7 +15,7 @@ const opts = options as ISourceOptions;
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" /> <link rel="icon" type="image/svg+xml" href="/favicon.png" />
<meta name="viewport" content="width=device-width" /> <meta name="viewport" content="width=device-width" />
<meta name="generator" content={Astro.generator} /> <meta name="generator" content={Astro.generator} />
<link rel="preconnect" href="https://fonts.bunny.net" /> <link rel="preconnect" href="https://fonts.bunny.net" />
@ -28,11 +28,11 @@ const opts = options as ISourceOptions;
<body class="bg-secondary text-primary relative" id="tsparticles"> <body class="bg-secondary text-primary relative" id="tsparticles">
<Header /> <Header />
<Profile /> <Profile id="profile"/>
<Projects /> <Projects id="projects"/>
<Contact /> <Contact id="contact"/>
<Footer /> <Footer />
<div class="absolute left-0 top-0 z-[-2] h-full w-full"> <div class="hidden md:block absolute left-0 top-0 z-[-2] h-full w-full">
<Particles id="tsparticles" options={opts} init="particlesInit"/> <Particles id="tsparticles" options={opts} init="particlesInit"/>
</div> </div>
</body> </body>

View file

@ -3,9 +3,10 @@ import Section from "../components/Section.astro";
import SecHeading from "../components/SecHeading.astro"; import SecHeading from "../components/SecHeading.astro";
import BodyText from "../components/BodyText.astro"; import BodyText from "../components/BodyText.astro";
import Link from "../components/Link.astro"; import Link from "../components/Link.astro";
const { ...rest } = Astro.props;
--- ---
<Section> <Section {...rest}>
<div class="text-center"> <div class="text-center">
<SecHeading>CONTACT</SecHeading> <SecHeading>CONTACT</SecHeading>
</div> </div>
@ -14,5 +15,5 @@ import Link from "../components/Link.astro";
Email me at Email me at
</BodyText> </BodyText>
</div> </div>
<Link href="mailto:noah@noahsw.xyz">noah@noahsw.xyz</Link> <Link href="mailto:noahs@uchicago.edu">noahs@uchicago.edu</Link>
</Section> </Section>

View file

@ -6,10 +6,10 @@ import Section from "../components/Section.astro";
<div <div
class="flex flex-cols justify-between md:gap-4 gap-1 my-2 md:text-lg font-display" class="flex flex-cols justify-between md:gap-4 gap-1 my-2 md:text-lg font-display"
> >
<div>PROFILE</div> <div><a href="#profile">PROFILE</a></div>
<div>·</div> <div>·</div>
<div>PROJECTS</div> <div><a href="#projects">PROJECTS</a></div>
<div>·</div> <div>·</div>
<div>CONTACT</div> <div><a href="#contact">CONTACT</a></div>
</div> </div>
</Section> </Section>

View file

@ -2,9 +2,10 @@
import Section from "../components/Section.astro"; import Section from "../components/Section.astro";
import BodyText from "../components/BodyText.astro"; import BodyText from "../components/BodyText.astro";
import SecHeading from "../components/SecHeading.astro"; import SecHeading from "../components/SecHeading.astro";
const { ...rest } = Astro.props;
--- ---
<Section> <Section {...rest}>
<div class="flex md:flex-row flex-col-reverse justify-around items-center"> <div class="flex md:flex-row flex-col-reverse justify-around items-center">
<div class="basis-1/2 my-7"> <div class="basis-1/2 my-7">
<SecHeading>PROFILE</SecHeading> <SecHeading>PROFILE</SecHeading>
@ -23,7 +24,7 @@ import SecHeading from "../components/SecHeading.astro";
<BodyText> <BodyText>
Outside of work and school, Noah enjoys reading and programming. His Outside of work and school, Noah enjoys reading and programming. His
preferred genre of literature is the philosophical novel; among his preferred genre of literature is the philosophical novel; among his
favories are Dostoevsky's <em>The Idiot</em> and di Lampedusa's favorites are Dostoevsky's <em>The Idiot</em> and di Lampedusa's
<em>The Leopard.</em> <em>The Leopard.</em>
</BodyText> </BodyText>
</div> </div>

View file

@ -5,8 +5,9 @@ import SecHeading from "../components/SecHeading.astro";
import SubHeading from "../components/SubHeading.astro"; import SubHeading from "../components/SubHeading.astro";
import Link from "../components/Link.astro"; import Link from "../components/Link.astro";
import LinkButton from "../components/LinkButton.astro"; import LinkButton from "../components/LinkButton.astro";
const { ...rest } = Astro.props;
--- ---
<Section class="mb-7"> <Section class="mb-7" {...rest}>
<div class="text-center"> <div class="text-center">
<SecHeading>PROJECTS</SecHeading> <SecHeading>PROJECTS</SecHeading>
</div> </div>
@ -24,7 +25,7 @@ import LinkButton from "../components/LinkButton.astro";
<BodyText> <BodyText>
ngen (engine) is a simple makefile generator for the Ninja build system. ngen (engine) is a simple makefile generator for the Ninja build system.
Unlike other, more complex meta build systems, which require Unlike other, more complex meta build systems, which require
knowledge unique configuration languages, ngen uses an knowledge of unique configuration languages, ngen uses an
easy-to-understand key-value file, making build configuration simpler easy-to-understand key-value file, making build configuration simpler
and easier for small to medium sized projects. and easier for small to medium sized projects.
</BodyText> </BodyText>