create-fumadocs-app 16.0.14 → 16.0.16

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 (35) hide show
  1. package/dist/bin.js +2 -2
  2. package/dist/{chunk-KWHTQK4F.js → chunk-N5FFRBR2.js} +1 -1
  3. package/dist/{chunk-Q3YZFITQ.js → chunk-NJNDK2R6.js} +5 -5
  4. package/dist/index.js +2 -2
  5. package/dist/plugins/biome.js +1 -1
  6. package/dist/plugins/eslint.js +1 -1
  7. package/dist/plugins/orama-cloud.js +1 -1
  8. package/package.json +2 -2
  9. package/template/+next+fuma-docs-mdx/lib/source.ts +1 -1
  10. package/template/+next+fuma-docs-mdx/package.json +2 -1
  11. package/template/+next+fuma-docs-mdx/tsconfig.json +1 -1
  12. package/template/react-router/app/docs/page.tsx +5 -7
  13. package/template/react-router/app/lib/source.ts +2 -2
  14. package/template/react-router/content/docs/meta.json +3 -0
  15. package/template/react-router/package.json +3 -3
  16. package/template/react-router/tsconfig.json +1 -1
  17. package/template/react-router/vite.config.ts +8 -1
  18. package/template/react-router-spa/app/docs/page.tsx +5 -7
  19. package/template/react-router-spa/app/lib/source.ts +2 -2
  20. package/template/react-router-spa/package.json +3 -3
  21. package/template/react-router-spa/tsconfig.json +1 -1
  22. package/template/react-router-spa/vite.config.ts +8 -1
  23. package/template/tanstack-start/package.json +4 -2
  24. package/template/tanstack-start/src/lib/source.ts +2 -2
  25. package/template/tanstack-start/src/routes/docs/$.tsx +2 -4
  26. package/template/tanstack-start/tsconfig.json +1 -1
  27. package/template/tanstack-start/vite.config.ts +4 -0
  28. package/template/tanstack-start-spa/package.json +3 -2
  29. package/template/tanstack-start-spa/src/lib/source.ts +2 -2
  30. package/template/tanstack-start-spa/src/routes/docs/$.tsx +2 -4
  31. package/template/tanstack-start-spa/tsconfig.json +1 -1
  32. package/template/waku/package.json +3 -2
  33. package/template/waku/src/lib/source.ts +2 -2
  34. package/template/waku/tsconfig.json +3 -1
  35. package/template/waku/waku.config.ts +3 -2
package/dist/bin.js CHANGED
@@ -3,11 +3,11 @@ import {
3
3
  create,
4
4
  getPackageManager,
5
5
  managers
6
- } from "./chunk-KWHTQK4F.js";
6
+ } from "./chunk-N5FFRBR2.js";
7
7
  import {
8
8
  isCI,
9
9
  templates
10
- } from "./chunk-Q3YZFITQ.js";
10
+ } from "./chunk-NJNDK2R6.js";
11
11
 
12
12
  // src/bin.ts
13
13
  import fs from "fs/promises";
@@ -4,7 +4,7 @@ import {
4
4
  sourceDir,
5
5
  templates,
6
6
  tryGitInit
7
- } from "./chunk-Q3YZFITQ.js";
7
+ } from "./chunk-NJNDK2R6.js";
8
8
 
9
9
  // src/index.ts
10
10
  import path from "path";
@@ -94,11 +94,11 @@ import { fileURLToPath } from "url";
94
94
  // ../create-app-versions/package.json
95
95
  var package_default = {
96
96
  name: "create-fumadocs-versions",
97
- version: "16.0.14",
97
+ version: "16.0.16",
98
98
  private: true,
99
99
  description: "Used to track dependency versions in create-fumadocs-app",
100
100
  dependencies: {
101
- "@biomejs/biome": "^2.3.3",
101
+ "@biomejs/biome": "^2.3.5",
102
102
  "@eslint/eslintrc": "^3.3.1",
103
103
  "@orama/core": "^1.2.13",
104
104
  eslint: "^9.39.1",
@@ -109,13 +109,13 @@ var package_default = {
109
109
  };
110
110
 
111
111
  // ../core/package.json
112
- var version = "16.0.11";
112
+ var version = "16.0.13";
113
113
 
114
114
  // ../ui/package.json
115
- var version2 = "16.0.11";
115
+ var version2 = "16.0.13";
116
116
 
117
117
  // ../mdx/package.json
118
- var version3 = "13.0.8";
118
+ var version3 = "14.0.1";
119
119
 
120
120
  // src/constants.ts
121
121
  var sourceDir = fileURLToPath(new URL(`../`, import.meta.url).href);
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  create
3
- } from "./chunk-KWHTQK4F.js";
4
- import "./chunk-Q3YZFITQ.js";
3
+ } from "./chunk-N5FFRBR2.js";
4
+ import "./chunk-NJNDK2R6.js";
5
5
  export {
6
6
  create
7
7
  };
@@ -8,7 +8,7 @@ import {
8
8
  depVersions,
9
9
  pick,
10
10
  writeFile
11
- } from "../chunk-Q3YZFITQ.js";
11
+ } from "../chunk-NJNDK2R6.js";
12
12
 
13
13
  // src/plugins/biome.ts
14
14
  import path from "path";
@@ -2,7 +2,7 @@ import {
2
2
  depVersions,
3
3
  pick,
4
4
  writeFile
5
- } from "../chunk-Q3YZFITQ.js";
5
+ } from "../chunk-NJNDK2R6.js";
6
6
 
7
7
  // src/plugins/eslint.ts
8
8
  import path from "path";
@@ -4,7 +4,7 @@ import {
4
4
  pick,
5
5
  sourceDir,
6
6
  writeFile
7
- } from "../chunk-Q3YZFITQ.js";
7
+ } from "../chunk-NJNDK2R6.js";
8
8
 
9
9
  // src/plugins/orama-cloud.ts
10
10
  import path2 from "path";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-fumadocs-app",
3
- "version": "16.0.14",
3
+ "version": "16.0.16",
4
4
  "description": "Create a new documentation site with Fumadocs",
5
5
  "keywords": [
6
6
  "react",
@@ -39,7 +39,7 @@
39
39
  },
