diff --git a/src/.astro/settings.json b/src/.astro/settings.json new file mode 100644 index 0000000..565afbb --- /dev/null +++ b/src/.astro/settings.json @@ -0,0 +1,5 @@ +{ + "_variables": { + "lastUpdateCheck": 1730844981172 + } +} \ No newline at end of file diff --git a/src/.astro/types.d.ts b/src/.astro/types.d.ts new file mode 100644 index 0000000..f964fe0 --- /dev/null +++ b/src/.astro/types.d.ts @@ -0,0 +1 @@ +/// diff --git a/src/package.json b/src/package.json index bea8201..7cfb4ac 100644 --- a/src/package.json +++ b/src/package.json @@ -19,6 +19,7 @@ "react": "^18.3.1", "react-dom": "^18.3.1", "react-responsive": "^10.0.0", + "reading-time": "^1.5.0", "typewriter-effect": "^2.21.0" } } diff --git a/src/pnpm-lock.yaml b/src/pnpm-lock.yaml index b02153a..8dedc68 100644 --- a/src/pnpm-lock.yaml +++ b/src/pnpm-lock.yaml @@ -20,6 +20,9 @@ importers: react-responsive: specifier: ^10.0.0 version: 10.0.0(react@18.3.1) + reading-time: + specifier: ^1.5.0 + version: 1.5.0 typewriter-effect: specifier: ^2.21.0 version: 2.21.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -1506,6 +1509,9 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} + reading-time@1.5.0: + resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==} + regex@4.3.3: resolution: {integrity: sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==} @@ -3493,6 +3499,8 @@ snapshots: dependencies: picomatch: 2.3.1 + reading-time@1.5.0: {} + regex@4.3.3: {} rehype-parse@9.0.1: diff --git a/src/src/components/footer/index.tsx b/src/src/components/footer/index.tsx index a909a80..06c81be 100644 --- a/src/src/components/footer/index.tsx +++ b/src/src/components/footer/index.tsx @@ -1,5 +1,4 @@ import React from "react"; - import { Links } from "@/components/footer/links"; export default function Footer({ fixed = false }) { @@ -10,11 +9,11 @@ export default function Footer({ fixed = false }) { > {link.label} - )); + )); return ( diff --git a/src/src/components/footer/links.ts b/src/src/components/footer/links.ts index f42c47d..eacf6d4 100644 --- a/src/src/components/footer/links.ts +++ b/src/src/components/footer/links.ts @@ -9,6 +9,6 @@ export const Links: FooterLink[] = [ { id: 0, href: "mailto:contact@timmypidashev.dev", label: "Contact", color: "text-green" }, { id: 1, href: "https://github.com/timmypidashev", label: "Github", color: "text-yellow" }, { id: 3, href: "https://www.linkedin.com/in/timothy-pidashev-4353812b8", label: "Linkedin", color: "text-blue" }, - { id: 4, href: "https://instagram.com/timmypidashev", label: "Instagram", color: "text-purple" }, - { id: 5, href: "https://github.com/timmypidashev/web", label: "Source", color: "text-aqua" }, + { id: 4, href: "https://github.com/timmypidashev/web", label: "Source", color: "text-purple" }, + { id: 5, href: "https://github.com/timmypidashev/web/releases", label: "v1", color: "text-aqua" } ]; diff --git a/src/src/components/header/index.tsx b/src/src/components/header/index.tsx index 9da30fd..ca456a1 100644 --- a/src/src/components/header/index.tsx +++ b/src/src/components/header/index.tsx @@ -30,12 +30,9 @@ export default function Header() {
-
+
{headerLinks}
-
- {headerLinks} -
); }; diff --git a/src/src/components/header/links.ts b/src/src/components/header/links.ts index d2e9958..3ee1861 100644 --- a/src/src/components/header/links.ts +++ b/src/src/components/header/links.ts @@ -7,8 +7,8 @@ interface HeaderLink { export const Links: HeaderLink[] = [ { id: 0, href: "/", label: "Home", color: "text-green" }, - { id: 1, href: "projects", label: "Projects", color: "text-yellow" }, - { id: 2, href: "resume", label: "Resume", color: "text-blue" }, + { id: 1, href: "about", label: "About", color: "text-yellow" }, + { id: 2, href: "projects", label: "Projects", color: "text-blue" }, { id: 3, href: "blog", label: "Blog", color: "text-purple" }, - { id: 4, href: "shop", label: "Shop", color: "text-aqua" } + { id: 4, href: "resume", label: "Resume", color: "text-aqua" } ]; diff --git a/src/src/data/blog-posts/corebooting-my-thinkpad.md b/src/src/data/blog-posts/corebooting-my-thinkpad.md new file mode 100644 index 0000000..9f5ba64 --- /dev/null +++ b/src/src/data/blog-posts/corebooting-my-thinkpad.md @@ -0,0 +1,104 @@ +--- +title: "I corebooted my T440p, here's how I did it." +author: "Timothy Pidashev" +date: "2024/06/05" +description: "This is a sample MDX file." +tags: ["coreboot", "t440p", "dgpu"] +--- + + +```python +# discord api +import discord +from discord.ext import commands + +# custom utilities +from Utilities import log + +log = log.Logger("errors") + +class Errors(commands.Cog): + def __init__(self, client): + self.client = client + + @commands.Cog.listener() + async def on_ready(self): + await log.info("Errors cog loaded.") + + @commands.Cog.listener() + async def on_command_error(self, context, error): + + if isinstance(error, commands.CheckFailure): + await context.reply( + "You are not priveleged enough to use this command.", + mention_author=False + ) + + else: + await context.reply( + f"**Error**\n```diff\n- {error}```", + mention_author=False + ) + +def setup(client): + client.add_cog(Errors(client)) +``` + +# Heading 1 + +## Heading 2 + +### Heading 3 + +#### Heading 4 + +##### Heading 5 + +###### Heading 6 + +*Italic Text* + +_Italic Text_ + +**Bold Text** + +__Bold Text__ + +* Bullet List + * Item 1 + * Item 2 + * Subitem 1 + * Subitem 2 + +1. Numbered List + 1. Item 1 + 2. Item 2 + - Subitem 1 + - Subitem 2 + +[Link Text](https://example.com) + +![Image Alt Text](https://example.com/image.jpg) + +> Blockquote +> +> Lorem ipsum dolor sit amet, consectetur adipiscing elit. + +`Inline Code` + +| Table Header 1 | Table Header 2 | +|----------------|----------------| +| Table Row 1 | Table Row 1 | +| Table Row 2 | Table Row 2 | + +Superscript Text + +Subscript Text + +Highlighted Text + +Underlined Text + +Strikethrough Text + +Abbreviation diff --git a/src/src/layouts/blog.astro b/src/src/layouts/blog.astro new file mode 100644 index 0000000..ad691db --- /dev/null +++ b/src/src/layouts/blog.astro @@ -0,0 +1,32 @@ +--- +const { content } = Astro.props; + +import "@/style/globals.css"; + +import Header from "@/components/header"; +import Footer from "@/components/footer"; + +export interface Props { + title: string; + description: string; + permalink: string; + current?: string; +} +const { title, description, permalink, current } = Astro.props; +--- + + + + + + + {content.title} + + +
+
+ +
+