diff --git a/.changelog/unreleased/636-docs-foundations.md b/.changelog/unreleased/636-docs-foundations.md new file mode 100644 index 0000000..3ccf1e7 --- /dev/null +++ b/.changelog/unreleased/636-docs-foundations.md @@ -0,0 +1,8 @@ +--- +type: added +area: docs +pr: 636 +breaking: false +--- + +Add shared design-system styling, responsive documentation chrome, navigation breadcrumbs and pagers, and persistent MDX tab groups. diff --git a/apps/docs/content/meta.json b/apps/docs/content/meta.json index 7107d95..dc71e61 100644 --- a/apps/docs/content/meta.json +++ b/apps/docs/content/meta.json @@ -27,11 +27,18 @@ "reference/data-store", "reference/synthetics-reader", "reference/order-vault", + "reference/contracts.generated", + "reference/exchange-router", "reference/graphql.generated", + "reference/tokens.generated", + "reference/errors", "reference/glossary" ] }, - { "label": "Reference", "pages": ["reference/contracts.generated", "reference/exchange-router", "reference/glossary"] }, + { + "label": "Guides", + "pages": ["guides/troubleshooting"] + }, { "label": "Resources", "pages": [ diff --git a/apps/docs/index.html b/apps/docs/index.html new file mode 100644 index 0000000..fd75bd8 --- /dev/null +++ b/apps/docs/index.html @@ -0,0 +1,16 @@ + + + + + + + SO4 documentation + + +
+ + + diff --git a/apps/docs/package.json b/apps/docs/package.json index b6483f4..ba01d34 100644 --- a/apps/docs/package.json +++ b/apps/docs/package.json @@ -32,6 +32,7 @@ }, "devDependencies": { "@happy-dom/global-registrator": "^20.11.6", + "@tailwindcss/vite": "^4.1.18", "@mdx-js/mdx": "^3.1.1", "@mdx-js/rollup": "^3.1.0", "@repo/vitest-config": "workspace:*", @@ -52,6 +53,7 @@ "remark-gfm": "^4.0.1", "remark-mdx-frontmatter": "^5.2.0", "shiki": "^4.4.3", + "tailwindcss": "^4.1.18", "typescript": "^5.9.3", "vite": "^7.3.2" } diff --git a/apps/docs/scripts/build.ts b/apps/docs/scripts/build.ts index 4ddc19e..a1f51bc 100644 --- a/apps/docs/scripts/build.ts +++ b/apps/docs/scripts/build.ts @@ -1,4 +1,4 @@ -import { mkdir, rm } from "node:fs/promises" +import { mkdir, readdir, rm } from "node:fs/promises" import { join } from "node:path" import { $ } from "bun" @@ -12,7 +12,7 @@ await $`bun run ${join(appRoot, "../../scripts/generate-design-tokens.ts")} --ch await $`bun run ${join(appRoot, "../../scripts/generate-errors-reference.ts")} --check` const pages = (await loadPages()).filter( - (page) => page.frontmatter.status !== "draft", + (page) => page.frontmatter.status !== "draft" ) const outputRoot = join(appRoot, ".nitro-static") @@ -27,7 +27,7 @@ function renderInline(value: string) { return value .replace( /([^<]+)<\/Term>/g, - '$2', + '$2' ) .replace(/\[([^\]]+)\]\(([^)]+)\)/g, '$1') .replace(/\*\*([^*]+)\*\*/g, "$1") @@ -56,13 +56,13 @@ function render(body: string) { return `
    ${items}
` } if (block.startsWith("> ")) - return `` + return `` if (block.startsWith("- ")) - return `