Skip to content
Development
Skill

/web-meta-framework-docusaurus

Docusaurus 3.x documentation framework — site configuration, docs/blog plugins, sidebars, versioning, MDX, swizzling, and deployment

From plugin
skills
26200 skills

Claude Code

$ npx -y skills add agents-inc/skills --skill web-meta-framework-docusaurus --agent claude-code

SKILL.md

web-meta-framework-docusaurus.SKILL.md
name: web-meta-framework-docusaurus
description: Docusaurus 3.x documentation framework — site configuration, docs/blog plugins, sidebars, versioning, MDX, swizzling, and deployment

Docusaurus Patterns

> **Quick Guide:** Docusaurus 3.x is a React-powered static site generator for documentation. Everything > is configured in `docusaurus.config.js` (ESM), and `@docusaurus/preset-classic` bundles docs, blog, > pages, sitemap and theme in one entry. Sidebars are autogenerated from the filesystem, ordered by > `sidebar_position` front matter and `_category_.json`. Theme components are customised by swizzling. > Content is MDX v3, which is stricter than Markdown. `docusaurus docs:version` snapshots the whole > `docs/` tree, and > `docusaurus build` emits a static `build/` directory.

**Detailed Resources:**

  • [examples/core.md](examples/core.md) — full config, autogenerated and manual sidebars, multi-instance docs, docs-only mode, custom pages, navbar item types
  • [examples/content.md](examples/content.md) — MDX strictness, admonitions, tabs, code blocks, assets, blog plugin and authors, remark/rehype, doc links
  • [examples/customization.md](examples/customization.md) — swizzle safety, Infima CSS variables, versioning, i18n, search, deployment, Mermaid
  • [reference.md](reference.md) — CLI commands, front matter fields, plugin and theme option tables, import aliases

---

<critical_requirements>

Before writing Docusaurus code

**Keep all site configuration in `docusaurus.config.js` (or `.ts`).** It is the single entry point the build reads, and config split across files has no mechanism to be merged.

**Start from `@docusaurus/preset-classic`.** It wires docs, blog, pages, sitemap and the theme together; decompose into individual plugins only when you need something the preset cannot express, such as a second docs instance.

**Swizzle with `--wrap` unless the change genuinely needs the component's internals.** A wrapped component keeps receiving upstream fixes; an ejected one is a snapshot you now own.

**Order autogenerated sidebars with `sidebar_position` front matter and `_category_.json`.** The filesystem drives routing and sidebar structure, so ordering stays next to the content it orders.

**Give each doc set its own plugin instance when it needs its own versioning.** One instance holding both versioned and unversioned docs has no way to keep them apart.

</critical_requirements>

---

**Auto-detection:** Docusaurus, docusaurus.config.js, docusaurus.config.ts, @docusaurus/preset-classic, @docusaurus/core, sidebars.js, docs:version, docusaurus build, docusaurus start, docusaurus deploy, docusaurus swizzle, MDX, _category_.json, sidebar_position, @site, @theme, @theme-original, plugin-content-docs, plugin-content-blog

**Applies to:**

  • `docusaurus.config.js` — site metadata, presets, plugins, `themeConfig`, navbar, footer
  • Sidebars: autogenerated, manual, multiple, and custom item generators
  • Docs versioning and version banners
  • Theme customization via swizzling and Infima CSS variables
  • MDX content: admonitions, tabs, code block features, assets, heading anchors
  • Custom pages in `src/pages/`, in React or MDX
  • Blog plugin configuration and `authors.yml`
  • Search wiring, i18n, and deploying the static build

**Handled elsewhere:**

  • React component authoring itself — this skill covers the Docusaurus APIs a page or swizzled component calls, not the component model underneath.
  • Request-time behaviour — `docusaurus build` emits static files, so anything needing a server at request time lives outside the site.
  • Content sourced from a CMS or database — the plugins read files from disk at build time.
  • The visual language beyond the Infima variables the theme exposes — those variables are the seam, and what you set them to is a design decision.
  • The prose itself — this skill settles how a doc is wired into the site, not what it says.

---

<philosophy>

Docusaurus is an **opinionated documentation framework that trades flexibility for convention**. It decides routing (filesystem), content format (MDX) and structure (docs, blog, pages) so the work left is writing.

1. **Convention over configuration** — the filesystem drives routing and sidebar generation. Fighting it is fighting the framework. 2. **Preset first** — `preset-classic` is the common plugin set already wired together; individual plugins are for setups it cannot express. 3. **Content is data** — front matter is the metadata layer. `sidebar_position`, `slug`, `tags` and `custom_edit_url` live in the document rather than in a separate index. 4. **Swizzle rather than fork** — wrapping preserves upstream compatibility; ejecting produces a snapshot with your name on it. 5. **Static output** — there is no server runtime, no request-time rendering and no API routes.

</philosophy>

---

<decision_framework>

**Which sidebar strategy?** Autogenerated, ordered by `sidebar_position` and `_category_.json`, is right for almost everything — including large sites, as long as the sections map onto directories. A manual sidebar in `sidebars.js` earns its maintenance only when the navigation has to group documents the filesystem keeps apart, and the choice is not all-or-nothing: one sidebar array can hold an `autogenerated` item alongside hand-written entries. Independent doc sets (an API reference beside a guide) want separate plugin instances, each with its own sidebar, rather than either strategy stretched.

**Wrap, eject, or neither?** Adding content around a component is `--wrap`. Changing colours or spacing is neither — set the Infima CSS variables in `custom.css`. Changing internal logic means checking the component's safety level first: "Safe" makes ejecting acceptable, "Unsafe" means wrap or find another route, and "Forbidden" means the component is not swizzlable at all.

**Which content format?** A documentation article or blog post is `.md` or `.mdx` in `docs/` or `blog/`. A standalone page that is mo

Read more
@agents-inc
Ships withskills

The official skills marketplace for Agents Inc. 230+ skills covering everything from React and Prisma to Redis, ElevenLabs, and infrastructure tooling. Pick the skills that match your stack and install them via Claude Code. Need more control?

Stars on GitHub

Momentum

stars in total
26
Star history of agents-inc/skills on GitHub, a chart by star-history.com

Other skills on skills.

ai-infrastructure-litellm

ai-infrastructure-lite…

LiteLLM proxy server setup, TypeScript client patterns via OpenAI SDK, model routing, fallbacks, load balancing, spend tracking,…

@agents-inc@agents-incInstall Skill
ai-infrastructure-modal

ai-infrastructure-moda…

Serverless GPU compute platform for AI model deployment — web endpoints, GPU functions, model serving, and TypeScript client…

@agents-inc@agents-incInstall Skill
ai-infrastructure-ollama

ai-infrastructure-olla…

Local LLM inference with the Ollama JavaScript client -- chat, streaming, tool calling, vision, embeddings, structured output,…

@agents-inc@agents-incInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills10d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc12d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react1d252k
@facebook@facebookInstall Skill

Questions about web-meta-framework-docusaurus.

Which coding agents can use web-meta-framework-docusaurus?
web-meta-framework-docusaurus installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.