40
40
  "devDependencies": {
41
41
  "@types/cross-spawn": "^6.0.6",
42
- "@types/node": "24.10.0",
42
+ "@types/node": "24.10.1",
43
43
  "tinyglobby": "^0.2.15",
44
44
  "typescript": "^5.9.3",
45
45
  "eslint-config-custom": "0.0.0",
@@ -1,4 +1,4 @@
1
- import { docs } from '@/.source';
1
+ import { docs } from 'fumadocs-mdx:collections/server';
2
2
  import { type InferPageType, loader } from 'fumadocs-core/source';
3
3
  import { lucideIconsPlugin } from 'fumadocs-core/source/lucide-icons';
4
4
 
@@ -5,7 +5,8 @@
5
5
  "scripts": {
6
6
  "build": "next build",
7
7
  "dev": "next dev",
8
- "start": "next start"
8
+ "start": "next start",
9
+ "types:check": "fumadocs-mdx && tsc --noEmit"
9
10
  },
10
11
  "dependencies": {
11
12
  "fumadocs-core": "workspace:*",
@@ -17,7 +17,7 @@
17
17
  "incremental": true,
18
18
  "paths": {
19
19
  "@/*": ["./*"],
20
- "@/.source": [".source"]
20
+ "fumadocs-mdx:collections/*": [".source/*"]
21
21
  },
22
22
  "plugins": [
23
23
  {
@@ -9,8 +9,7 @@ import {
9
9
  import { source } from '@/lib/source';
10
10
  import type * as PageTree from 'fumadocs-core/page-tree';
11
11
  import defaultMdxComponents from 'fumadocs-ui/mdx';
12
- import { docs } from '@/.source';
13
- import { toClientRenderer } from 'fumadocs-mdx/runtime/vite';
12
+ import browserCollections from 'fumadocs-mdx:collections/browser';
14
13
  import { baseOptions } from '@/lib/layout.shared';
15
14
 
16
15
  export async function loader({ params }: Route.LoaderArgs) {
@@ -24,9 +23,8 @@ export async function loader({ params }: Route.LoaderArgs) {
24
23
  };
25
24
  }
26
25
 
27
- const renderer = toClientRenderer(
28
- docs.doc,
29
- ({ toc, default: Mdx, frontmatter }) => {
26
+ const clientLoader = browserCollections.docs.createClientLoader({
27
+ component({ toc, default: Mdx, frontmatter }) {
30
28
  return (
31
29
  <DocsPage toc={toc}>
32
30
  <title>{frontmatter.title}</title>
@@ -39,11 +37,11 @@ const renderer = toClientRenderer(
39
37
  </DocsPage>
40
38
  );
41
39
  },
42
- );
40
+ });
43
41
 
44
42
  export default function Page({ loaderData }: Route.ComponentProps) {
45
43
  const { tree, path } = loaderData;
46
- const Content = renderer[path];
44
+ const Content = clientLoader.getComponent(path);
47
45
 
48
46
  return (
49
47
  <DocsLayout {...baseOptions()} tree={tree as PageTree.Root}>
@@ -1,7 +1,7 @@
1
1
  import { loader } from 'fumadocs-core/source';
2
- import { create, docs } from '@/.source';
2
+ import { docs } from 'fumadocs-mdx:collections/server';
3
3
 
4
4
  export const source = loader({
5
- source: await create.sourceAsync(docs.doc, docs.meta),
5
+ source: docs.toFumadocsSource(),
6
6
  baseUrl: '/docs',
7
7
  });
@@ -0,0 +1,3 @@
1
+ {
2
+ "pages": ["index", "..."]
3
+ }
@@ -6,7 +6,7 @@
6
6
  "build": "react-router build",
7
7
  "dev": "react-router dev",
8
8
  "start": "react-router-serve ./build/server/index.js",
9
- "typecheck": "react-router typegen && tsc"
9
+ "types:check": "react-router typegen && fumadocs-mdx && tsc --noEmit"
10
10
  },
11
11
  "dependencies": {
12
12
  "@react-router/node": "^7.9.5",
@@ -26,10 +26,10 @@
26
26
  "@types/node": "^24.10.0",
27
27
  "@types/react": "^19.2.2",
28
28
  "@types/react-dom": "^19.2.2",
29
- "react-router-devtools": "^6.0.0",
29
+ "react-router-devtools": "^5.1.3",
30
30
  "tailwindcss": "^4.1.16",
31
31
  "typescript": "^5.9.3",
32
- "vite": "^7.1.12",
32
+ "vite": "^7.2.0",
33
33
  "vite-tsconfig-paths": "^5.1.4"
34
34
  }
35
35
  }
@@ -16,7 +16,7 @@
16
16
  "baseUrl": ".",
17
17
  "paths": {
18
18
  "@/*": ["./app/*"],
19
- "@/.source": [".source"]
19
+ "fumadocs-mdx:collections/*": [".source/*"]
20
20
  },
21
21
  "esModuleInterop": true,
22
22
  "verbatimModuleSyntax": true,
@@ -6,5 +6,12 @@ import mdx from 'fumadocs-mdx/vite';
6
6
  import * as MdxConfig from './source.config';
7
7
 
8
8
  export default defineConfig({
9
- plugins: [mdx(MdxConfig), tailwindcss(), reactRouter(), tsconfigPaths()],
9
+ plugins: [
10
+ mdx(MdxConfig),
11
+ tailwindcss(),
12
+ reactRouter(),
13
+ tsconfigPaths({
14
+ root: __dirname,
15
+ }),
16
+ ],
10
17
  });
@@ -9,8 +9,7 @@ import {
9
9
  import { source } from '@/lib/source';
10
10
  import type * as PageTree from 'fumadocs-core/page-tree';
11
11
  import defaultMdxComponents from 'fumadocs-ui/mdx';
12
- import { docs } from '@/.source';
13
- import { toClientRenderer } from 'fumadocs-mdx/runtime/vite';
12
+ import browserCollections from 'fumadocs-mdx:collections/browser';
14
13
  import { baseOptions } from '@/lib/layout.shared';
15
14
 
16
15
  export async function loader({ params }: Route.LoaderArgs) {
@@ -24,9 +23,8 @@ export async function loader({ params }: Route.LoaderArgs) {
24
23
  };
25
24
  }
26
25
 
27
- const renderer = toClientRenderer(
28
- docs.doc,
29
- ({ toc, default: Mdx, frontmatter }) => {
26
+ const clientLoader = browserCollections.docs.createClientLoader({
27
+ component({ toc, default: Mdx, frontmatter }) {
30
28
  return (
31
29
  <DocsPage toc={toc}>
32
30
  <title>{frontmatter.title}</title>
@@ -39,11 +37,11 @@ const renderer = toClientRenderer(
39
37
  </DocsPage>
40
38
  );
41
39
  },
42
- );
40
+ });
43
41
 
44
42
  export default function Page({ loaderData }: Route.ComponentProps) {
45
43
  const { tree, path } = loaderData;
46
- const Content = renderer[path];
44
+ const Content = clientLoader.getComponent(path);
47
45
 
48
46
  return (
49
47
  <DocsLayout {...baseOptions()} tree={tree as PageTree.Root}>
@@ -1,7 +1,7 @@
1
1
  import { loader } from 'fumadocs-core/source';
2
- import { create, docs } from '@/.source';
2
+ import { docs } from 'fumadocs-mdx:collections/server';
3
3
 
4
4
  export const source = loader({
5
- source: await create.sourceAsync(docs.doc, docs.meta),
5
+ source: docs.toFumadocsSource(),
6
6
  baseUrl: '/docs',
7
7
  });
@@ -6,7 +6,7 @@
6
6
  "build": "react-router build",
7
7
  "dev": "react-router dev",
8
8
  "start": "serve ./build/client",
9
- "typecheck": "react-router typegen && tsc"
9
+ "types:check": "react-router typegen && fumadocs-mdx && tsc --noEmit"
10
10
  },
11
11
  "dependencies": {
12
12
  "@orama/orama": "^3.1.16",
@@ -26,11 +26,11 @@
26
26
  "@types/node": "^24.10.0",
27
27
  "@types/react": "^19.2.2",
28
28
  "@types/react-dom": "^19.2.2",
29
- "react-router-devtools": "^6.0.0",
29
+ "react-router-devtools": "^5.1.3",
30
30
  "serve": "^14.2.5",
31
31
  "tailwindcss": "^4.1.16",
32
32
  "typescript": "^5.9.3",
33
- "vite": "^7.1.12",
33
+ "vite": "^7.2.0",
34
34
  "vite-tsconfig-paths": "^5.1.4"
35
35
  }
36
36
  }
@@ -16,7 +16,7 @@
16
16
  "baseUrl": ".",
17
17
  "paths": {
18
18
  "@/*": ["./app/*"],
19
- "@/.source": [".source"]
19
+ "fumadocs-mdx:collections/*": [".source/*"]
20
20
  },
21
21
  "esModuleInterop": true,
22
22
  "verbatimModuleSyntax": true,
@@ -6,5 +6,12 @@ import mdx from 'fumadocs-mdx/vite';
6
6
  import * as MdxConfig from './source.config';
7
7
 
8
8
  export default defineConfig({
9
- plugins: [mdx(MdxConfig), tailwindcss(), reactRouter(), tsconfigPaths()],
9
+ plugins: [
10
+ mdx(MdxConfig),
11
+ tailwindcss(),
12
+ reactRouter(),
13
+ tsconfigPaths({
14
+ root: __dirname,
15
+ }),
16
+ ],
10
17
  });
@@ -6,7 +6,8 @@
6
6
  "scripts": {
7
7
  "dev": "vite dev",
8
8
  "build": "vite build",
9
- "start": "node .output/server/index.mjs"
9
+ "start": "node .output/server/index.mjs",
10
+ "types:check": "fumadocs-mdx && tsc --noEmit"
10
11
  },
11
12
  "dependencies": {
12
13
  "@tanstack/react-router": "^1.134.12",
@@ -19,7 +20,7 @@
19
20
  "react": "^19.2.0",
20
21
  "react-dom": "^19.2.0",
21
22
  "tailwind-merge": "^3.3.1",
22
- "vite": "^7.1.12"
23
+ "vite": "^7.2.0"
23
24
  },
24
25
  "devDependencies": {
25
26
  "@tailwindcss/vite": "^4.1.16",
@@ -28,6 +29,7 @@
28
29
  "@types/react": "^19.2.2",
29
30
  "@types/react-dom": "^19.2.2",
30
31
  "@vitejs/plugin-react": "^5.1.0",
32
+ "nitro": "3.0.1-alpha.1",
31
33
  "tailwindcss": "^4.1.16",
32
34
  "typescript": "^5.9.3",
33
35
  "vite-tsconfig-paths": "^5.1.4"
@@ -1,9 +1,9 @@
1
1
  import { loader } from 'fumadocs-core/source';
2
2
  import * as icons from 'lucide-static';
3
- import { create, docs } from '@/.source';
3
+ import { docs } from 'fumadocs-mdx:collections/server';
4
4
 
5
5
  export const source = loader({
6
- source: await create.sourceAsync(docs.doc, docs.meta),
6
+ source: docs.toFumadocsSource(),
7
7
  baseUrl: '/docs',
8
8
  icon(icon) {
9
9
  if (!icon) {
@@ -4,7 +4,7 @@ import { createServerFn } from '@tanstack/react-start';
4
4
  import { source } from '@/lib/source';
5
5
  import type * as PageTree from 'fumadocs-core/page-tree';
6
6
  import { useMemo } from 'react';
7
- import { docs } from '@/.source';
7
+ import browserCollections from 'fumadocs-mdx:collections/browser';
8
8
  import {
9
9
  DocsBody,
10
10
  DocsDescription,
@@ -12,7 +12,6 @@ import {
12
12
  DocsTitle,
13
13
  } from 'fumadocs-ui/page';
14
14
  import defaultMdxComponents from 'fumadocs-ui/mdx';
15
- import { createClientLoader } from 'fumadocs-mdx/runtime/vite';
16
15
  import { baseOptions } from '@/lib/layout.shared';
17
16
 
18
17
  export const Route = createFileRoute('/docs/$')({
@@ -39,8 +38,7 @@ const loader = createServerFn({
39
38
  };
40
39
  });
41
40
 
42
- const clientLoader = createClientLoader(docs.doc, {
43
- id: 'docs',
41
+ const clientLoader = browserCollections.docs.createClientLoader({
44
42
  component({ toc, frontmatter, default: MDX }) {
45
43
  return (
46
44
  <DocsPage toc={toc}>
@@ -17,7 +17,7 @@
17
17
  "baseUrl": ".",
18
18
  "paths": {
19
19
  "@/*": ["./src/*"],
20
- "@/.source": [".source"]
20
+ "fumadocs-mdx:collections/*": [".source/*"]
21
21
  },
22
22
  "noEmit": true
23
23
  }
@@ -4,6 +4,7 @@ import { defineConfig } from 'vite';
4
4
  import tsConfigPaths from 'vite-tsconfig-paths';
5
5
  import tailwindcss from '@tailwindcss/vite';
6
6
  import mdx from 'fumadocs-mdx/vite';
7
+ import { nitro } from 'nitro/vite';
7
8
 
8
9
  export default defineConfig({
9
10
  server: {
@@ -21,5 +22,8 @@ export default defineConfig({
21
22
  },
22
23
  }),
23
24
  react(),
25
+ // see https://tanstack.com/start/latest/docs/framework/react/guide/hosting for hosting config
26
+ // we configured nitro by default
27
+ nitro(),
24
28
  ],
25
29
  });
@@ -6,7 +6,8 @@
6
6
  "scripts": {
7
7
  "dev": "vite dev",
8
8
  "build": "vite build",
9
- "start": "serve dist/client"
9
+ "start": "serve dist/client",
10
+ "types:check": "fumadocs-mdx && tsc --noEmit"
10
11
  },
11
12
  "dependencies": {
12
13
  "@orama/orama": "^3.1.16",
@@ -21,7 +22,7 @@
21
22
  "react": "^19.2.0",
22
23
  "react-dom": "^19.2.0",
23
24
  "tailwind-merge": "^3.3.1",
24
- "vite": "^7.1.12"
25
+ "vite": "^7.2.0"
25
26
  },
26
27
  "devDependencies": {
27
28
  "@tailwindcss/vite": "^4.1.16",
@@ -1,9 +1,9 @@
1
1
  import { loader } from 'fumadocs-core/source';
2
2
  import * as icons from 'lucide-static';
3
- import { create, docs } from '@/.source';
3
+ import { docs } from 'fumadocs-mdx:collections/server';
4
4
 
5
5
  export const source = loader({
6
- source: await create.sourceAsync(docs.doc, docs.meta),
6
+ source: docs.toFumadocsSource(),
7
7
  baseUrl: '/docs',
8
8
  icon(icon) {
9
9
  if (!icon) {
@@ -4,7 +4,7 @@ import { createServerFn } from '@tanstack/react-start';
4
4
  import { source } from '@/lib/source';
5
5
  import type * as PageTree from 'fumadocs-core/page-tree';
6
6
  import { useMemo } from 'react';
7
- import { docs } from '@/.source';
7
+ import browserCollections from 'fumadocs-mdx:collections/browser';
8
8
  import {
9
9
  DocsBody,
10
10
  DocsDescription,
@@ -12,7 +12,6 @@ import {
12
12
  DocsTitle,
13
13
  } from 'fumadocs-ui/page';
14
14
  import defaultMdxComponents from 'fumadocs-ui/mdx';
15
- import { createClientLoader } from 'fumadocs-mdx/runtime/vite';
16
15
  import { baseOptions } from '@/lib/layout.shared';
17
16
  import { staticFunctionMiddleware } from '@tanstack/start-static-server-functions';
18
17
 
@@ -41,8 +40,7 @@ const loader = createServerFn({
41
40
  };
42
41
  });
43
42
 
44
- const clientLoader = createClientLoader(docs.doc, {
45
- id: 'docs',
43
+ const clientLoader = browserCollections.docs.createClientLoader({
46
44
  component({ toc, frontmatter, default: MDX }) {
47
45
  return (
48
46
  <DocsPage toc={toc}>
@@ -17,7 +17,7 @@
17
17
  "baseUrl": ".",
18
18
  "paths": {
19
19
  "@/*": ["./src/*"],
20
- "@/.source": [".source"]
20
+ "fumadocs-mdx:collections/*": [".source/*"]
21
21
  },
22
22
  "noEmit": true
23
23
  }
@@ -6,7 +6,8 @@
6
6
  "scripts": {
7
7
  "dev": "waku dev",
8
8
  "build": "waku build",
9
- "start": "waku start"
9
+ "start": "waku start",
10
+ "types:check": "fumadocs-mdx && tsc --noEmit"
10
11
  },
11
12
  "dependencies": {
12
13
  "fumadocs-core": "workspace:*",
@@ -25,7 +26,7 @@
25
26
  "@types/react-dom": "^19.2.2",
26
27
  "tailwindcss": "^4.1.16",
27
28
  "typescript": "^5.9.3",
28
- "vite": "^7.1.12",
29
+ "vite": "^7.2.0",
29
30
  "vite-tsconfig-paths": "^5.1.4"
30
31
  }
31
32
  }
@@ -1,7 +1,7 @@
1
1
  import { loader } from 'fumadocs-core/source';
2
- import { create, docs } from '@/.source';
2
+ import { docs } from 'fumadocs-mdx:collections/server';
3
3
 
4
4
  export const source = loader({
5
- source: await create.sourceAsync(docs.doc, docs.meta),
5
+ source: docs.toFumadocsSource(),
6
6
  baseUrl: '/docs',
7
7
  });
@@ -1,7 +1,9 @@
1
1
  {
2
2
  "compilerOptions": {
3
3
  "target": "ES2022",
4
+ "baseUrl": ".",
4
5
  "lib": ["dom", "dom.iterable", "ES2022"],
6
+ "types": ["vite", "vite/client"],
5
7
  "jsx": "react-jsx",
6
8
  "module": "ESNext",
7
9
  "moduleResolution": "bundler",
@@ -16,7 +18,7 @@
16
18
  "noEmit": true,
17
19
  "paths": {
18
20
  "@/*": ["./src/*"],
19
- "@/.source": [".source"]
21
+ "fumadocs-mdx:collections/*": [".source/*"]
20
22
  }
21
23
  },
22
24
  "exclude": ["node_modules", "dist"]
@@ -1,11 +1,12 @@
1
- import { defineConfig } from 'waku/config';
1
+ import { type Config, defineConfig } from 'waku/config';
2
2
  import mdx from 'fumadocs-mdx/vite';
3
3
  import * as MdxConfig from './source.config.js';
4
4
  import tailwindcss from '@tailwindcss/vite';
5
5
  import tsconfigPaths from 'vite-tsconfig-paths';
6
+ import type { UserConfig } from 'vite';
6
7
 
7
8
  export default defineConfig({
8
9
  vite: {
9
10
  plugins: [tailwindcss(), mdx(MdxConfig), tsconfigPaths()],
10
- },
11
+ } satisfies UserConfig as Config['vite'],
11
12
  });