Skip to content
Merged
Show file tree
Hide file tree
Changes from 11 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 25 additions & 2 deletions docs/.gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,26 @@
node_modules
.mintlify
# deps
/node_modules

# generated content
.source

# test & build
/coverage
/.next/
/out/
/build
*.tsbuildinfo

# misc
.DS_Store
*.pem
/.pnp
.pnp.js
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# others
.env*.local
.vercel
next-env.d.ts
87 changes: 87 additions & 0 deletions docs/MIGRATION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# Documentation Migration: Mintlify → Fumadocs

This document summarizes the migration of documentation from `/docs` (Mintlify) to `/docs2` (Fumadocs).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Update this guide to reference docs/, not docs2/.

The repo changes in this PR live under docs/..., so the current intro and tree send readers to a directory that does not exist in the final layout.

📝 Minimal fix
-This document summarizes the migration of documentation from `/docs` (Mintlify) to `/docs2` (Fumadocs).
+This document summarizes the migration of documentation from Mintlify to the new Fumadocs setup under `/docs`.

-docs2/
+docs/

Also applies to: 42-57

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/MIGRATION.md` at line 3, Update the MIGRATION.md references that point
to `/docs2` so they instead point to `/docs`; specifically edit the introductory
sentence ("This document summarizes the migration...") and any file-tree or path
examples between the intro and lines referenced (near the block cited and the
region noted as "Also applies to: 42-57") to use `docs/` rather than `docs2/` so
the guide matches the repository layout.


## What Was Done

### 1. Files Copied
- ✅ All 29 MDX files from `/docs` folders (overview, api, developer, plans)
- ✅ All 4 root-level markdown files (AUTOUPDATER.md, AUTOUPDATER_QUICKSTART.md, TROUBLESHOOTING.md, README.md)
- ✅ All images (3 webp files) → `public/images/`
- ✅ All logo files (2 png files) → `public/logo/`

### 2. Component Migration
Created compatibility layer in `components/mintlify-compat.tsx` that maps Mintlify components to Fumadocs equivalents:

- `<Frame>` → Simple div wrapper (images are zoomable by default in Fumadocs)
- `<CardGroup>` → `<Cards>` (Fumadocs component)
- `<Card>` → `<Card>` (with icon string → Lucide icon mapping)
- `<Steps>` / `<Step>` → Direct mapping to Fumadocs components
- `<Tip>`, `<Note>`, `<Info>` → `<Callout type="info">`
- `<Warning>` → `<Callout type="warn">`
- `<Danger>` → `<Callout type="error">`
- `<AccordionGroup>` / `<Accordion>` → HTML `<details>` / `<summary>` elements

### 3. Navigation Structure
Created `meta.json` files for each folder:
- `content/docs/meta.json` - Root documentation
- `content/docs/overview/meta.json` - Overview pages
- `content/docs/api/meta.json` - API reference
- `content/docs/developer/meta.json` - Developer docs
- `content/docs/plans/meta.json` - Plans/roadmap

### 4. Link Fixes
- Fixed incorrect `/guides/...` paths → `/overview/...`
- All internal links now use correct paths

### 5. Branding
- Updated `lib/layout.shared.tsx` to use "Voicebox" as the nav title

## File Structure

```
docs2/
├── components/
│ └── mintlify-compat.tsx # Mintlify → Fumadocs component mappings
├── content/docs/
│ ├── meta.json # Root navigation
│ ├── overview/ # 12 MDX files
│ ├── api/ # 5 MDX files
│ ├── developer/ # 12 MDX files
│ ├── plans/ # 4 MD files
│ └── *.md # 4 root markdown files
├── public/
│ ├── images/ # 3 webp files
│ └── logo/ # 2 png files
└── mdx-components.tsx # MDX component configuration
```

## Icon Mapping

The following icon strings are mapped to Lucide icons:
- `microphone` → Mic
- `film` → Film
- `code` → Code
- `shield` → Shield
- `download` → Download
- `rocket` → Rocket
- `apple` → Apple
- `windows` → Windows
- `server` → Server
- `user` → User
- `waveform` → Waveform

## Next Steps

1. **Test the build**: Run `npm run build` (requires Node.js >= 20.9.0)
2. **Start dev server**: Run `npm run dev` to preview
3. **Customize styling**: Update `app/global.css` if needed
4. **Add more icons**: Extend `iconMap` in `mintlify-compat.tsx` as needed
5. **Review navigation**: Adjust `meta.json` files to customize page order

## Notes

- Image paths (`/images/...`) work as-is since Next.js serves from `public/`
- All Mintlify components are now compatible with Fumadocs
- Navigation structure follows Fumadocs conventions
- No breaking changes to content - all MDX files work with compatibility layer
77 changes: 29 additions & 48 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,64 +1,45 @@
# Voicebox Documentation
# fumadocs-ui-template

This directory contains the documentation for Voicebox, built with [Mintlify](https://mintlify.com).
This is a Next.js application generated with
[Create Fumadocs](https://github.com/fuma-nama/fumadocs).

## Development

### Prerequisites

Install Mintlify globally using bun:
Run development server:

```bash
bun add -g mintlify
npm run dev
# or
pnpm dev
# or
yarn dev
```

Or use the helper script:
Open http://localhost:3000 with your browser to see the result.

```bash
bun run install:mintlify
```
## Explore

### Running Locally
In the project, you can see:

```bash
bun run dev
```
- `lib/source.ts`: Code for content source adapter, [`loader()`](https://fumadocs.dev/docs/headless/source-api) provides the interface to access your content.
- `lib/layout.shared.tsx`: Shared options for layouts, optional but preferred to keep.

This will start the Mintlify dev server.
| Route | Description |
| ------------------------- | ------------------------------------------------------ |
| `app/(home)` | The route group for your landing page and other pages. |
| `app/docs` | The documentation layout and pages. |
| `app/api/search/route.ts` | The Route Handler for search. |

The docs will be available at `http://localhost:3000`
### Fumadocs MDX

### Structure
A `source.config.ts` config file has been included, you can customise different options like frontmatter schema.

```
docs/
├── mint.json # Mintlify configuration
├── custom.css # Custom styles
├── overview/ # Getting started & feature docs
├── guides/ # User guides
├── api/ # API reference
├── development/ # Developer documentation
├── logo/ # Logo assets
└── public/ # Static assets
```
Read the [Introduction](https://fumadocs.dev/docs/mdx) for further details.

### Writing Docs

- Use `.mdx` files for all documentation pages
- Follow the existing structure in `mint.json` for navigation
- Use Mintlify components for enhanced formatting (Card, CardGroup, Accordion, etc.)
- Reference the [Mintlify documentation](https://mintlify.com/docs) for available components

## Deployment

Docs are automatically deployed when changes are pushed to the main branch.

To manually deploy:

```bash
mintlify deploy
```
## Learn More

## Contributing
To learn more about Next.js and Fumadocs, take a look at the following
resources:

See [CONTRIBUTING.md](../CONTRIBUTING.md) for contribution guidelines.
- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js
features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
- [Fumadocs](https://fumadocs.dev) - learn about Fumadocs
55 changes: 0 additions & 55 deletions docs/api/authentication.mdx

This file was deleted.

119 changes: 0 additions & 119 deletions docs/api/generation.mdx

This file was deleted.

Loading