diff --git a/.gitignore b/.gitignore index 1386c222..31805abe 100644 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,6 @@ yarn.lock # next-agents-md .next-docs/ + +# content-collections +.content-collections/ diff --git a/app/(home)/icons/snoozle.png b/app/(home)/icons/snoozle.png index 0529dc19..fb480740 100644 Binary files a/app/(home)/icons/snoozle.png and b/app/(home)/icons/snoozle.png differ diff --git a/app/(home)/icons/sofa.png b/app/(home)/icons/sofa.png index d800c071..7aab3099 100644 Binary files a/app/(home)/icons/sofa.png and b/app/(home)/icons/sofa.png differ diff --git a/app/(home)/icons/stanza.png b/app/(home)/icons/stanza.png new file mode 100644 index 00000000..ef7bb03b Binary files /dev/null and b/app/(home)/icons/stanza.png differ diff --git a/app/(home)/icons/versioneer.png b/app/(home)/icons/versioneer.png index c853a5b1..7f5e5e7a 100644 Binary files a/app/(home)/icons/versioneer.png and b/app/(home)/icons/versioneer.png differ diff --git a/app/(home)/page.tsx b/app/(home)/page.tsx index 60f25b2c..eac17e51 100644 --- a/app/(home)/page.tsx +++ b/app/(home)/page.tsx @@ -7,6 +7,7 @@ import { FadeTransition } from "@/components/page-transition"; import domainstackIcon from "./icons/domainstack.png"; import snoozleIcon from "./icons/snoozle.png"; import sofaIcon from "./icons/sofa.png"; +import stanzaIcon from "./icons/stanza.png"; import uiIcon from "./icons/ui.png"; import versioneerIcon from "./icons/versioneer.png"; @@ -24,6 +25,12 @@ const projects: readonly Project[] = [ tagline: "Domain intelligence made easy", icon: domainstackIcon, }, + { + name: "Stanza", + url: "https://stanza.tools", + tagline: "shadcn/ui for infrastructure", + icon: stanzaIcon, + }, { name: "Sofa", url: "https://sofa.watch", @@ -45,7 +52,7 @@ const projects: readonly Project[] = [ { name: "jarvis-ui", url: "https://ui.jarv.is", - tagline: "An intentionally minimal React component library", + tagline: "Intentionally random React component library", icon: uiIcon, }, ] as const; diff --git a/app/globals.css b/app/globals.css index e1f6add1..386d4896 100644 --- a/app/globals.css +++ b/app/globals.css @@ -195,7 +195,7 @@ @layer base { * { - @apply outline-ring/50; + @apply border-border outline-ring/50; } body { @apply bg-background text-foreground; diff --git a/app/notes/[slug]/page.tsx b/app/notes/[slug]/page.tsx index 0188c73e..5b84e85b 100644 --- a/app/notes/[slug]/page.tsx +++ b/app/notes/[slug]/page.tsx @@ -14,7 +14,7 @@ import { ViewCounter } from "@/components/view-counter"; import authorConfig from "@/lib/config/author"; import siteConfig from "@/lib/config/site"; import { createMetadata } from "@/lib/metadata"; -import { getFrontMatter, getSlugs, POSTS_DIR } from "@/lib/posts"; +import { getFrontMatter, getPost, getSlugs, POSTS_DIR } from "@/lib/posts"; import { size as ogImageSize } from "./opengraph-image"; @@ -54,10 +54,10 @@ export const generateMetadata = async ({ const Page = async ({ params }: { params: Promise<{ slug: string }> }) => { const { slug } = await params; - const frontmatter = await getFrontMatter(slug); - if (!frontmatter) notFound(); - const d = new Date(frontmatter.date); + const post = await getPost(slug); + if (!post) notFound(); + const d = new Date(post.date); const formattedDates = { dateISO: d.toISOString(), dateTitle: d.toLocaleString("en-US", { @@ -83,18 +83,18 @@ const Page = async ({ params }: { params: Promise<{ slug: string }> }) => { item={{ "@context": "https://schema.org", "@type": "BlogPosting", - headline: frontmatter?.title, - description: frontmatter?.description, - url: frontmatter?.permalink, + headline: post.title, + description: post.description, + url: post.permalink, image: { "@type": "ImageObject", - contentUrl: `${process.env.NEXT_PUBLIC_BASE_URL}/${POSTS_DIR}/${frontmatter?.slug}/opengraph-image`, + contentUrl: `${process.env.NEXT_PUBLIC_BASE_URL}/${POSTS_DIR}/${post.slug}/opengraph-image`, width: `${ogImageSize.width}`, height: `${ogImageSize.height}`, }, - keywords: frontmatter?.tags?.join(", "), - datePublished: frontmatter?.date, - dateModified: frontmatter?.date, + keywords: post.tags?.join(", "), + datePublished: post.date, + dateModified: post.date, inLanguage: process.env.NEXT_PUBLIC_SITE_LOCALE, license: `https://spdx.org/licenses/${siteConfig.license}.html`, author: { @@ -106,7 +106,7 @@ const Page = async ({ params }: { params: Promise<{ slug: string }> }) => {
Comments are closed.