Files
nym/documentation
mfahampshire b6df383584 Max/docs theme rework (#6593)
* Rawer landing page
- Angular, clean docs styling inspired by Oxide
- zero all border-radius globally (kill rounded corners)
- sharp code blocks with subtle border
- callouts: left-border accent instead of rounded pill
- clean table grid lines, sharp search box and MUI buttons
- tighter heading letter-spacing (-0.02em)
- flat left-border sidebar active item instead of background blob

* Add JetBrains Mono for headings/sidebar, push Oxide styling further
- import JetBrains Mono via Google Fonts
- apply mono font to headings, sidebar, nav bar, search, table headers
- darken background (#181C1E), muted body text, h2 bottom border
- subtle background tint on active sidebar item
- inline code: background-only (no border), monospace table headers
- fix active sidebar item font size (scope separator label rule)

* Rework docs landing page: hero, ASCII cards, SDKs, get started
- add hero section with subtitle covering all doc areas
- replace PNG vector illustrations with ASCII art in primary green
- add SDKs section with Rust and TypeScript links
- add get started section: What is the Mixnet, Send a message, Run a node
- add footer links to GitHub and Matrix
- fix nav dropdown font (button + ul selectors)
- add landing card hover style

* Self-host JetBrains Mono, refine landing page
- replace Google Fonts import with local @font-face (woff2)
- add font files + OFL license to public/fonts/
- remove redundant "Nym Docs" hero heading (already in nav)
- drop quick-links pills section
- fix SDK box borders (negative margin collapse)
- rewrite footer as simple link row (GitHub, Matrix, nym.com)

* Light mode styling, dark-mode diagram invert, click-to-expand images
- add full light mode CSS: pale grey bg, darker green links, mono fonts
- invert diagram images in dark mode with mix-blend-mode: lighten
- add click-to-expand overlay for content images
- revert mermaid diagrams back to original PNGs

* Fix Lychee config for fonts

* Make light mode green darker

* Animate landing page ASCII art, remove architecture diagram

- Network: animated packet traversal through gw_e → M1/M2/M3 → gw_ex
  with diagonal cross-connections showing mixing paths
- Developers: typewriter effect with blinking cursor
- Operators: looping progress bar with continuously incrementing packet count
- APIs: staged line-by-line response reveal
- Remove architecture overview PNG from network/architecture.mdx

* Small copy change to SDK headers

* Fix links
2026-03-24 15:08:07 +00:00
..
2026-01-19 13:19:45 +00:00
2026-03-24 15:08:07 +00:00
2024-12-11 16:30:17 +00:00
2026-03-04 16:01:51 +00:00

Nym Docs v2

This is v2 of the nym docs, condensed from various mdbooks projects that we had previously.

These docs are hosted at nym.com/docs.

Doc projects

docs/pages/ contains several subdirs, each hosting a subsection of the docs:

  • network contains key concepts, cryptosystems, architecture.
  • developers contains key concepts for developers, required architecture, and Rust/Typescript SDK docs.
  • operators contains node setup and maintenance guides.

Local development

Dependencies

Our prebuild script relies on the following:

Otherwise make sure to have node installed.

We use lychee to check for broken links. Install via your package manager or cargo install lychee, then run:

lychee documentation/docs/ --config lychee.toml --root-dir documentation/docs/pages/

Serve Local (Hot Reload)

pnpm i
pnpm run dev

Open http://localhost:3000.

Build

pnpm run build

Contribution

  • If you wish to add to the documentation please create a PR against this repo, with a patch against develop.

Scripts

  • generate:commands: generates command output files for clients and binaries. This script runs the autodoc rust binary, moves the files to their required places, and then if there is an update, commits them to git. We commit the files as our remote deployments pull from a git repo. Only run this script on branches where you want to push e.g. the build info of a binary to production docs; it will build the monorepo binaries and use their command output for the produced markdown files.
  • generate:tables: generates various information tables containing some repo-wide variables and information about ISPs.

Autodoc

autodoc is a script that generates markdown files containing commands and their output (both command and --help output). For the moment the binaries and their commands are manually configured in the script.

Only run this script on branches where you want to push e.g. the build info of a binary to production docs; it will build the monorepo binaries and use their command output for the produced markdown files.

CI/CD

  • Link checking: Runs on every push to documentation/docs/ via .github/workflows/ci-docs-linkcheck.yml

SEO & Structured Data

Frontmatter

Every .mdx page supports frontmatter fields that control meta tags, Open Graph, and JSON-LD schema:

---
title: "Page Title for Search Engines"
description: "Unique meta description for this page."
schemaType: "TechArticle"    # TechArticle (default), HowTo, or FAQPage
section: "Operators"          # Operators, Developers, Network, APIs
lastUpdated: "2026-02-11"    # Feeds dateModified schema
breadcrumbLabel: "Custom Label" # Optional, overrides URL slug in breadcrumbs
---

Sitemap

npx next-sitemap

Outputs sitemap.xml and robots.txt to /public.

Environment Variable

Set in production:

NEXT_PUBLIC_SITE_URL=https://nym.com/docs

Schema Types

Type Use When
TechArticle Reference docs, config guides, overviews (default)
HowTo Step-by-step install/setup guides
FAQPage Question-answer pages

This is a monorepo and components that make up Nym as a system are licensed individually, so for accurate information, please check individual files.

As a general approach, licensing is as follows this pattern: