diff --git a/package-lock.json b/package-lock.json index 858ae34..59b3a9d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18,6 +18,7 @@ "@fontsource/borel": "^5.1.1", "astro": "^5.1.6", "astro-icon": "^1.1.4", + "dayjs": "^1.11.13", "rehype-external-links": "^3.0.0", "tailwindcss": "^3.4.15", "typescript": "^5.7.2" @@ -2977,6 +2978,12 @@ "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", "license": "CC0-1.0" }, + "node_modules/dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==", + "license": "MIT" + }, "node_modules/debug": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", diff --git a/package.json b/package.json index a8ecb46..1ac255b 100644 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ "@fontsource/borel": "^5.1.1", "astro": "^5.1.6", "astro-icon": "^1.1.4", + "dayjs": "^1.11.13", "rehype-external-links": "^3.0.0", "tailwindcss": "^3.4.15", "typescript": "^5.7.2" diff --git a/src/components/Head.astro b/src/components/Head.astro index 453ade7..34878fa 100644 --- a/src/components/Head.astro +++ b/src/components/Head.astro @@ -1,6 +1,7 @@ --- import { SITE } from "@consts"; import gradient from "../../public/assets/gradient.avif"; +import { ClientRouter } from 'astro:transitions'; interface Props { title: string; @@ -92,11 +93,7 @@ import redhatmono from "@fontsource-variable/red-hat-mono/files/red-hat-mono-lat <meta property="twitter:image" content={new URL(image, Astro.url)} /> <!-- View Transitions --> - <style> - @view-transition { - navigation: auto; - } - </style> + <ClientRouter /> <!-- Font Preload --> <link diff --git a/src/content/config.ts b/src/content/config.ts index 97280a0..f5e6579 100644 --- a/src/content/config.ts +++ b/src/content/config.ts @@ -1,4 +1,5 @@ import { defineCollection, z } from "astro:content"; +import { rssSchema } from '@astrojs/rss'; const posts = defineCollection({ type: "content", @@ -16,7 +17,7 @@ const posts = defineCollection({ tags: z.array(z.string()), extraAuthors: z.array(z.string()).optional(), categories: z.array(z.string()), - }), + }).merge(rssSchema) }); const projects = defineCollection({ @@ -38,7 +39,7 @@ const projects = defineCollection({ featured: z.boolean().optional(), collection: z.boolean().optional(), includeHero: z.boolean().optional(), - }), + }).merge(rssSchema) }); const work = defineCollection({ diff --git a/src/content/projects/packard/demo.gif b/src/content/projects/packard/demo.gif index ea0498a..f823c63 100644 Binary files a/src/content/projects/packard/demo.gif and b/src/content/projects/packard/demo.gif differ diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro index e761dcc..f1b9972 100644 --- a/src/layouts/Layout.astro +++ b/src/layouts/Layout.astro @@ -26,13 +26,13 @@ const { title, description, image, date, updated, tags } = Astro.props; updated={updated} tags={tags} /> - <body class="bg-primary text-secondary"> - <div class="flex min-h-screen flex-col justify-start p-8 pt-0 md:pt-8"> - <Header /> - <main class="mx-auto w-full max-w-prose space-y-6"> - <slot /> - </main> - <Footer /> - </div> + <body + class="flex min-h-screen flex-col justify-start bg-primary p-8 pt-0 text-secondary md:pt-8" + > + <Header /> + <main class="mx-auto w-full max-w-prose space-y-6"> + <slot /> + </main> + <Footer /> </body> </html> diff --git a/src/styles/global.css b/src/styles/global.css index f915d20..c3b3c96 100644 --- a/src/styles/global.css +++ b/src/styles/global.css @@ -25,14 +25,22 @@ @layer components { .prose img { - @apply transition-transform hover:scale-[98%] active:scale-[200%]; + @apply cursor-pointer transition-transform hover:scale-[98%] active:scale-[200%]; } } @media print { body { - margin: 0; - color: #000; - background-color: #fff; + background: none; + color: black; + } + header, + footer, + main { + max-width: unset !important; + } + header, + footer { + display: none; } }