Added base content styling & definition list

This commit is contained in:
2025-09-09 14:42:27 +02:00
parent a549960647
commit 485b57b847
52 changed files with 5338 additions and 1387 deletions

View File

@@ -0,0 +1,6 @@
import { makeRouteHandler } from '@keystatic/next/route-handler'
import config from '~/keystatic.config'
export const { POST, GET } = makeRouteHandler({
config,
})

View File

@@ -1,8 +1,17 @@
@import url('../styles/base/variables.css');
@import url('../styles/base/typography.css');
@import url('../styles/base/lists.css');
@import url('../styles/base/tables.css');
@import url('../styles/base/inline.css');
@import url('../styles/base/form.css');
@import url('../styles/base/keyframes.css');
@import url('../styles/base/helpers.css');
@import url('../styles/settings.css');
html {
font-size: var(--typo-size-base);
}
body {
font: 16px/1.5 var(--font-body);
font-family: var(--font-body), sans-serif;
font-feature-settings: "kern" 1;
font-weight: var(--typo-weight-regular);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
color: var(--color-text-primary);
background-color: var(--color-surface-base);
}

View File

@@ -0,0 +1,3 @@
export default function Page() {
return null
}

View File

@@ -0,0 +1,6 @@
'use client'
import { makePage } from '@keystatic/next/ui/app'
import config from '../../../keystatic.config'
export default makePage(config)

View File

@@ -0,0 +1,18 @@
import KeystaticApp from './keystatic'
export default function KeystaticLayout({
children,
}: {
children: React.ReactNode
}) {
return (
<html lang="en">
<head>
<title>Keystatic Admin</title>
</head>
<body>
<KeystaticApp />
</body>
</html>
)
}

View File

@@ -0,0 +1,30 @@
import MarkdocRenderer from '@/components/Markdoc/Renderer'
import { getArticleBySlug, getArticles } from '@/lib/content/meta/articles'
import { notFound } from 'next/navigation'
interface Props {
params: Promise<{
slug: string
}>
}
export async function generateStaticParams() {
const articles = await getArticles()
return articles.map(({ slug }) => ({ slug }))
}
export default async function MetaArticlePage({ params }: Props) {
const { slug } = await params
const article = await getArticleBySlug(slug)
if (!article) {
notFound()
}
return (
<div className="page">
<h1>{article.title}</h1>
<MarkdocRenderer content={article.content} className="meta-content" />
</div>
)
}