favicon svg + prettier format

This commit is contained in:
Noah Swerhun 2024-04-01 21:49:46 -05:00
parent 1bc0731b7e
commit 092880bc37
13 changed files with 163 additions and 73 deletions

View file

@ -1,21 +0,0 @@
# build output
dist/
# generated types
.astro/
# dependencies
node_modules/
# logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# environment variables
.env
.env.production
# macOS-specific files
.DS_Store

View file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

25
public/favicon.svg Normal file
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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

37
public/git_favicon.svg Normal file
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

@ -2,5 +2,10 @@
const { ...rest } = Astro.props; const { ...rest } = Astro.props;
--- ---
<a class="font-body underline underline-offset-4 hover:underline-offset-8 <a
hover:text-white transition-all duration-300 p-3" {...rest}> <slot /> → </a> class="font-body underline underline-offset-4 hover:underline-offset-8
hover:text-white transition-all duration-300 p-3"
{...rest}
>
<slot /> →
</a>

View file

@ -2,6 +2,8 @@
const { ...rest } = Astro.props; const { ...rest } = Astro.props;
--- ---
<div class="inline-block bg-primary text-secondary rounded-lg hover:bg-white transition-all duration-300"> <div
<a class="block font-body py-3 px-6 text-center" {...rest}> <slot /> → </a> class="inline-block bg-primary text-secondary rounded-lg hover:bg-white transition-all duration-300"
>
<a class="block font-body py-3 px-6 text-center" {...rest}> <slot /> →</a>
</div> </div>

View file

@ -9,40 +9,70 @@ import type { ISourceOptions } from "tsparticles-engine";
import { options } from "../../particles"; import { options } from "../../particles";
import Particles from "astro-particles"; import Particles from "astro-particles";
const opts = options as ISourceOptions; 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.png" /> <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<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} />
<!-- metadata --> <!-- metadata -->
<meta name="robots" content="index, follow"> <meta name="robots" content="index, follow" />
<meta name="description" content="Noah Swerhun is a mathematics student at the University of Chicago, studying for a career in finance."> <meta
<meta name="keywords" content="noah,noah swerhun,swerhun"> name="description"
<meta name="author" content="Noah Swerhun"> content="Noah Swerhun is a mathematics student at the University of Chicago, studying for a career in finance."
/>
<meta name="keywords" content="noah,noah swerhun,swerhun" />
<meta name="author" content="Noah Swerhun" />
<meta property="og:site_name" content="Noah Swerhun's Website"> <meta property="og:site_name" content="Noah Swerhun's Website" />
<meta name="twitter:domain" property="twitter:domain" content="noahsw.xyz"> <meta
<meta name="og:title" property="og:title" content="Noah Swerhun's Profile"> name="twitter:domain"
<meta property="og:description" content="Noah Swerhun is a mathematics student at the University of Chicago, studying for a career in finance."> property="twitter:domain"
<meta name="twitter:description" property="twitter:description" content="Noah Swerhun is a mathematics student at the University of Chicago, studying for a career in finance."> content="noahsw.xyz"
<meta name="og:image" content="https://noahsw.xyz/assets/portrait.jpg"> />
<meta
name="og:title"
property="og:title"
content="Noah Swerhun's Profile"
/>
<meta
property="og:description"
content="Noah Swerhun is a mathematics student at the University of Chicago, studying for a career in finance."
/>
<meta
name="twitter:description"
property="twitter:description"
content="Noah Swerhun is a mathematics student at the University of Chicago, studying for a career in finance."
/>
<meta name="og:image" content="https://noahsw.xyz/assets/portrait.jpg" />
<meta property="twitter:card" content="https://noahsw.xyz/assets/portrait.jpg"> <meta
<meta name="twitter:image:src" property="twitter:image:src" content="https://noahsw.xyz/assets/portrait.jpg"> property="twitter:card"
<meta name="twitter:image" property="twitter:image" content="https://noahsw.xyz/assets/portrait.jpg"> content="https://noahsw.xyz/assets/portrait.jpg"
<meta name="og:image:alt" property="og:image:alt" content="Portrait of Noah Swerhun"> />
<meta
name="twitter:image:src"
property="twitter:image:src"
content="https://noahsw.xyz/assets/portrait.jpg"
/>
<meta
name="twitter:image"
property="twitter:image"
content="https://noahsw.xyz/assets/portrait.jpg"
/>
<meta
name="og:image:alt"
property="og:image:alt"
content="Portrait of Noah Swerhun"
/>
<meta property="og:url" content="noahsw.xyz"> <meta property="og:url" content="noahsw.xyz" />
<meta property="og:type" content="website"> <meta property="og:type" content="website" />
<!-- end metadata --> <!-- end metadata -->
<link rel="preconnect" href="https://fonts.bunny.net" /> <link rel="preconnect" href="https://fonts.bunny.net" />
<link <link
href="https://fonts.bunny.net/css?family=azeret-mono:500|fahkwang:700" href="https://fonts.bunny.net/css?family=azeret-mono:500|fahkwang:700"
@ -53,12 +83,12 @@ 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 id="profile"/> <Profile id="profile" />
<Projects id="projects"/> <Projects id="projects" />
<Contact id="contact"/> <Contact id="contact" />
<Footer /> <Footer />
<div class="hidden md:block 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>
</html> </html>
@ -69,9 +99,9 @@ const opts = options as ISourceOptions;
window.particlesInit = async function (engine: Engine) { window.particlesInit = async function (engine: Engine) {
await loadFull(engine); await loadFull(engine);
} };
window.particlesLoaded = function (container: Container) { window.particlesLoaded = function (container: Container) {
console.log("particlesLoaded callback"); console.log("particlesLoaded callback");
} };
</script> </script>

