diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js index 25a064103..0e4bd909f 100644 --- a/docs/docusaurus.config.js +++ b/docs/docusaurus.config.js @@ -26,7 +26,7 @@ const config = { /** @type {import('@docusaurus/preset-classic').Options} */ ({ docs: { - breadcrumbs: false, + breadcrumbs: true, sidebarPath: require.resolve('./sidebars.js'), sidebarCollapsible: false, editUrl: @@ -124,27 +124,60 @@ const config = { plugins: [ [ '@signalwire/docusaurus-plugin-llms-txt', - /** @type {import('@signalwire/docusaurus-plugin-llms-txt').PluginOptions} */ + /** @type {import('@signalwire/docusaurus-plugin-llms-txt/public').PluginOptions} */ ({ - siteTitle: 'React Native ExecuTorch', - siteDescription: - "React Native ExecuTorch brings Meta's ExecuTorch AI framework into the React Native ecosystem, enabling developers to run AI models and LLMs locally, directly on mobile devices. It provides a declarative API for on-device inference, allowing you to use local AI models without relying on cloud infrastructure. Built on the ExecuTorch foundation - part of the PyTorch Edge ecosystem - it extends efficient on-device AI deployment to cross-platform mobile applications in React Native.", - depth: 3, - enableDescriptions: true, - content: { + markdown: { + enableFiles: true, + excludeRoutes: ['**/react-native-executorch/search'], includeVersionedDocs: false, relativePaths: false, - enableMarkdownFiles: false, - excludeRoutes: ['**/react-native-executorch/search'], }, - includeOrder: [ - '**/docs/!(category|benchmarks)**', - '**/docs/benchmarks/**', - '**/docs/category/**', - ], + llmsTxt: { + siteTitle: 'React Native ExecuTorch', + siteDescription: + "React Native ExecuTorch brings Meta's ExecuTorch AI framework into the React Native ecosystem, enabling developers to run AI models and LLMs locally, directly on mobile devices. It provides a declarative API for on-device inference, allowing you to use local AI models without relying on cloud infrastructure. Built on the ExecuTorch foundation - part of the PyTorch Edge ecosystem - it extends efficient on-device AI deployment to cross-platform mobile applications in React Native.", + autoSectionDepth: 3, + autoSectionPosition: 1, + enableDescriptions: true, + sections: [ + { + id: 'benchmarks', + name: 'Benchmarks', + routes: [{ route: '**/docs/benchmarks/**' }], + position: 2, + }, + { + id: 'category', + name: 'Category', + routes: [{ route: '**/docs/category/**' }], + position: 3, + }, + ], + }, + ui: { + copyPageContent: { + buttonLabel: 'Copy Page', + contentStrategy: 'prefer-markdown', + display: { + excludeRoutes: ['**/docs/category/**'], + }, + actions: { + viewMarkdown: true, + ai: { + chatGPT: { + prompt: 'Check this link out GPT', + }, + claude: { + prompt: 'Check this link out Claude', + }, + }, + }, + }, + }, }), ], ], + themes: [require.resolve('@signalwire/docusaurus-theme-llms-txt')], }; module.exports = config; diff --git a/docs/package.json b/docs/package.json index fb3a791bd..8552bfc85 100644 --- a/docs/package.json +++ b/docs/package.json @@ -26,7 +26,8 @@ "@emotion/styled": "^11.14.1", "@mdx-js/react": "^3.0.0", "@mui/material": "^7.3.7", - "@signalwire/docusaurus-plugin-llms-txt": "^1.2.2", + "@signalwire/docusaurus-plugin-llms-txt": "2.0.0-alpha.7", + "@signalwire/docusaurus-theme-llms-txt": "1.0.0-alpha.9", "@swmansion/t-rex-ui": "^1.2.1", "clsx": "^2.1.0", "copy-text-to-clipboard": "^3.2.2", diff --git a/docs/src/theme/CopyPageContent/index.js b/docs/src/theme/CopyPageContent/index.js new file mode 100644 index 000000000..6ef6f6748 --- /dev/null +++ b/docs/src/theme/CopyPageContent/index.js @@ -0,0 +1,10 @@ +import CopyPageContent from '@theme-original/CopyPageContent'; +import './styles.module.css'; + +export default function CopyPageContentWrapper(props) { + return ( + <> + + + ); +} diff --git a/docs/src/theme/CopyPageContent/styles.module.css b/docs/src/theme/CopyPageContent/styles.module.css new file mode 100644 index 000000000..226b8be0f --- /dev/null +++ b/docs/src/theme/CopyPageContent/styles.module.css @@ -0,0 +1,3 @@ +[class*='copyButton'] [class*='dropdown'] { + background: var(--swm-dropdown-versions-background); +} diff --git a/docs/yarn.lock b/docs/yarn.lock index 8fe7ad114..3b78f035c 100644 --- a/docs/yarn.lock +++ b/docs/yarn.lock @@ -2262,7 +2262,7 @@ __metadata: languageName: node linkType: hard -"@docusaurus/core@npm:3.9.2, @docusaurus/core@npm:^3.9.2": +"@docusaurus/core@npm:3.9.2, @docusaurus/core@npm:^3.0.0, @docusaurus/core@npm:^3.9.2": version: 3.9.2 resolution: "@docusaurus/core@npm:3.9.2" dependencies: @@ -2648,7 +2648,7 @@ __metadata: languageName: node linkType: hard -"@docusaurus/theme-common@npm:3.9.2": +"@docusaurus/theme-common@npm:3.9.2, @docusaurus/theme-common@npm:^3.0.0": version: 3.9.2 resolution: "@docusaurus/theme-common@npm:3.9.2" dependencies: @@ -3757,9 +3757,9 @@ __metadata: languageName: node linkType: hard -"@signalwire/docusaurus-plugin-llms-txt@npm:^1.2.2": - version: 1.2.2 - resolution: "@signalwire/docusaurus-plugin-llms-txt@npm:1.2.2" +"@signalwire/docusaurus-plugin-llms-txt@npm:2.0.0-alpha.7": + version: 2.0.0-alpha.7 + resolution: "@signalwire/docusaurus-plugin-llms-txt@npm:2.0.0-alpha.7" dependencies: fs-extra: "npm:^11.0.0" hast-util-select: "npm:^6.0.4" @@ -3775,7 +3775,22 @@ __metadata: unist-util-visit: "npm:^5" peerDependencies: "@docusaurus/core": ^3.0.0 - checksum: 10/66ac57275178c86fcb060e107df4a30f6989be9d162e5c1f77e104c1ae99598a8b0564a45c5b795a601f3a341731eed3293804b9ee2fe628fe0485c05a3a5d3d + checksum: 10/501174d4913db22aa44bfc803fa6b01d5c3f6bb1f92761ebfcb0c2482539b504688d183ec8c722b0ee611834965058740d0e848a59413d53a929e1df99fef331 + languageName: node + linkType: hard + +"@signalwire/docusaurus-theme-llms-txt@npm:1.0.0-alpha.9": + version: 1.0.0-alpha.9 + resolution: "@signalwire/docusaurus-theme-llms-txt@npm:1.0.0-alpha.9" + dependencies: + "@docusaurus/core": "npm:^3.0.0" + "@docusaurus/theme-common": "npm:^3.0.0" + clsx: "npm:^2.0.0" + react-icons: "npm:^5.5.0" + peerDependencies: + react: ^18.0.0 + react-dom: ^18.0.0 + checksum: 10/2b9329a6bba390db27ac2d4bad9e8e4bc2e749cdc66d1a7d7f74cfc5e2af390bff1199819220581516f9182e4629066fcb65af4b7e9834d33bdc36fe73e5c9ac languageName: node linkType: hard @@ -6327,7 +6342,8 @@ __metadata: "@emotion/styled": "npm:^11.14.1" "@mdx-js/react": "npm:^3.0.0" "@mui/material": "npm:^7.3.7" - "@signalwire/docusaurus-plugin-llms-txt": "npm:^1.2.2" + "@signalwire/docusaurus-plugin-llms-txt": "npm:2.0.0-alpha.7" + "@signalwire/docusaurus-theme-llms-txt": "npm:1.0.0-alpha.9" "@swmansion/t-rex-ui": "npm:^1.2.1" clsx: "npm:^2.1.0" copy-text-to-clipboard: "npm:^3.2.2" @@ -11485,6 +11501,15 @@ __metadata: languageName: node linkType: hard +"react-icons@npm:^5.5.0": + version: 5.5.0 + resolution: "react-icons@npm:5.5.0" + peerDependencies: + react: "*" + checksum: 10/67d5b311c23f74829cb90d58b78ddc87959d2087eda7f29b78d1ab6e337b04b0358a00724d73ab60652469d9a2c66ba3c034b8b7d4f32caae942592f92f59a84 + languageName: node + linkType: hard + "react-is@npm:^16.13.1, react-is@npm:^16.6.0, react-is@npm:^16.7.0": version: 16.13.1 resolution: "react-is@npm:16.13.1"