Welcome to eziwiki πŸ‘‹

eziwiki

eziwiki is a wiki and documentation site generator built on Next.js 14, inspired by Notion and Obsidian. Write Markdown, get a fast static site.

Start here

bash
npx create-eziwiki my-docs
cd my-docs
npm install
npm run dev

Open http://localhost:3000. See Quick Start for the walkthrough.

What you get

Pages from files. Drop a .md file into content/ and it is published. Folders become sidebar sections. There is no registration step and no navigation array to maintain β€” this very site has none. See Navigation Configuration.

Search across titles, headings, and body text, with a ⌘K palette. Results link straight to the matching section. It runs entirely in the browser against a static index, so it works on any host β€” and handles Korean, Japanese, and Chinese properly.

Contents rail on every page, with the section you are reading highlighted as you scroll.

Wiki links. Write [[quick-start]] and it resolves by path, file name, or title. Links that go nowhere are shown as broken instead of pretending to work.

Backlinks and a graph view. Every page lists what points at it, and the graph shows how the whole site connects.

Build-time rendering. Markdown is parsed, highlighted with Shiki, and link-resolved during the build, so no Markdown parser or highlighter is sent to the browser. Content pages load about 88 kB of JavaScript.

And the rest: Dark Mode, maths via KaTeX, GitHub Flavored Markdown, readable or hashed URLs, Hidden Pages, SEO metadata, and a sitemap.

Good for

  • Documentation sites β€” API references, user guides, technical docs
  • Personal wikis β€” a second brain you actually own
  • Team knowledge bases β€” internal docs that stay searchable
  • Learning notes β€” study material with real cross-links

Configuration, in full

typescript
export const payload: Payload = {
  global: {
    title: 'My Wiki',
    description: 'My personal knowledge base',
  },
};

That is a complete site. Everything else β€” colours, URL style, SEO, manual Navigation Configuration β€” is optional. See Payload Configuration.

Deploying

npm run build produces a fully static site in out/. Put it anywhere: any static host, Vercel, or GitHub Pages.

Next