View file

@ -11,9 +11,7 @@ const { ...rest } = Astro.props;
<SecHeading>CONTACT</SecHeading> <SecHeading>CONTACT</SecHeading>
</div> </div>
<div class="text-center"> <div class="text-center">
<BodyText> <BodyText>Email me at</BodyText>
Email me at
</BodyText>
</div> </div>
<Link href="mailto:noahs@uchicago.edu">noahs@uchicago.edu</Link> <Link href="mailto:noahs@uchicago.edu">noahs@uchicago.edu</Link>
</Section> </Section>

View file

@ -1,6 +1,7 @@
--- ---
--- ---
<footer class="w-full"> <footer class="w-full">
<div class="md:w-2/3 w-11/12 mx-auto flex justify-center items-center"> <div class="md:w-2/3 w-11/12 mx-auto flex justify-center items-center">
<div class="py-16"> <div class="py-16">

View file

@ -1,8 +1,11 @@
--- ---
import Section from "../components/Section.astro"; import Section from "../components/Section.astro";
--- ---
<Section class="py-10 md:py-0"> <Section class="py-10 md:py-0">
<h1 class="font-display lg:text-5xl md:text-4xl text-3xl text-center">NOAH SWERHUN</h1> <h1 class="font-display lg:text-5xl md:text-4xl text-3xl text-center">
NOAH SWERHUN
</h1>
<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"
> >

View file

@ -6,12 +6,13 @@ 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";
import { Image } from 'astro:assets'; import { Image } from "astro:assets";
import drfeelycom from "../../public/assets/drfeelycom.png" import drfeelycom from "../../public/assets/drfeelycom.png";
import ngen from "../../public/assets/ngen.png" import ngen from "../../public/assets/ngen.png";
const { ...rest } = Astro.props; const { ...rest } = Astro.props;
--- ---
<Section class="mb-7" {...rest}> <Section class="mb-7" {...rest}>
<div class="text-center"> <div class="text-center">
<SecHeading>PROJECTS</SecHeading> <SecHeading>PROJECTS</SecHeading>
@ -28,13 +29,15 @@ const { ...rest } = Astro.props;
<div> <div>
<SubHeading>NGEN</SubHeading> <SubHeading>NGEN</SubHeading>
<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
Unlike other, more complex meta build systems, which require system. Unlike other, more complex meta build systems, which require
knowledge of 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>
<Link href="https://git.noahsw.xyz/noah/ngen" target="about:blank">Git Repo</Link> <Link href="https://git.noahsw.xyz/noah/ngen" target="about:blank">
Git Repo
</Link>
</div> </div>
</div> </div>
</div> </div>
@ -48,7 +51,12 @@ const { ...rest } = Astro.props;
research, and innovative treatment methods. research, and innovative treatment methods.
</BodyText> </BodyText>
<Link href="https://drfeely.com" target="about:blank">Drfeely.com</Link> <Link href="https://drfeely.com" target="about:blank">Drfeely.com</Link>
<Link href="https://git.noahsw.xyz/noah/drfeely.com" target="about:blank">Git Repo</Link> <Link
href="https://git.noahsw.xyz/noah/drfeely.com"
target="about:blank"
>
Git Repo
</Link>
</div> </div>
</div> </div>
<div class="basis-1/3 my-7"> <div class="basis-1/3 my-7">
@ -60,6 +68,8 @@ const { ...rest } = Astro.props;
</div> </div>
</div> </div>
<div class="flex justify-around mt-10"> <div class="flex justify-around mt-10">
<LinkButton href="https://git.noahsw.xyz">View all projects at git.noahsw.xyz</LinkButton> <LinkButton href="https://git.noahsw.xyz">
View all projects at git.noahsw.xyz
</LinkButton>
</div> </div>
</Section> </Section>