Fumadocs

Static Export

Enable static export with Fumadocs

Overview

Fumadocs is fully compatible with Next.js static export, allowing you to export the app as a static HTML site without a Node.js server.

next.config.mjs
/**
 * @type {import('next').NextConfig}
 */
const nextConfig = {
  output: 'export',
};

Cloud Solutions

Since the search functionality is powered by remote servers, static export works without configuration.

The default search config of Orama Search uses route handlers, which is not supported by static export.

Instead, you can build the search indexes statically following the Orama Search guide. And enable static mode on search client from Root Provider:

app/layout.tsx
import { RootProvider } from 'fumadocs-ui/root-provider';
 
<RootProvider
  search={{
    options: {
      type: 'static',
    },
  }}
>
  {children}
</RootProvider>;

This allows the route handler to be statically cached into a single file, and search will be computed on browser instead.

Edit on GitHub

Last updated on

On this page