init(docs): create docs site template with Fumapress and Waku

This commit is contained in:
Prad Nukala committed 2026-07-12 13:13:51 -04:00
1 parent 49a52b138f
commit 1aaab66971
18 files changed
+3059

No files matched your search

+65
View File
@@ -0,0 +1,65 @@
@import "tailwindcss";
@import "fumadocs-ui/css/neutral.css";
@import "fumadocs-ui/css/preset.css";
@import "fumapress/css/preset.css";
/* Fonts — self-hosted via Fontsource, referenced by the typeset presets. */
@import "@fontsource-variable/dm-sans";
@import "@fontsource-variable/instrument-sans";
@import "@fontsource-variable/jetbrains-mono";
/* shadcn/typeset — one CSS file you own.
Regenerate it any time at https://ui.shadcn.com/typeset */
@import "./typeset.css";
:root {
--font-dm-sans: "DM Sans Variable", sans-serif;
--font-instrument-sans: "Instrument Sans Variable", sans-serif;
--font-jetbrains-mono: "JetBrains Mono Variable", monospace;
}
@theme inline {
--default-font-family: var(--font-instrument-sans);
--font-heading: var(--font-dm-sans);
--font-mono: var(--font-jetbrains-mono);
}
/* ---------------------------------------------------------
Typeset presets — tune rhythm per context.
Three controls: size, leading, flow.
Built with https://ui.shadcn.com/typeset
--------------------------------------------------------- */
.typeset-docs {
--typeset-font-body: var(--font-instrument-sans);
--typeset-font-heading: var(--font-dm-sans);
--typeset-font-mono: var(--font-jetbrains-mono);
--typeset-size: 16px;
--typeset-leading: 1.9;
--typeset-flow: 1em;
}
/* Tighter rhythm, e.g. for changelog callouts or chat-like UI */
.typeset-compact {
--typeset-leading: 1.6;
--typeset-flow: 1em;
}
/* Measure (80ch) — the builder puts max-width on the wrapper,
not in typeset.css. Add this class next to `typeset` when your
layout doesn't already constrain line length. */
.typeset-measure {
max-width: 37em;
}
/* ---------------------------------------------------------
Fumadocs interop:
Fumadocs UI ships its own `prose` styling for page bodies.
When a container is both, let Typeset own the rhythm by
disabling the prose margins that would double up.
Keep interactive Fumadocs components (tabs, callouts,
accordions) out of Typeset with `not-typeset`.
--------------------------------------------------------- */
.typeset.prose :where(*) {
margin-block-end: 0;
}