diff --git a/Dockerfile b/Dockerfile index 9d3edc40..e4fbecd3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -24,15 +24,15 @@ RUN --mount=type=cache,target=/root/.bun \ # Copy only necessary files for build COPY config/ ./config/ -COPY public/ ./public/ COPY src/ ./src/ -COPY docs/ ./docs/ COPY nginx/ ./nginx/ COPY scripts/ ./scripts/ COPY env.d.ts . COPY source.config.ts . COPY tsconfig*.json ./ COPY vite.config.ts . +COPY public/ ./public/ +COPY content/ ./content/ # Copy git history for lastUpdated timestamps COPY .git/ ./.git/ diff --git a/package.json b/package.json index 65d80778..43e3a4b9 100644 --- a/package.json +++ b/package.json @@ -19,10 +19,10 @@ "generate:services:page": "node scripts/generate-services-page.mjs", "generate:services": "node scripts/generate-service-list.mjs && node scripts/generate-services-page.mjs", "generate:content": "node scripts/generate-fumadocs-content.mjs", - "dev": "bun run generate:services && bun run generate:content && vite dev", - "build": "NODE_ENV=production bun run generate:services && NODE_ENV=production bun run generate:content && NODE_ENV=production vite build && NODE_ENV=production bun run scripts/postbuild.ts", + "dev": "bun run generate:services && vite dev", + "build": "NODE_ENV=production bun run generate:services && NODE_ENV=production vite build && NODE_ENV=production bun run scripts/postbuild.ts", "preview": "vite preview", - "types:check": "bun run generate:services && bun run generate:content && bunx fumadocs-mdx && tsc --noEmit" + "types:check": "bun run generate:services && bunx fumadocs-mdx && tsc --noEmit" }, "dependencies": { "@orama/orama": "^3.1.18", diff --git a/scripts/generate-services-page.mjs b/scripts/generate-services-page.mjs index 8a59f041..e3527d90 100644 --- a/scripts/generate-services-page.mjs +++ b/scripts/generate-services-page.mjs @@ -2,7 +2,7 @@ import { writeFile } from 'node:fs/promises' import path from 'node:path' import { collectServices, root, servicesDir } from './services-data.mjs' -const outputFile = path.join(servicesDir, 'all.md') +const outputFile = path.join(servicesDir, 'all.mdx') /** * Derive alphabetical category order from the current service data. diff --git a/scripts/services-data.mjs b/scripts/services-data.mjs index e513ed5a..228b5c6c 100644 --- a/scripts/services-data.mjs +++ b/scripts/services-data.mjs @@ -4,13 +4,13 @@ import path from 'node:path' import { fileURLToPath } from 'node:url' export const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..') -export const servicesDir = path.join(root, 'docs/services') -export const imagesDir = path.join(root, 'docs/public/images/services') +export const servicesDir = path.join(root, 'content/docs/services') +export const imagesDir = path.join(root, 'public/images/services') const ignoredServiceFiles = new Set([ - 'all.md', - 'introduction.md', - 'overview.md', + 'all.mdx', + 'introduction.mdx', + 'overview.mdx', ]) const imageExtensions = new Set(['.svg', '.png', '.webp', '.jpg', '.jpeg']) @@ -215,11 +215,11 @@ export async function collectServices() { const services = [] for (const file of serviceFiles.sort()) { - if (!file.endsWith('.md') || ignoredServiceFiles.has(file)) { + if (!file.endsWith('.mdx') || ignoredServiceFiles.has(file)) { continue } - const slug = file.replace(/\.md$/, '') + const slug = file.replace(/\.mdx$/, '') const markdown = await readFile(path.join(servicesDir, file), 'utf8') const frontmatter = parseFrontmatter(markdown, file) const title = frontmatter.title || slug