mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-10-04 04:04:14 +00:00
docs: docusaurus setup (#3541)
# What does this PR do? - Docusaurus server setup - Deprecates Sphinx build pipeline - Deprecates remaining references to Readthedocs - MDX compile errors and broken links to be addressed in follow-up PRs <!-- Provide a short summary of what this PR does and why. Link to relevant issues if applicable. --> <!-- If resolving an issue, uncomment and update the line below --> <!-- Closes #[issue-number] --> ## Test Plan ``` npm install npm gen-api-docs all npm run build ``` <!-- Describe the tests you ran to verify your changes with result summaries. *Provide clear instructions so the plan can be easily re-executed.* -->
This commit is contained in:
parent
610526d6d7
commit
aebd728c81
25 changed files with 23461 additions and 208 deletions
230
docs/docusaurus.config.ts
Normal file
230
docs/docusaurus.config.ts
Normal file
|
@ -0,0 +1,230 @@
|
|||
// @ts-check
|
||||
// Note: type annotations allow type checking and IDEs autocompletion
|
||||
|
||||
import type * as Preset from "@docusaurus/preset-classic";
|
||||
import type { Config } from "@docusaurus/types";
|
||||
import type * as Plugin from "@docusaurus/types/src/plugin";
|
||||
import type * as OpenApiPlugin from "docusaurus-plugin-openapi-docs";
|
||||
|
||||
const config: Config = {
|
||||
title: 'Llama Stack',
|
||||
tagline: 'The open-source framework for building generative AI applications',
|
||||
url: 'https://reluctantfuturist.github.io',
|
||||
baseUrl: '/llama-stack/',
|
||||
onBrokenLinks: "warn",
|
||||
onBrokenMarkdownLinks: "warn",
|
||||
favicon: "img/favicon.ico",
|
||||
|
||||
// GitHub pages deployment config.
|
||||
organizationName: 'reluctantfuturist',
|
||||
projectName: 'llama-stack',
|
||||
trailingSlash: false,
|
||||
|
||||
presets: [
|
||||
[
|
||||
"classic",
|
||||
{
|
||||
docs: {
|
||||
sidebarPath: require.resolve("./sidebars.ts"),
|
||||
// Please change this to your repo.
|
||||
// Remove this to remove the "edit this page" links.
|
||||
editUrl: 'https://github.com/meta-llama/llama-stack/tree/main/docs/',
|
||||
docItemComponent: "@theme/ApiItem", // Derived from docusaurus-theme-openapi
|
||||
},
|
||||
blog: false,
|
||||
theme: {
|
||||
customCss: require.resolve("./src/css/custom.css"),
|
||||
},
|
||||
} satisfies Preset.Options,
|
||||
],
|
||||
],
|
||||
|
||||
themeConfig: {
|
||||
image: 'img/llama-stack.png',
|
||||
navbar: {
|
||||
title: 'Llama Stack',
|
||||
logo: {
|
||||
alt: 'Llama Stack Logo',
|
||||
src: 'img/llama-stack-logo.png',
|
||||
},
|
||||
items: [
|
||||
{
|
||||
type: 'docSidebar',
|
||||
sidebarId: 'tutorialSidebar',
|
||||
position: 'left',
|
||||
label: 'Docs',
|
||||
},
|
||||
{
|
||||
type: 'docSidebar',
|
||||
sidebarId: 'apiSidebar',
|
||||
position: 'left',
|
||||
label: 'API Reference',
|
||||
},
|
||||
{
|
||||
href: 'https://github.com/llamastack/llama-stack',
|
||||
label: 'GitHub',
|
||||
position: 'right',
|
||||
},
|
||||
],
|
||||
},
|
||||
footer: {
|
||||
style: 'dark',
|
||||
links: [
|
||||
{
|
||||
title: 'Docs',
|
||||
items: [
|
||||
{
|
||||
label: 'Getting Started',
|
||||
to: '/docs/getting_started/quickstart',
|
||||
},
|
||||
{
|
||||
label: 'Concepts',
|
||||
to: '/docs/concepts',
|
||||
},
|
||||
{
|
||||
label: 'API Reference',
|
||||
to: '/docs/api/llama-stack-specification',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Community',
|
||||
items: [
|
||||
{
|
||||
label: 'Discord',
|
||||
href: 'https://discord.gg/llama-stack',
|
||||
},
|
||||
{
|
||||
label: 'GitHub Discussions',
|
||||
href: 'https://github.com/llamastack/llama-stack/discussions',
|
||||
},
|
||||
{
|
||||
label: 'Issues',
|
||||
href: 'https://github.com/llamastack/llama-stack/issues',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'More',
|
||||
items: [
|
||||
{
|
||||
label: 'GitHub',
|
||||
href: 'https://github.com/llamastack/llama-stack',
|
||||
},
|
||||
{
|
||||
label: 'PyPI',
|
||||
href: 'https://pypi.org/project/llama-stack/',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
copyright: `Copyright © ${new Date().getFullYear()} Meta Platforms, Inc. Built with Docusaurus.`,
|
||||
},
|
||||
prism: {
|
||||
additionalLanguages: [
|
||||
'ruby',
|
||||
'csharp',
|
||||
'php',
|
||||
'java',
|
||||
'powershell',
|
||||
'json',
|
||||
'bash',
|
||||
'python',
|
||||
'yaml',
|
||||
],
|
||||
},
|
||||
docs: {
|
||||
sidebar: {
|
||||
hideable: true,
|
||||
},
|
||||
},
|
||||
// Language tabs for API documentation
|
||||
languageTabs: [
|
||||
{
|
||||
highlight: "python",
|
||||
language: "python",
|
||||
logoClass: "python",
|
||||
},
|
||||
{
|
||||
highlight: "bash",
|
||||
language: "curl",
|
||||
logoClass: "curl",
|
||||
},
|
||||
{
|
||||
highlight: "javascript",
|
||||
language: "nodejs",
|
||||
logoClass: "nodejs",
|
||||
},
|
||||
{
|
||||
highlight: "java",
|
||||
language: "java",
|
||||
logoClass: "java",
|
||||
},
|
||||
],
|
||||
} satisfies Preset.ThemeConfig,
|
||||
|
||||
plugins: [
|
||||
[
|
||||
"docusaurus-plugin-openapi-docs",
|
||||
{
|
||||
id: "openapi",
|
||||
docsPluginId: "classic",
|
||||
config: {
|
||||
llamastack: {
|
||||
specPath: "static/llama-stack-spec.yaml",
|
||||
outputDir: "docs/api",
|
||||
downloadUrl: "https://raw.githubusercontent.com/meta-llama/llama-stack/main/docs/static/llama-stack-spec.yaml",
|
||||
sidebarOptions: {
|
||||
groupPathsBy: "tag",
|
||||
categoryLinkSource: "tag",
|
||||
},
|
||||
} satisfies OpenApiPlugin.Options,
|
||||
} satisfies Plugin.PluginOptions,
|
||||
},
|
||||
],
|
||||
],
|
||||
|
||||
themes: [
|
||||
"docusaurus-theme-openapi-docs",
|
||||
[
|
||||
require.resolve("@easyops-cn/docusaurus-search-local"),
|
||||
{
|
||||
// Optimization for production
|
||||
hashed: true,
|
||||
|
||||
// Language settings
|
||||
language: ["en"],
|
||||
|
||||
// Content indexing settings
|
||||
indexDocs: true,
|
||||
indexBlog: false, // No blog in Llama Stack
|
||||
indexPages: true,
|
||||
|
||||
// Route configuration
|
||||
docsRouteBasePath: '/docs',
|
||||
|
||||
// Search behavior optimization for technical docs
|
||||
searchResultLimits: 8,
|
||||
searchResultContextMaxLength: 50,
|
||||
explicitSearchResultPath: true,
|
||||
|
||||
// User experience enhancements
|
||||
searchBarShortcut: true,
|
||||
searchBarShortcutHint: true,
|
||||
searchBarPosition: "right",
|
||||
|
||||
// Performance optimizations
|
||||
ignoreFiles: [
|
||||
"node_modules/**/*",
|
||||
],
|
||||
|
||||
// Exclude OpenAPI generated docs from search to avoid duplicates
|
||||
searchContextByPaths: [
|
||||
"docs",
|
||||
],
|
||||
},
|
||||
],
|
||||
],
|
||||
};
|
||||
|
||||
export default config;
|
Loading…
Add table
Add a link
Reference in a new issue