diff --git a/www/.vitepress/config.mts b/www/.vitepress/config.mts new file mode 100644 index 00000000..98fd6567 --- /dev/null +++ b/www/.vitepress/config.mts @@ -0,0 +1,150 @@ +import { defineConfig } from "vitepress"; + +// https://vitepress.dev/reference/site-config +export default defineConfig({ + title: "Sunbeam", + head: [ + ["link", { rel: "icon", href: "/favicon.png" }], + ["meta", { property: "og:type", content: "website" }], + [ + "meta", + { + property: "og:image", + content: "https://pomdtr.github.io/sunbeam/screenshot.png", + }, + ], + [ + "meta", + { + property: "og:description", + content: "Wrap your tools in keyboard-friendly TUIs", + }, + ], + ], + appearance: "force-dark", + themeConfig: { + // https://vitepress.dev/reference/default-theme-config + outline: [2, 3], + nav: [ + { text: "Home", link: "/" }, + { + text: "Docs", + link: "/docs/", + }, + { + text: "Extension Catalog", + link: "/catalog/", + }, + ], + search: { + provider: "local", + }, + sidebar: [ + { + text: "Introduction", + link: "/docs/", + }, + { + text: "User Guide", + items: [ + { + text: "Installation", + link: "/docs/user-guide/installation", + }, + { + text: "Quick Start", + link: "/docs/user-guide/quickstart", + }, + { + text: "Integrations", + link: "/docs/user-guide/integrations", + }, + ], + }, + { + text: "Developer Guide", + items: [ + { + text: "Guidelines", + link: "/docs/developer-guide/guidelines", + }, + { + text: "Examples", + items: [ + { + text: "DevDocs (Shell)", + link: "/docs/developer-guide/examples/devdocs", + }, + { + text: "Hackernews (Typescript)", + link: "/docs/developer-guide/examples/hackernews", + }, + { + text: "File Browser (Python)", + link: "/docs/developer-guide/examples/file-browser", + }, + { + text: "Google Search (Shell)", + link: "/docs/developer-guide/examples/google-search", + }, + ], + }, + { + text: "Publishing", + link: "/docs/developer-guide/publishing", + }, + { + text: "Tips", + link: "/docs/developer-guide/tips", + }, + ], + }, + { + text: "Reference", + items: [ + { + text: "Configuration", + link: "/docs/reference/config", + }, + { + text: "Schemas", + collapsed: true, + items: [ + { + text: "Manifest", + link: "/docs/reference/schemas/manifest", + }, + { + text: "Payload", + link: "/docs/reference/schemas/payload", + }, + { + text: "List", + link: "/docs/reference/schemas/list", + }, + { + text: "Detail", + link: "/docs/reference/schemas/detail", + }, + { + text: "Action", + link: "/docs/reference/schemas/action", + }, + ], + }, + { + text: "CLI", + link: "/docs/reference/cli", + }, + ], + }, + { + text: "Alternatives", + link: "/docs/alternatives", + }, + ], + socialLinks: [ + { icon: "github", link: "https://github.com/pomdtr/sunbeam" }, + ], + }, +}); diff --git a/www/.vitepress/theme/Layout.vue b/www/.vitepress/theme/Layout.vue new file mode 100644 index 00000000..ecd24eb5 --- /dev/null +++ b/www/.vitepress/theme/Layout.vue @@ -0,0 +1,33 @@ + + + + + diff --git a/www/.vitepress/theme/index.ts b/www/.vitepress/theme/index.ts new file mode 100644 index 00000000..6f9b6f57 --- /dev/null +++ b/www/.vitepress/theme/index.ts @@ -0,0 +1,10 @@ +import DefaultTheme from 'vitepress/theme' +import { Theme } from 'vitepress' +// @ts-ignore +import Layout from './Layout.vue' + + +export default { + extends: DefaultTheme, + Layout, +} as Theme