eziwiki

MIT
Platform
Web
Licence
MIT Open source
eziwiki

eziwiki is a wiki and documentation generator that turns a folder of Markdown files into a fast static site. Each file becomes a page, each directory a section, and the build emits plain HTML — no database, no admin panel, no server to keep running. It is written in TypeScript on Next.js, with the Markdown parsed and highlighted at build time, so none of that machinery ships to the reader’s browser.

Markdown in, static files out

  • A Markdown file dropped into content/ is published on the next build, and its directory becomes the section it appears under.
  • Frontmatter sets the sidebar label, description, sort order, icon, tags, aliases and a per-page social image; a _meta.json does the same for a whole directory.
  • Navigation is discovered automatically, so the configuration only needs to say anything when you want to control naming or ordering.
  • Pages are addressed by their readable content path by default; a hash-based URL strategy is available for sites that need their old opaque links to keep working.
  • Built with Node.js 22.13 or newer and deployed by copying the generated out/ directory to any static host, including Vercel, Netlify and GitHub Pages.

Search and navigation

  • Full-text search over page titles, headings and body text, opened with Ctrl K, running entirely in the browser with no search server or third-party service.
  • Results link to the matching section rather than the top of the page, and the index is only downloaded once someone searches.
  • Korean, Japanese and Chinese content is indexed by character bigrams, so a query that matches part of a compound word or carries a grammatical ending still finds the page.
  • An automatic contents rail lists every h2 to h4 heading on wide screens and highlights the section being read; each heading also carries a link to itself.
  • Tags give a file a second arrangement: every tag gets a page at /tags/<name>, and a hidden page stays out of the sidebar while remaining linkable.

Wiki links, backlinks and graph views

  • Wiki-style links resolve by file name, by page title or by full path, with an optional anchor and label, so a page can be linked before its location is settled.
  • Resting on a wiki link shows a card with the target’s title and opening lines, written into the page at build time rather than fetched.
  • A shorthand that matches several pages is refused rather than guessed, and a link to a page that does not exist renders as visibly broken instead of dead.
  • Backlinks and graph views show how pages connect, and /graph also lists the pages that are linked to but not yet written.
  • A link checker reports broken links and anchors, plus the two problems a checker usually misses: orphans with nothing linking to them and dead ends with no links out.

Embeds, diagrams and documents

  • A leading ! embeds rather than links: an image from public/, a single section of another page, or a whole page as transclusion, boxed and linked back to where it is maintained.
  • Mermaid fences are drawn during the build and arrive as SVG, so diagrams follow the site theme and stay visible to crawlers without a renderer in the browser.
  • A PDF placed on its own line shows its first page as an image and opens into a viewer with zoom, download and full screen; the PDF parser is loaded only when a document is actually opened.

Built to be published

  • Every page carries a canonical URL, Open Graph and Twitter cards, Article structured data and a breadcrumb trail matching the one on screen.
  • sitemap.xml dates each page from the commit that last changed it, instead of stamping every page with the deploy time, and llms.txt gives answer engines the site name and a one-line description of every page in reading order.
  • The project is MIT licensed, pre-1.0 in version, and is developed openly on GitHub, where the demo wiki also documents every feature it ships.

Explore More Categories

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.