doccupine 0.0.98 → 0.0.99

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/index.js +0 -0
  2. package/dist/templates/components/MDXComponents.d.ts +1 -1
  3. package/dist/templates/components/MDXComponents.js +3 -1
  4. package/dist/templates/components/layout/Code.d.ts +1 -1
  5. package/dist/templates/components/layout/Code.js +228 -3
  6. package/dist/templates/mdx/code.mdx.d.ts +1 -1
  7. package/dist/templates/mdx/code.mdx.js +43 -1
  8. package/dist/templates/package.js +1 -1
  9. package/package.json +1 -1
  10. package/dist/index.test.d.ts +0 -1
  11. package/dist/index.test.js +0 -48
  12. package/dist/metadata.d.ts +0 -11
  13. package/dist/metadata.js +0 -52
  14. package/dist/templates/accordion.mdx.d.ts +0 -1
  15. package/dist/templates/accordion.mdx.js +0 -41
  16. package/dist/templates/api/theme/routes.d.ts +0 -1
  17. package/dist/templates/api/theme/routes.js +0 -28
  18. package/dist/templates/app/api/theme/routes.d.ts +0 -1
  19. package/dist/templates/app/api/theme/routes.js +0 -29
  20. package/dist/templates/app/error.d.ts +0 -1
  21. package/dist/templates/app/error.js +0 -45
  22. package/dist/templates/app/layout.d.ts +0 -34
  23. package/dist/templates/app/layout.js +0 -184
  24. package/dist/templates/callouts.mdx.d.ts +0 -1
  25. package/dist/templates/callouts.mdx.js +0 -57
  26. package/dist/templates/cards.mdx.d.ts +0 -1
  27. package/dist/templates/cards.mdx.js +0 -25
  28. package/dist/templates/click-outside.d.ts +0 -1
  29. package/dist/templates/click-outside.js +0 -28
  30. package/dist/templates/code.d.ts +0 -1
  31. package/dist/templates/code.js +0 -202
  32. package/dist/templates/code.mdx.d.ts +0 -1
  33. package/dist/templates/code.mdx.js +0 -46
  34. package/dist/templates/commands.mdx.d.ts +0 -1
  35. package/dist/templates/commands.mdx.js +0 -48
  36. package/dist/templates/components/ClickOutside.d.ts +0 -1
  37. package/dist/templates/components/ClickOutside.js +0 -29
  38. package/dist/templates/components/layout/ClientThemeProvider.d.ts +0 -1
  39. package/dist/templates/components/layout/ClientThemeProvider.js +0 -85
  40. package/dist/templates/components/layout/CopyButton.d.ts +0 -1
  41. package/dist/templates/components/layout/CopyButton.js +0 -85
  42. package/dist/templates/components/layout/RenderMarkdown.d.ts +0 -1
  43. package/dist/templates/components/layout/RenderMarkdown.js +0 -61
  44. package/dist/templates/components/layout/Stepts.d.ts +0 -1
  45. package/dist/templates/components/layout/Stepts.js +0 -114
  46. package/dist/templates/components/layout/ThemeToggle.d.ts +0 -1
  47. package/dist/templates/components/layout/ThemeToggle.js +0 -107
  48. package/dist/templates/constants.d.ts +0 -5
  49. package/dist/templates/constants.js +0 -5
  50. package/dist/templates/docs-components.d.ts +0 -1
  51. package/dist/templates/docs-components.js +0 -441
  52. package/dist/templates/docs.d.ts +0 -1
  53. package/dist/templates/docs.js +0 -48
  54. package/dist/templates/fields.mdx.d.ts +0 -1
  55. package/dist/templates/fields.mdx.js +0 -42
  56. package/dist/templates/footer.d.ts +0 -1
  57. package/dist/templates/footer.js +0 -9
  58. package/dist/templates/header.d.ts +0 -1
  59. package/dist/templates/header.js +0 -275
  60. package/dist/templates/home.d.ts +0 -1
  61. package/dist/templates/home.js +0 -74
  62. package/dist/templates/home.mdx.d.ts +0 -1
  63. package/dist/templates/home.mdx.js +0 -44
  64. package/dist/templates/homemdx.d.ts +0 -1
  65. package/dist/templates/homemdx.js +0 -59
  66. package/dist/templates/icon.d.ts +0 -1
  67. package/dist/templates/icon.js +0 -20
  68. package/dist/templates/icons.mdx.d.ts +0 -1
  69. package/dist/templates/icons.mdx.js +0 -44
  70. package/dist/templates/image-embeds.mdx.d.ts +0 -1
  71. package/dist/templates/image-embeds.mdx.js +0 -103
  72. package/dist/templates/layout.d.ts +0 -1
  73. package/dist/templates/layout.js +0 -69
  74. package/dist/templates/list-table.mdx.d.ts +0 -1
  75. package/dist/templates/list-table.mdx.js +0 -85
  76. package/dist/templates/mdx/config.mdx.d.ts +0 -1
  77. package/dist/templates/mdx/config.mdx.js +0 -47
  78. package/dist/templates/mdx/deployment.mdx.d.ts +0 -1
  79. package/dist/templates/mdx/deployment.mdx.js +0 -61
  80. package/dist/templates/mdx/image-embeds.mdx.d.ts +0 -1
  81. package/dist/templates/mdx/image-embeds.mdx.js +0 -95
  82. package/dist/templates/mdx/links.mdx.d.ts +0 -1
  83. package/dist/templates/mdx/links.mdx.js +0 -45
  84. package/dist/templates/mdx/list-and-tables.mdx.d.ts +0 -1
  85. package/dist/templates/mdx/list-and-tables.mdx.js +0 -78
  86. package/dist/templates/mdx/list-table.mdx.d.ts +0 -1
  87. package/dist/templates/mdx/list-table.mdx.js +0 -78
  88. package/dist/templates/mdx/platform/deployments.mdx.d.ts +0 -1
  89. package/dist/templates/mdx/platform/deployments.mdx.js +0 -36
  90. package/dist/templates/mdx/platform/sections-settings.mdx.d.ts +0 -1
  91. package/dist/templates/mdx/platform/sections-settings.mdx.js +0 -46
  92. package/dist/templates/mdx/stepts.mdx.d.ts +0 -1
  93. package/dist/templates/mdx/stepts.mdx.js +0 -60
  94. package/dist/templates/mdx/text.mdx.d.ts +0 -1
  95. package/dist/templates/mdx/text.mdx.js +0 -139
  96. package/dist/templates/middleware.d.ts +0 -1
  97. package/dist/templates/middleware.js +0 -28
  98. package/dist/templates/not-found.d.ts +0 -1
  99. package/dist/templates/not-found.js +0 -22
  100. package/dist/templates/pictograms.d.ts +0 -1
  101. package/dist/templates/pictograms.js +0 -67
  102. package/dist/templates/shared-styles.d.ts +0 -1
  103. package/dist/templates/shared-styles.js +0 -792
  104. package/dist/templates/structures.d.ts +0 -2
  105. package/dist/templates/structures.js +0 -208
  106. package/dist/templates/tabs.mdx.d.ts +0 -1
  107. package/dist/templates/tabs.mdx.js +0 -59
  108. package/dist/templates/text.mdx.d.ts +0 -1
  109. package/dist/templates/text.mdx.js +0 -142
  110. package/dist/templates/theme-toggle.d.ts +0 -1
  111. package/dist/templates/theme-toggle.js +0 -111
  112. package/dist/templates/theme.d.ts +0 -1
  113. package/dist/templates/theme.js +0 -307
  114. package/dist/templates/typography.d.ts +0 -1
  115. package/dist/templates/typography.js +0 -52
  116. package/dist/templates/update.mdx.d.ts +0 -1
  117. package/dist/templates/update.mdx.js +0 -58
