favicon svg + prettier format
This commit is contained in:
parent
1bc0731b7e
commit
092880bc37
13 changed files with 163 additions and 73 deletions
|
@ -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
|
Binary file not shown.
Before Width: | Height: | Size: 5.8 KiB |
25
public/favicon.svg
Normal file
25
public/favicon.svg
Normal 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
37
public/git_favicon.svg
Normal 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 |
|
@ -2,5 +2,10 @@
|
|||
const { ...rest } = Astro.props;
|
||||
---
|
||||
|
||||
<a class="font-body underline underline-offset-4 hover:underline-offset-8
|
||||
hover:text-white transition-all duration-300 p-3" {...rest}> <slot /> → </a>
|
||||
<a
|
||||
class="font-body underline underline-offset-4 hover:underline-offset-8
|
||||
hover:text-white transition-all duration-300 p-3"
|
||||
{...rest}
|
||||
>
|
||||
<slot /> →
|
||||
</a>
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
const { ...rest } = Astro.props;
|
||||
---
|
||||
|
||||
<div 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
|
||||
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>
|
||||
|
|
|
@ -9,40 +9,70 @@ import type { ISourceOptions } from "tsparticles-engine";
|
|||
import { options } from "../../particles";
|
||||
import Particles from "astro-particles";
|
||||
const opts = options as ISourceOptions;
|
||||
|
||||
---
|
||||
|
||||
<html lang="en">
|
||||
<head>
|
||||
<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="generator" content={Astro.generator} />
|
||||
|
||||
|
||||
<!-- metadata -->
|
||||
<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 name="keywords" content="noah,noah swerhun,swerhun">
|
||||
<meta name="author" content="Noah Swerhun">
|
||||
<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 name="keywords" content="noah,noah swerhun,swerhun" />
|
||||
<meta name="author" content="Noah Swerhun" />
|
||||
|
||||
<meta property="og:site_name" content="Noah Swerhun's Website">
|
||||
<meta name="twitter:domain" property="twitter:domain" content="noahsw.xyz">
|
||||
<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="og:site_name" content="Noah Swerhun's Website" />
|
||||
<meta
|
||||
name="twitter:domain"
|
||||
property="twitter:domain"
|
||||
content="noahsw.xyz"
|
||||
/>
|
||||
<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 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="twitter:card"
|
||||
content="https://noahsw.xyz/assets/portrait.jpg"
|
||||
/>
|
||||
<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:type" content="website">
|
||||
<meta property="og:url" content="noahsw.xyz" />
|
||||
<meta property="og:type" content="website" />
|
||||
<!-- end metadata -->
|
||||
|
||||
|
||||
<link rel="preconnect" href="https://fonts.bunny.net" />
|
||||
<link
|
||||
href="https://fonts.bunny.net/css?family=azeret-mono:500|fahkwang:700"
|
||||
|
@ -52,14 +82,14 @@ const opts = options as ISourceOptions;
|
|||
</head>
|
||||
|
||||
<body class="bg-secondary text-primary relative" id="tsparticles">
|
||||
<Header />
|
||||
<Profile id="profile"/>
|
||||
<Projects id="projects"/>
|
||||
<Contact id="contact"/>
|
||||
<Footer />
|
||||
<div class="hidden md:block absolute left-0 top-0 z-[-2] h-full w-full">
|
||||
<Particles id="tsparticles" options={opts} init="particlesInit"/>
|
||||
</div>
|
||||
<Header />
|
||||
<Profile id="profile" />
|
||||
<Projects id="projects" />
|
||||
<Contact id="contact" />
|
||||
<Footer />
|
||||
<div class="hidden md:block absolute left-0 top-0 z-[-2] h-full w-full">
|
||||
<Particles id="tsparticles" options={opts} init="particlesInit" />
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
@ -68,10 +98,10 @@ const opts = options as ISourceOptions;
|
|||
import { loadFull } from "tsparticles";
|
||||
|
||||
window.particlesInit = async function (engine: Engine) {
|
||||
await loadFull(engine);
|
||||
}
|
||||
await loadFull(engine);
|
||||
};
|
||||
|
||||
window.particlesLoaded = function (container: Container) {
|
||||
console.log("particlesLoaded callback");
|
||||
}
|
||||
console.log("particlesLoaded callback");
|
||||
};
|
||||
</script>
|
||||
|
|
|
@ -11,9 +11,7 @@ const { ...rest } = Astro.props;
|
|||
<SecHeading>CONTACT</SecHeading>
|
||||
</div>
|
||||
<div class="text-center">
|
||||
<BodyText>
|
||||
Email me at
|
||||
</BodyText>
|
||||
<BodyText>Email me at</BodyText>
|
||||
</div>
|
||||
<Link href="mailto:noahs@uchicago.edu">noahs@uchicago.edu</Link>
|
||||
</Section>
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
---
|
||||
|
||||
---
|
||||
|
||||
<footer class="w-full">
|
||||
<div class="md:w-2/3 w-11/12 mx-auto flex justify-center items-center">
|
||||
<div class="py-16">
|
||||
|
|
|
@ -1,8 +1,11 @@
|
|||
---
|
||||
import Section from "../components/Section.astro";
|
||||
---
|
||||
|
||||
<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
|
||||
class="flex flex-cols justify-between md:gap-4 gap-1 my-2 md:text-lg font-display"
|
||||
>
|
||||
|
|
|
@ -6,12 +6,13 @@ import SubHeading from "../components/SubHeading.astro";
|
|||
import Link from "../components/Link.astro";
|
||||
import LinkButton from "../components/LinkButton.astro";
|
||||
|
||||
import { Image } from 'astro:assets';
|
||||
import drfeelycom from "../../public/assets/drfeelycom.png"
|
||||
import ngen from "../../public/assets/ngen.png"
|
||||
import { Image } from "astro:assets";
|
||||
import drfeelycom from "../../public/assets/drfeelycom.png";
|
||||
import ngen from "../../public/assets/ngen.png";
|
||||
|
||||
const { ...rest } = Astro.props;
|
||||
---
|
||||
|
||||
<Section class="mb-7" {...rest}>
|
||||
<div class="text-center">
|
||||
<SecHeading>PROJECTS</SecHeading>
|
||||
|
@ -28,13 +29,15 @@ const { ...rest } = Astro.props;
|
|||
<div>
|
||||
<SubHeading>NGEN</SubHeading>
|
||||
<BodyText>
|
||||
ngen (engine) is a simple makefile generator for the Ninja build system.
|
||||
Unlike other, more complex meta build systems, which require
|
||||
ngen (engine) is a simple makefile generator for the Ninja build
|
||||
system. Unlike other, more complex meta build systems, which require
|
||||
knowledge of unique configuration languages, ngen uses an
|
||||
easy-to-understand key-value file, making build configuration simpler
|
||||
and easier for small to medium sized projects.
|
||||
</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>
|
||||
|
@ -48,7 +51,12 @@ const { ...rest } = Astro.props;
|
|||
research, and innovative treatment methods.
|
||||
</BodyText>
|
||||
<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 class="basis-1/3 my-7">
|
||||
|
@ -60,6 +68,8 @@ const { ...rest } = Astro.props;
|
|||
</div>
|
||||
</div>
|
||||
<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>
|
||||
</Section>
|
||||
|
|
Loading…
Reference in a new issue