From claude-docs-prompts
Guides building and maintaining Cyfrin Next.js documentation sites using MDX and Tailwind CSS, covering structure, required components like PrevNextNav, PageActions, edit buttons, and link checking.
npx claudepluginhub cyfrin/claude-docs-prompts --plugin claude-docs-promptsThis skill uses the workspace's default tool permissions.
This is a Next.js documentation site built with MDX and Tailwind CSS.
Creates Nextra documentation sites with Next.js, MDX, navigation via _meta.json, search, dark mode, and components like Callouts, Tabs, Cards. Use for technical docs, API refs, and project structures.
Builds and maintains Mintlify documentation sites by creating MDX pages, configuring docs.json navigation and themes, adding components, and setting up API references.
Builds zero-config documentation sites with Undocs CLI and theme for UnJS projects using Nuxt, Nuxt Content, and Nuxt UI. Covers setup, CLI commands, config, components, and content transformations.
Share bugs, ideas, or general feedback.
This is a Next.js documentation site built with MDX and Tailwind CSS.
Before making any changes, read .docs-config.json in the repo root for repo-specific values (GitHub repo, branch, production URL, site title, site description). Use these values anywhere the docs reference themselves.
For repo-specific agent instructions that supplement this file, check .claude/CLAUDE.md if it exists.
app/ Next.js App Router pages and layouts
components/ React components (UI, navigation, page actions)
config/ Site configuration files (docs.json nav tree, metadata)
content/ MDX documentation pages organized by section
lib/ Utility functions (markdown processing, search, nav helpers)
scripts/ Build and validation scripts (link checker, llms.txt, search index)
public/ Static assets (images, fonts, generated files like llms.txt)
Every docs site using this template must implement these seven features.
A component that renders previous/next navigation links at the bottom of every docs page.
config/docs.jsonA dropdown at the top of every docs page with four actions:
https://chatgpt.com/?q= encoding a prompt asking ChatGPT to read the page, using the page's production URL from .docs-config.jsonhttps://claude.ai/new?q=Read%20this%20documentation%20page%20and%20help%20me%20understand%20it%3A%0A%0Ahttps%3A%2F%2Fdocs.cyfrin.io%2Fupdraft%2Fwhat-is-a-cyfrin-updraft-professional-certification
The URL encodes a prompt asking Claude to read the page, using the page's production URL from .docs-config.json.A button/link at the top of every docs page that opens a new tab to the GitHub edit URL for that page's source file. Constructs the URL from github_repo and github_branch in .docs-config.json:
https://github.com/{github_repo}/edit/{github_branch}/content/{path-to-file}
A script at scripts/check-links.ts that validates all internal links in the MDX content.
pnpm check-links (or equivalent package.json script)A script at scripts/build-llms-txt.ts that generates two files in public/:
llms.txt — a concise index of all pages with titles and URLs, following the llms.txt specllms-full.txt — the full concatenated content of all pages in plain textRuns as a prebuild script in package.json so the files are always fresh at deploy time. Uses production_url from .docs-config.json for absolute URLs, but relative URLs are good too.
Every docs project must include a README.md in the repo root that explains how to run the docs locally. At minimum it should cover:
pnpm install or equivalent)pnpm dev or equivalent) and the local URLpnpm build) and how to preview the production buildA script at scripts/build-search-index.ts that builds a client-side search index from the MDX content.
package.jsonpublic/ (or a location the search component reads from)Follow the Diataxis framework as a guide (not a strict rulebook) for organizing documentation. Docs should aim to include:
content/. Use standard Markdown with JSX components where needed.'use client' directive only to components that use browser APIs, event handlers, or React hooks like useState/useEffect. Server components are the default.lucide-react for all icons. Do not add other icon libraries.actions/checkout@<sha> # vX.Y.Z. Use persist-credentials: false on checkout.package.json (no ^ or ~ prefixes).scripts/ and are written in TypeScript.