@@ -1,69 +0,0 @@
1
- export const layoutTemplate = (pages) => `import type { Metadata } from "next";
2
- import { Inter } from "next/font/google";
3
- import {
4
- Container,
5
- StyledComponentsRegistry,
6
- } from "cherry-styled-components/src/lib";
7
- import { theme, themeDark } from "@/app/theme";
8
- import { CherryThemeProvider } from "@/components/layout/CherryThemeProvider";
9
- import { Footer } from "@/components/layout/Footer";
10
- import { Header } from "@/components/layout/Header";
11
- import { DocsWrapper } from "@/components/layout/DocsComponents";
12
- import { SideBar } from "@/components/SideBar";
13
- import { transformPagesToGroupedStructure } from "@/utils/orderNavItems";
14
- import navigation from "@/navigation.json";
15
-
16
- const inter = Inter({ subsets: ["latin"] });
17
-
18
- export const metadata: Metadata = {
19
- title: "Doccupine",
20
- description: "Doccupine is a free and open-source document management system that allows you to store, organize, and share your documentation with ease.",
21
- openGraph: {
22
- title: "Doccupine",
23
- description: "Doccupine is a free and open-source document management system that allows you to store, organize, and share your documentation with ease.",
24
- },
25
- };
26
-
27
- export default async function RootLayout({
28
- children,
29
- }: Readonly<{
30
- children: React.ReactNode;
31
- }>) {
32
- const defaultPages = [
33
- {
34
- slug: "",
35
- title: "Getting Started",
36
- description: "Doccupine is a free and open-source document management system that allows you to store, organize, and share your documentation with ease.",
37
- date: "2025-01-15",
38
- category: "Introduction",
39
- categoryOrder: 0,
40
- order: 0
41
- },
42
- ];
43
-
44
- const pages: any = ${JSON.stringify(pages, null, 2)};
45
- const result = navigation.length
46
- ? navigation
47
- : transformPagesToGroupedStructure(pages);
48
- const defaultResults = transformPagesToGroupedStructure(defaultPages);
49
-
50
- return (
51
- <html lang="en">
52
- <body className={inter.className}>
53
- <StyledComponentsRegistry>
54
- <CherryThemeProvider theme={theme} themeDark={themeDark}>
55
- <Header />
56
- <Container $padding={20}>
57
- <DocsWrapper>
58
- <SideBar result={result.length ? result : defaultResults} />
59
- {children}
60
- </DocsWrapper>
61
- </Container>
62
- <Footer />
63
- </CherryThemeProvider>
64
- </StyledComponentsRegistry>
65
- </body>
66
- </html>
67
- );
68
- }
69
- `;
@@ -1 +0,0 @@
1
- export declare const listTableMdxTemplate = "---\ntitle: \"Lists and tables\"\ndescription: \"This is my first Doccupine project\"\ndate: \"2025-01-15\"\ncategory: \"Components\"\ncategoryOrder: 0\norder: 2\n---\n# Lists and Tables\n\nPresent structured information using lists or tables.\n\n## Lists\n\nMarkdown supports both *ordered* and *unordered* lists, as well as nested list structures.\n\n### Ordered List\n\nStart each item with a number followed by a period to create an ordered list.\n\n```md\n1. First item\n2. Second item\n3. Third item\n4. Fourth item\n```\n\n1. First item\n2. Second item\n3. Third item\n4. Fourth item\n\n\n### Unordered List\n\nUse dashes (`-`), asterisks (`*`), or plus signs (`+`) before each item for unordered lists.\n\n```md\n- First item\n- Second item\n- Third item\n- Fourth item\n```\n\n- First item\n- Second item\n- Third item\n- Fourth item\n\n### Nested List\n\nIndent items under another to create nested lists.\n\n```md\n- First item\n- Second item \n - Additional item \n - Additional item \n- Third item\n```\n\n- First item\n- Second item \n - Additional item \n - Additional item \n- Third item\n\n## Tables\n\nMarkdown tables use pipes (`|`) to separate columns and hyphens (`---`) to define the header row. Place a pipe at the start and end of each row for better compatibility.\n\n```md\n| Property | Description |\n| -------- | -------------------------------------- |\n| Name | Full name of the user |\n| Age | Age in years |\n| Joined | Indicates if user joined the community |\n```\n\n\n| Property | Description |\n| -------- | -------------------------------------- |\n| Name | Full name of the user |\n| Age | Age in years |\n| Joined | Indicates if user joined the community |";
@@ -1,85 +0,0 @@
1
- export const listTableMdxTemplate = `---
2
- title: "Lists and tables"
3
- description: "This is my first Doccupine project"
4
- date: "2025-01-15"
5
- category: "Components"
6
- categoryOrder: 0
7
- order: 2
8
- ---
9
- # Lists and Tables
10
-
11
- Present structured information using lists or tables.
12
-
13
- ## Lists
14
-
15
- Markdown supports both *ordered* and *unordered* lists, as well as nested list structures.
16
-
17
- ### Ordered List
18
-
19
- Start each item with a number followed by a period to create an ordered list.
20
-
21
- \`\`\`md
22
- 1. First item
23
- 2. Second item
24
- 3. Third item
25
- 4. Fourth item
26
- \`\`\`
27
-
28
- 1. First item
29
- 2. Second item
30
- 3. Third item
31
- 4. Fourth item
32
-
33
-
34
- ### Unordered List
35
-
36
- Use dashes (\`-\`), asterisks (\`*\`), or plus signs (\`+\`) before each item for unordered lists.
37
-
38
- \`\`\`md
39
- - First item
40
- - Second item
41
- - Third item
42
- - Fourth item
43
- \`\`\`
44
-
45
- - First item
46
- - Second item
47
- - Third item
48
- - Fourth item
49
-
50
- ### Nested List
51
-
52
- Indent items under another to create nested lists.
53
-
54
- \`\`\`md
55
- - First item
56
- - Second item
57
- - Additional item
58
- - Additional item
59
- - Third item
60
- \`\`\`
61
-
62
- - First item
63
- - Second item
64
- - Additional item
65
- - Additional item
66
- - Third item
67
-
68
- ## Tables
69
-
70
- Markdown tables use pipes (\`|\`) to separate columns and hyphens (\`---\`) to define the header row. Place a pipe at the start and end of each row for better compatibility.
71
-
72
- \`\`\`md
73
- | Property | Description |
74
- | -------- | -------------------------------------- |
75
- | Name | Full name of the user |
76
- | Age | Age in years |
77
- | Joined | Indicates if user joined the community |
78
- \`\`\`
79
-
80
-
81
- | Property | Description |
82
- | -------- | -------------------------------------- |
83
- | Name | Full name of the user |
84
- | Age | Age in years |
85
- | Joined | Indicates if user joined the community |`;
@@ -1 +0,0 @@
1
- export declare const configMdxTemplate = "---\ntitle: \"Globals\"\ndescription: \"Configure global settings for your documentation.\"\ndate: \"2025-01-15\"\ncategory: \"Configuration\"\ncategoryOrder: 3\norder: 1\n---\n# Global Configuration\nUse a `config.json` file to define project\u2011wide metadata for your documentation site. These values are applied to every generated page unless a page overrides them in its own frontmatter.\n\n## config.json\nPlace a `config.json` at your project root (the same folder where you execute `npx doccupine`) to define global metadata for your documentation site.\n\n```json\n{\n \"name\": \"Doccupine\",\n \"description\": \"Doccupine is a free and open-source document management system that allows you to store, organize, and share your documentation with ease.\",\n \"icon\": \"https://doccupine.com/favicon.ico\",\n \"preview\": \"https://doccupine.com/preview.png\"\n}\n```\n\n## Fields\n- **name**: The primary name of your documentation website. Displayed in the site title and used in various UI elements.\n- **description**: A concise summary of your project, used in site metadata (e.g., HTML meta description) and social previews when not overridden.\n- **icon**: The favicon for your site. You can provide a full URL or a relative path to an asset in your project.\n- **preview**: The Open Graph image used when links to your docs are shared. Accepts a full URL or a relative path.\n\n## Per\u2011page overrides\nAny page can override these global values by defining the same keys in its frontmatter. When present, the page\u2019s values take precedence over `config.json` for that page only.\n\nExample frontmatter in an `.mdx` file:\n\n```text\n---\ntitle: \"My Feature\"\ndescription: \"A focused description just for this page.\"\nname: \"My Product Docs\"\nicon: \"https://doccupine.com/favicon.ico\"\npreview: \"https://doccupine.com/preview.png\"\ndate: \"2025-01-15\"\ncategory: \"Guides\"\n---\n```\n\nIf a key is not specified in a page\u2019s frontmatter, Doccupine falls back to the corresponding value in `config.json`.";
@@ -1,47 +0,0 @@
1
- export const configMdxTemplate = `---
2
- title: "Globals"
3
- description: "Configure global settings for your documentation."
4
- date: "2025-01-15"
5
- category: "Configuration"
6
- categoryOrder: 3
7
- order: 1
8
- ---
9
- # Global Configuration
10
- Use a \`config.json\` file to define project‑wide metadata for your documentation site. These values are applied to every generated page unless a page overrides them in its own frontmatter.
11
-
12
- ## config.json
13
- Place a \`config.json\` at your project root (the same folder where you execute \`npx doccupine\`) to define global metadata for your documentation site.
14
-
15
- \`\`\`json
16
- {
17
- "name": "Doccupine",
18
- "description": "Doccupine is a free and open-source document management system that allows you to store, organize, and share your documentation with ease.",
19
- "icon": "https://doccupine.com/favicon.ico",
20
- "preview": "https://doccupine.com/preview.png"
21
- }
22
- \`\`\`
23
-
24
- ## Fields
25
- - **name**: The primary name of your documentation website. Displayed in the site title and used in various UI elements.
26
- - **description**: A concise summary of your project, used in site metadata (e.g., HTML meta description) and social previews when not overridden.
27
- - **icon**: The favicon for your site. You can provide a full URL or a relative path to an asset in your project.
28
- - **preview**: The Open Graph image used when links to your docs are shared. Accepts a full URL or a relative path.
29
-
30
- ## Per‑page overrides
31
- Any page can override these global values by defining the same keys in its frontmatter. When present, the page’s values take precedence over \`config.json\` for that page only.
32
-
33
- Example frontmatter in an \`.mdx\` file:
34
-
35
- \`\`\`text
36
- ---
37
- title: "My Feature"
38
- description: "A focused description just for this page."
39
- name: "My Product Docs"
40
- icon: "https://doccupine.com/favicon.ico"
41
- preview: "https://doccupine.com/preview.png"
42
- date: "2025-01-15"
43
- category: "Guides"
44
- ---
45
- \`\`\`
46
-
47
- If a key is not specified in a page’s frontmatter, Doccupine falls back to the corresponding value in \`config.json\`.`;
@@ -1 +0,0 @@
1
- export declare const deploymentMdxTemplate = "---\ntitle: \"Deployment\"\ndescription: \"Deploy your documentation site with the Doccupine Platform or self-host on any platform that supports Next.js.\"\ndate: \"2026-02-19\"\ncategory: \"Configuration\"\ncategoryOrder: 3\norder: 10\n---\n# Deployment\nThe fastest way to deploy your documentation is with the [Doccupine Platform](https://www.doccupine.com). If you prefer to manage your own infrastructure, you can self-host the generated Next.js app on any platform.\n\n## Doccupine Platform\n\nSign up at [doccupine.com](https://www.doccupine.com) and connect your repository. Your documentation site is live in minutes - no build configuration, no infrastructure to manage.\n\n<Callout type=\"success\">\n The Doccupine Platform is the recommended way to deploy. It handles builds, hosting, SSL, and updates automatically so you can focus on writing documentation.\n</Callout>\n\n### What you get\n- **Automatic deployments** on every push to your repository\n- **Site customization** through a visual dashboard - no code changes needed\n- **Team collaboration** so your whole team can manage docs together\n- **Custom domains** with automatic SSL\n- **AI Assistant and MCP server** included out of the box, no API key required\n- **Zero maintenance** - no servers, no build pipelines, no dependency updates\n\n### Getting started\n1. Create an account at [doccupine.com](https://www.doccupine.com).\n2. Connect your GitHub repository.\n3. Your site is deployed automatically.\n\nEvery push to your repository triggers a new deployment. You can customize your site's appearance, domain, and settings from the dashboard. See the [Platform Overview](/platform) for a full walkthrough of the dashboard, editor, and configuration options.\n\n---\n\n## Self-hosting\n\nDoccupine generates a standard Next.js app, so you can deploy it anywhere that supports Node.js or Next.js.\n\n<Callout type=\"warning\">\n Deploy the generated website directory (the Next.js app), not your MDX source folder. In a monorepo, set the root directory to the generated site folder.\n</Callout>\n\n<Callout type=\"note\">\n Self-hosting requires you to manage your own build pipeline, hosting, SSL certificates, and AI provider API keys. For a hands-off experience, consider the [Doccupine Platform](https://www.doccupine.com).\n</Callout>\n\n### Popular hosting options\n\n- **Vercel** - native Next.js support, zero-config deploys. Connect your repo and set the root directory to the generated app folder.\n- **Netlify** - supports Next.js via the `@netlify/plugin-nextjs` adapter. Works with the standard `next build` output.\n- **AWS Amplify** - fully managed hosting with CI/CD. Supports Next.js SSR out of the box.\n- **Cloudflare Pages** - deploy using the `@cloudflare/next-on-pages` adapter for edge-based hosting.\n- **Docker** - build a container from the generated app using the standard [Next.js Docker example](https://github.com/vercel/next.js/tree/canary/examples/with-docker) and deploy to any container platform.\n- **Node.js server** - run `next build && next start` on any server or VPS with Node.js installed.\n\n### Troubleshooting\n- **Build failed** - check build logs. Ensure your lockfile and correct Node.js version are present.\n- **Missing content** - verify your MDX files and assets are in the repository.\n- **SSR issues on edge platforms** - some features (like the AI chat API routes) require a Node.js runtime. Check your platform's documentation for SSR/API route support.";
@@ -1,61 +0,0 @@
1
- export const deploymentMdxTemplate = `---
2
- title: "Deployment"
3
- description: "Deploy your documentation site with the Doccupine Platform or self-host on any platform that supports Next.js."
4
- date: "2026-02-19"
5
- category: "Configuration"
6
- categoryOrder: 3
7
- order: 10
8
- ---
9
- # Deployment
10
- The fastest way to deploy your documentation is with the [Doccupine Platform](https://www.doccupine.com). If you prefer to manage your own infrastructure, you can self-host the generated Next.js app on any platform.
11
-
12
- ## Doccupine Platform
13
-
14
- Sign up at [doccupine.com](https://www.doccupine.com) and connect your repository. Your documentation site is live in minutes - no build configuration, no infrastructure to manage.
15
-
16
- <Callout type="success">
17
- The Doccupine Platform is the recommended way to deploy. It handles builds, hosting, SSL, and updates automatically so you can focus on writing documentation.
18
- </Callout>
19
-
20
- ### What you get
21
- - **Automatic deployments** on every push to your repository
22
- - **Site customization** through a visual dashboard - no code changes needed
23
- - **Team collaboration** so your whole team can manage docs together
24
- - **Custom domains** with automatic SSL
25
- - **AI Assistant and MCP server** included out of the box, no API key required
26
- - **Zero maintenance** - no servers, no build pipelines, no dependency updates
27
-
28
- ### Getting started
29
- 1. Create an account at [doccupine.com](https://www.doccupine.com).
30
- 2. Connect your GitHub repository.
31
- 3. Your site is deployed automatically.
32
-
33
- Every push to your repository triggers a new deployment. You can customize your site's appearance, domain, and settings from the dashboard. See the [Platform Overview](/platform) for a full walkthrough of the dashboard, editor, and configuration options.
34
-
35
- ---
36
-
37
- ## Self-hosting
38
-
39
- Doccupine generates a standard Next.js app, so you can deploy it anywhere that supports Node.js or Next.js.
40
-
41
- <Callout type="warning">
42
- Deploy the generated website directory (the Next.js app), not your MDX source folder. In a monorepo, set the root directory to the generated site folder.
43
- </Callout>
44
-
45
- <Callout type="note">
46
- Self-hosting requires you to manage your own build pipeline, hosting, SSL certificates, and AI provider API keys. For a hands-off experience, consider the [Doccupine Platform](https://www.doccupine.com).
47
- </Callout>
48
-
49
- ### Popular hosting options
50
-
51
- - **Vercel** - native Next.js support, zero-config deploys. Connect your repo and set the root directory to the generated app folder.
52
- - **Netlify** - supports Next.js via the \`@netlify/plugin-nextjs\` adapter. Works with the standard \`next build\` output.
53
- - **AWS Amplify** - fully managed hosting with CI/CD. Supports Next.js SSR out of the box.
54
- - **Cloudflare Pages** - deploy using the \`@cloudflare/next-on-pages\` adapter for edge-based hosting.
55
- - **Docker** - build a container from the generated app using the standard [Next.js Docker example](https://github.com/vercel/next.js/tree/canary/examples/with-docker) and deploy to any container platform.
56
- - **Node.js server** - run \`next build && next start\` on any server or VPS with Node.js installed.
57
-
58
- ### Troubleshooting
59
- - **Build failed** - check build logs. Ensure your lockfile and correct Node.js version are present.
60
- - **Missing content** - verify your MDX files and assets are in the repository.
61
- - **SSR issues on edge platforms** - some features (like the AI chat API routes) require a Node.js runtime. Check your platform's documentation for SSR/API route support.`;
@@ -1 +0,0 @@
1
- export declare const imageEmbedsMdxTemplate = "---\ntitle: \"Images and embeds\"\ndescription: \"Enrich your documentation with visuals, videos, and interactive embeds.\"\ndate: \"2025-01-15\"\ncategory: \"Components\"\ncategoryOrder: 1\norder: 8\n---\n# Images and embeds\nEnrich your documentation with visuals, videos, and interactive embeds.\n\nDisplay images, embed video content, or add interactive frames via iframes to supplement your docs.\n\n![Demo Image](https://doccupine.com/demo.png)\n\n## Images\nImages enhance documentation with context, illustration, or decorative visual cues.\n\n### Basic Image Syntax\nInclude an image in Markdown using the syntax below:\n\n```md\n![Alt text](https://doccupine.com/demo.png)\n```\n\n<Callout type=\"note\">\n Use clear, descriptive alt text for accessibility and better SEO. Alt text should describe the image\u2019s appearance or content.\n</Callout>\n\n### HTML image embeds\nEmbed images in your Markdown content using HTML syntax.\n\n```md\n<img src=\"https://doccupine.com/demo.png\" alt=\"Alt text\">\n```\n\n## Videos\nVideos add a dynamic element to your documentation, engaging your audience and providing a more immersive experience.\n\n### YouTube Embed\nTo embed a YouTube video, use the following syntax:\n\n```html\n<iframe\n className=\"aspect-video\"\n src=\"https://www.youtube.com/embed/ResP_eVPYQo\"\n title=\"YouTube video player\"\n frameBorder=\"0\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n></iframe>\n```\n\n<iframe\n className=\"aspect-video\"\n src=\"https://www.youtube.com/embed/ResP_eVPYQo\"\n title=\"YouTube video player\"\n frameBorder=\"0\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n></iframe>\n\n### Self-hosted videos\nServe up your own video content using the `<video>` tag:\n\n```html\n<video\n controls\n className=\"aspect-video\"\n src=\"https://samplelib.com/lib/preview/mp4/sample-20s.mp4\"\n></video>\n```\n\n<video\n controls\n className=\"aspect-video\"\n src=\"https://samplelib.com/lib/preview/mp4/sample-20s.mp4\"\n></video>\n\n\n#### Autoplay and Looping\nFor demonstration videos that loop or start automatically, add attributes as shown:\n\n```html\n<video\n controls\n className=\"aspect-video\"\n src=\"https://samplelib.com/lib/preview/mp4/sample-20s.mp4\"\n autoPlay\n muted\n loop\n playsInline\n></video>\n```\n";
@@ -1,95 +0,0 @@
1
- export const imageEmbedsMdxTemplate = `---
2
- title: "Images and embeds"
3
- description: "Enrich your documentation with visuals, videos, and interactive embeds."
4
- date: "2025-01-15"
5
- category: "Components"
6
- categoryOrder: 1
7
- order: 8
8
- ---
9
- # Images and embeds
10
- Enrich your documentation with visuals, videos, and interactive embeds.
11
-
12
- Display images, embed video content, or add interactive frames via iframes to supplement your docs.
13
-
14
- ![Demo Image](https://doccupine.com/demo.png)
15
-
16
- ## Images
17
- Images enhance documentation with context, illustration, or decorative visual cues.
18
-
19
- ### Basic Image Syntax
20
- Include an image in Markdown using the syntax below:
21
-
22
- \`\`\`md
23
- ![Alt text](https://doccupine.com/demo.png)
24
- \`\`\`
25
-
26
- <Callout type="note">
27
- Use clear, descriptive alt text for accessibility and better SEO. Alt text should describe the image’s appearance or content.
28
- </Callout>
29
-
30
- ### HTML image embeds
31
- Embed images in your Markdown content using HTML syntax.
32
-
33
- \`\`\`md
34
- <img src="https://doccupine.com/demo.png" alt="Alt text">
35
- \`\`\`
36
-
37
- ## Videos
38
- Videos add a dynamic element to your documentation, engaging your audience and providing a more immersive experience.
39
-
40
- ### YouTube Embed
41
- To embed a YouTube video, use the following syntax:
42
-
43
- \`\`\`html
44
- <iframe
45
- className="aspect-video"
46
- src="https://www.youtube.com/embed/ResP_eVPYQo"
47
- title="YouTube video player"
48
- frameBorder="0"
49
- allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
50
- allowFullScreen
51
- ></iframe>
52
- \`\`\`
53
-
54
- <iframe
55
- className="aspect-video"
56
- src="https://www.youtube.com/embed/ResP_eVPYQo"
57
- title="YouTube video player"
58
- frameBorder="0"
59
- allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
60
- allowFullScreen
61
- ></iframe>
62
-
63
- ### Self-hosted videos
64
- Serve up your own video content using the \`<video>\` tag:
65
-
66
- \`\`\`html
67
- <video
68
- controls
69
- className="aspect-video"
70
- src="https://samplelib.com/lib/preview/mp4/sample-20s.mp4"
71
- ></video>
72
- \`\`\`
73
-
74
- <video
75
- controls
76
- className="aspect-video"
77
- src="https://samplelib.com/lib/preview/mp4/sample-20s.mp4"
78
- ></video>
79
-
80
-
81
- #### Autoplay and Looping
82
- For demonstration videos that loop or start automatically, add attributes as shown:
83
-
84
- \`\`\`html
85
- <video
86
- controls
87
- className="aspect-video"
88
- src="https://samplelib.com/lib/preview/mp4/sample-20s.mp4"
89
- autoPlay
90
- muted
91
- loop
92
- playsInline
93
- ></video>
94
- \`\`\`
95
- `;
@@ -1 +0,0 @@
1
- export declare const linksMdxTemplate = "---\ntitle: \"Links\"\ndescription: \"Add static links at the top of the documentation website.\"\ndate: \"2025-01-15\"\ncategory: \"Configuration\"\ncategoryOrder: 3\norder: 4\n---\n# Links\nAdd a row of static links at the top of your documentation. Links open in a new tab and are useful for pointing users to related resources, repositories, or external docs.\n\n## links.json\nPlace a `links.json` at your project root (the same folder where you execute `npx doccupine`). When present, Doccupine displays the links in a bar above the main content. You can add as many links as you need.\n\n### Example links.json\n\n```json\n[\n {\n \"title\": \"Back to Home\",\n \"url\": \"https://doccupine.com\",\n \"icon\": \"arrow-left\"\n },\n {\n \"title\": \"GitHub\",\n \"url\": \"https://github.com/doccupine\",\n \"icon\": \"github\"\n },\n {\n \"title\": \"Discord\",\n \"url\": \"https://discord.gg/E9BufYGPhG\",\n \"icon\": \"message-circle\"\n }\n]\n```\n\n### Fields\n- **title**: The label shown for the link in the bar.\n- **url**: The destination URL. Links open in a new tab with `target=\"_blank\"` and `rel=\"noopener noreferrer\"`.\n- **icon**: The icon to display next to the label. Icons are from [Lucide](https://lucide.dev/).\n\n## Behavior\n- **Empty or missing file**: If `links.json` is empty or not present, the links bar is hidden.\n- **Order**: Links appear in the same order as in the array.\n- **No limit**: Add as many links as you want; the bar scrolls horizontally on smaller screens if needed.";
@@ -1,45 +0,0 @@
1
- export const linksMdxTemplate = `---
2
- title: "Links"
3
- description: "Add static links at the top of the documentation website."
4
- date: "2025-01-15"
5
- category: "Configuration"
6
- categoryOrder: 3
7
- order: 4
8
- ---
9
- # Links
10
- Add a row of static links at the top of your documentation. Links open in a new tab and are useful for pointing users to related resources, repositories, or external docs.
11
-
12
- ## links.json
13
- Place a \`links.json\` at your project root (the same folder where you execute \`npx doccupine\`). When present, Doccupine displays the links in a bar above the main content. You can add as many links as you need.
14
-
15
- ### Example links.json
16
-
17
- \`\`\`json
18
- [
19
- {
20
- "title": "Back to Home",
21
- "url": "https://doccupine.com",
22
- "icon": "arrow-left"
23
- },
24
- {
25
- "title": "GitHub",
26
- "url": "https://github.com/doccupine",
27
- "icon": "github"
28
- },
29
- {
30
- "title": "Discord",
31
- "url": "https://discord.gg/E9BufYGPhG",
32
- "icon": "message-circle"
33
- }
34
- ]
35
- \`\`\`
36
-
37
- ### Fields
38
- - **title**: The label shown for the link in the bar.
39
- - **url**: The destination URL. Links open in a new tab with \`target="_blank"\` and \`rel="noopener noreferrer"\`.
40
- - **icon**: The icon to display next to the label. Icons are from [Lucide](https://lucide.dev/).
41
-
42
- ## Behavior
43
- - **Empty or missing file**: If \`links.json\` is empty or not present, the links bar is hidden.
44
- - **Order**: Links appear in the same order as in the array.
45
- - **No limit**: Add as many links as you want; the bar scrolls horizontally on smaller screens if needed.`;
@@ -1 +0,0 @@
1
- export declare const listAndTablesMdxTemplate = "---\ntitle: \"Lists and tables\"\ndescription: \"Present structured information using lists or tables.\"\ndate: \"2026-02-19\"\ncategory: \"Components\"\ncategoryOrder: 1\norder: 2\n---\n# Lists and Tables\nPresent structured information using lists or tables.\n\n## Lists\nMarkdown supports both *ordered* and *unordered* lists, as well as nested list structures.\n\n### Ordered List\nStart each item with a number followed by a period to create an ordered list.\n\n```md\n1. First item\n2. Second item\n3. Third item\n4. Fourth item\n```\n\n1. First item\n2. Second item\n3. Third item\n4. Fourth item\n\n\n### Unordered List\nUse dashes (`-`), asterisks (`*`), or plus signs (`+`) before each item for unordered lists.\n\n```md\n- First item\n- Second item\n- Third item\n- Fourth item\n```\n\n- First item\n- Second item\n- Third item\n- Fourth item\n\n### Nested List\nIndent items under another to create nested lists.\n\n```md\n- First item\n- Second item\n - Additional item\n - Additional item\n- Third item\n```\n\n- First item\n- Second item\n - Additional item\n - Additional item\n- Third item\n\n## Tables\nMarkdown tables use pipes (`|`) to separate columns and hyphens (`---`) to define the header row. Place a pipe at the start and end of each row for better compatibility.\n\n```md\n| Property | Description |\n| -------- | -------------------------------------- |\n| Name | Full name of the user |\n| Age | Age in years |\n| Joined | Indicates if user joined the community |\n```\n\n| Property | Description |\n| -------- | -------------------------------------- |\n| Name | Full name of the user |\n| Age | Age in years |\n| Joined | Indicates if user joined the community |";
@@ -1,78 +0,0 @@
1
- export const listAndTablesMdxTemplate = `---
2
- title: "Lists and tables"
3
- description: "Present structured information using lists or tables."
4
- date: "2026-02-19"
5
- category: "Components"
6
- categoryOrder: 1
7
- order: 2
8
- ---
9
- # Lists and Tables
10
- Present structured information using lists or tables.
11
-
12
- ## Lists
13
- Markdown supports both *ordered* and *unordered* lists, as well as nested list structures.
14
-
15
- ### Ordered List
16
- Start each item with a number followed by a period to create an ordered list.
17
-
18
- \`\`\`md
19
- 1. First item
20
- 2. Second item
21
- 3. Third item
22
- 4. Fourth item
23
- \`\`\`
24
-
25
- 1. First item
26
- 2. Second item
27
- 3. Third item
28
- 4. Fourth item
29
-
30
-
31
- ### Unordered List
32
- Use dashes (\`-\`), asterisks (\`*\`), or plus signs (\`+\`) before each item for unordered lists.
33
-
34
- \`\`\`md
35
- - First item
36
- - Second item
37
- - Third item
38
- - Fourth item
39
- \`\`\`
40
-
41
- - First item
42
- - Second item
43
- - Third item
44
- - Fourth item
45
-
46
- ### Nested List
47
- Indent items under another to create nested lists.
48
-
49
- \`\`\`md
50
- - First item
51
- - Second item
52
- - Additional item
53
- - Additional item
54
- - Third item
55
- \`\`\`
56
-
57
- - First item
58
- - Second item
59
- - Additional item
60
- - Additional item
61
- - Third item
62
-
63
- ## Tables
64
- Markdown tables use pipes (\`|\`) to separate columns and hyphens (\`---\`) to define the header row. Place a pipe at the start and end of each row for better compatibility.
65
-
66
- \`\`\`md
67
- | Property | Description |
68
- | -------- | -------------------------------------- |
69
- | Name | Full name of the user |
70
- | Age | Age in years |
71
- | Joined | Indicates if user joined the community |
72
- \`\`\`
73
-
74
- | Property | Description |
75
- | -------- | -------------------------------------- |
76
- | Name | Full name of the user |
77
- | Age | Age in years |
78
- | Joined | Indicates if user joined the community |`;
@@ -1 +0,0 @@
1
- export declare const listTableMdxTemplate = "---\ntitle: \"Lists and tables\"\ndescription: \"Present structured information using lists or tables.\"\ndate: \"2025-01-15\"\ncategory: \"Components\"\ncategoryOrder: 1\norder: 2\n---\n# Lists and Tables\nPresent structured information using lists or tables.\n\n## Lists\nMarkdown supports both *ordered* and *unordered* lists, as well as nested list structures.\n\n### Ordered List\nStart each item with a number followed by a period to create an ordered list.\n\n```md\n1. First item\n2. Second item\n3. Third item\n4. Fourth item\n```\n\n1. First item\n2. Second item\n3. Third item\n4. Fourth item\n\n\n### Unordered List\nUse dashes (`-`), asterisks (`*`), or plus signs (`+`) before each item for unordered lists.\n\n```md\n- First item\n- Second item\n- Third item\n- Fourth item\n```\n\n- First item\n- Second item\n- Third item\n- Fourth item\n\n### Nested List\nIndent items under another to create nested lists.\n\n```md\n- First item\n- Second item \n - Additional item \n - Additional item \n- Third item\n```\n\n- First item\n- Second item \n - Additional item \n - Additional item \n- Third item\n\n## Tables\nMarkdown tables use pipes (`|`) to separate columns and hyphens (`---`) to define the header row. Place a pipe at the start and end of each row for better compatibility.\n\n```md\n| Property | Description |\n| -------- | -------------------------------------- |\n| Name | Full name of the user |\n| Age | Age in years |\n| Joined | Indicates if user joined the community |\n```\n\n| Property | Description |\n| -------- | -------------------------------------- |\n| Name | Full name of the user |\n| Age | Age in years |\n| Joined | Indicates if user joined the community |";
@@ -1,78 +0,0 @@
1
- export const listTableMdxTemplate = `---
2
- title: "Lists and tables"
3
- description: "Present structured information using lists or tables."
4
- date: "2025-01-15"
5
- category: "Components"
6
- categoryOrder: 1
7
- order: 2
8
- ---
9
- # Lists and Tables
10
- Present structured information using lists or tables.
11
-
12
- ## Lists
13
- Markdown supports both *ordered* and *unordered* lists, as well as nested list structures.
14
-
15
- ### Ordered List
16
- Start each item with a number followed by a period to create an ordered list.
17
-
18
- \`\`\`md
19
- 1. First item
20
- 2. Second item
21
- 3. Third item
22
- 4. Fourth item
23
- \`\`\`
24
-
25
- 1. First item
26
- 2. Second item
27
- 3. Third item
28
- 4. Fourth item
29
-
30
-
31
- ### Unordered List
32
- Use dashes (\`-\`), asterisks (\`*\`), or plus signs (\`+\`) before each item for unordered lists.
33
-
34
- \`\`\`md
35
- - First item
36
- - Second item
37
- - Third item
38
- - Fourth item
39
- \`\`\`
40
-
41
- - First item
42
- - Second item
43
- - Third item
44
- - Fourth item
45
-
46
- ### Nested List
47
- Indent items under another to create nested lists.
48
-
49
- \`\`\`md
50
- - First item
51
- - Second item
52
- - Additional item
53
- - Additional item
54
- - Third item
55
- \`\`\`
56
-
57
- - First item
58
- - Second item
59
- - Additional item
60
- - Additional item
61
- - Third item
62
-
63
- ## Tables
64
- Markdown tables use pipes (\`|\`) to separate columns and hyphens (\`---\`) to define the header row. Place a pipe at the start and end of each row for better compatibility.
65
-
66
- \`\`\`md
67
- | Property | Description |
68
- | -------- | -------------------------------------- |
69
- | Name | Full name of the user |
70
- | Age | Age in years |
71
- | Joined | Indicates if user joined the community |
72
- \`\`\`
73
-
74
- | Property | Description |
75
- | -------- | -------------------------------------- |
76
- | Name | Full name of the user |
77
- | Age | Age in years |
78
- | Joined | Indicates if user joined the community |`;
@@ -1 +0,0 @@
1
- export declare const platformDeploymentsMdxTemplate = "---\ntitle: \"Deployments\"\ndescription: \"Monitor your documentation site's build status and deployment history.\"\ndate: \"2026-02-19\"\ncategory: \"Infrastructure\"\ncategoryOrder: 3\norder: 1\nsection: \"Platform\"\n---\n# Deployments\nThe Deployments page shows your documentation site's build and deployment history. Every time you publish changes or push to GitHub, a new deployment is created.\n\n## Deployment status\nThe project header always shows your current deployment status:\n\n- **Ready** - your site is live and up to date\n- **Building** - a new deployment is in progress\n- **Queued** - a deployment is waiting to start\n- **Error** - the build failed\n\n<Callout type=\"warning\">\n If a deployment fails, check the build logs for error details. Common issues include MDX syntax errors or missing frontmatter fields.\n</Callout>\n\n## Build logs\nClick on any deployment to view its build logs. These show the full output of the build process, making it easy to diagnose issues.\n\n## Deployment triggers\nDeployments are triggered in three ways:\n\n1. **Publishing from Doccupine** - clicking Publish in the project header\n2. **Pushing to GitHub** - pushing to the `main` branch of your repository triggers an automatic deploy via webhook\n3. **Configuration changes** - saving AI assistant settings triggers a redeploy since those are stored as environment variables\n\n## Visiting your site\nClick the **Visit** button in the project header to open your live documentation site in a new tab.";
@@ -1,36 +0,0 @@
1
- export const platformDeploymentsMdxTemplate = `---
2
- title: "Deployments"
3
- description: "Monitor your documentation site's build status and deployment history."
4
- date: "2026-02-19"
5
- category: "Infrastructure"
6
- categoryOrder: 3
7
- order: 1
8
- section: "Platform"
9
- ---
10
- # Deployments
11
- The Deployments page shows your documentation site's build and deployment history. Every time you publish changes or push to GitHub, a new deployment is created.
12
-
13
- ## Deployment status
14
- The project header always shows your current deployment status:
15
-
16
- - **Ready** - your site is live and up to date
17
- - **Building** - a new deployment is in progress
18
- - **Queued** - a deployment is waiting to start
19
- - **Error** - the build failed
20
-
21
- <Callout type="warning">
22
- If a deployment fails, check the build logs for error details. Common issues include MDX syntax errors or missing frontmatter fields.
23
- </Callout>
24
-
25
- ## Build logs
26
- Click on any deployment to view its build logs. These show the full output of the build process, making it easy to diagnose issues.
27
-
28
- ## Deployment triggers
29
- Deployments are triggered in three ways:
30
-
31
- 1. **Publishing from Doccupine** - clicking Publish in the project header
32
- 2. **Pushing to GitHub** - pushing to the \`main\` branch of your repository triggers an automatic deploy via webhook
33
- 3. **Configuration changes** - saving AI assistant settings triggers a redeploy since those are stored as environment variables
34
-
35
- ## Visiting your site
36
- Click the **Visit** button in the project header to open your live documentation site in a new tab.`;
@@ -1 +0,0 @@
1
- export declare const platformSectionsSettingsMdxTemplate = "---\ntitle: \"Sections Settings\"\ndescription: \"Split your documentation into top-level areas with independent sidebars using the Navigation Builder.\"\ndate: \"2026-02-24\"\ncategory: \"Configuration\"\ncategoryOrder: 2\norder: 3\nsection: \"Platform\"\n---\n# Sections Settings\nSections let you divide your documentation into separate top-level areas. Each section appears as a tab below the site header and has its own sidebar navigation.\n\nSections are managed inside the [Navigation Builder](/navigation-settings), which is available as the **Navigation** tab in the File Explorer.\n\n## Adding a section\nIn the Navigation Builder toolbar, click **Add Section** and fill in the fields:\n\n- **Label** - the display name shown in the tab bar (e.g., \"API Reference\")\n- **Slug** - the URL prefix for pages in this section (e.g., `api`). Use an empty string for the default/root section.\n- **Directory** - the subdirectory containing this section's files. Only needed when the directory name differs from the slug.\n\n## Editing and deleting sections\nClick the **edit** button on a section header to open its edit modal, where you can update the label, slug, and directory. The delete button is available inside the modal for non-root sections.\n\n## Reordering sections\nDrag sections by their handle to reorder them. The first section in the list appears on the left in the tab bar.\n\n## The default section\nOne section should have an empty slug (`\"\"`). This is the default section that serves pages at the root URL. Pages not assigned to any other section belong here.\n\n<Callout type=\"note\">\n For a deeper explanation of how sections work, including frontmatter-based sections and URL routing, see the [Sections documentation](/sections).\n</Callout>\n\n## How it works\nSection settings are stored in `sections.json` at the root of your repository:\n\n```json\n[\n { \"label\": \"Docs\", \"slug\": \"\" },\n { \"label\": \"API Reference\", \"slug\": \"api\" },\n { \"label\": \"SDKs\", \"slug\": \"sdks\" }\n]\n```\n\nYou can also define sections purely through page frontmatter without using the Navigation Builder. See the [Sections documentation](/sections) for details on both approaches.";