pmndrs docs
Pesquise e leia a documentação e os exemplos de react-three-fiber, drei, zustand, jotai e as outras bibliotecas pmndrs a partir do seu agente.
Servidor MCP hospedado
npx add-mcp 'https://docs.pmnd.rs/api/mcp'Instala no Claude Code, Codex, Cursor e outros
Documentação
docs/getting-started/introduction.mdx
Uso
Leitura
$ npx @pmndrs/docs # the reader: every library, every page
$ npx @pmndrs/docs drei # straight into one
$ npx @pmndrs/docs drei/performances/instances # straight to a page
$ npx @pmndrs/docs search instanced mesh # one result per line, on stdout
↑↓ controla o painel que está em foco — a lista de páginas ou a própria página. ⏎ ou ⇥
transfere o foco, esc ou ⇥ devolve o foco, e a borda acesa indica onde ele está — a
roda move o painel para o qual aponta, com foco ou sem. ←→ muda de biblioteca, b recolhe a barra lateral, / pesquisa em todas as bibliotecas de uma vez, o abre a
página em um navegador, q sai. Links dentro de uma página são clicáveis onde o terminal
honra hiperlinks OSC 8 — iTerm2, Ghostty, WezTerm, Kitty, Windows Terminal.
search é o que um pipe ou um agente pode usar: os resultados são lidos em {lib} {path} - {title}, o
formato que o servidor MCP publica em seu índice, e nada encontrado encerra com código 1.
--in drei restringe a uma biblioteca, --in drei/performances/instances às linhas correspondentes de
uma página.
Ambos leem o llms-full.txt publicado de cada biblioteca, armazenado em cache por uma hora em
~/.cache/pmndrs-docs — --refresh busca novamente. Fora de um terminal, um destino de página é
gravado na saída padrão, então npx @pmndrs/docs drei/performances/instances | glow funciona.
Build
$ cat foo.mdx | npx @pmndrs/docs@latest build # one HTML fragment, on stdout
$ npx @pmndrs/docs@latest build docs out # one .html per .mdx, assets alongside
$ npx @pmndrs/docs@latest build docs out --format website # the whole website, statically exported
--format fragment (o padrão) não precisa de nada além de node — sem next build, sem bundler. Um
fragmento é o MDX compilado e nada mais: sem layout, sem folha de estilo, sem script. Diagramas
Mermaid permanecem como blocos cercados, e o Sandpack mostra seu código sem o editor.
build --help lista todas as opções do site — --libname, --base-path, --icon, --theme-*… Cada
uma recorre à variável de ambiente à qual mapeia, as mesmas que a
configuração documenta.
Pré-visualize uma pasta de MDX, servida
$ curl -sL https://raw.githubusercontent.com/pmndrs/docs/refs/heads/main/preview.sh | \
MDX="docs" \
ICON="🥑" \
sh
Compila o site e o serve — junto com a própria pasta MDX, para que os recursos relativos
sejam resolvidos enquanto você edita. Qualquer opção da
configuração entra da mesma forma, e
VERSION escolhe uma versão publicada da CLI.
Lançamento
Todo push para main reimplanta docs.pmnd.rs via ci.yml — sem changeset necessário para isso.
Adicione um (pnpm changeset) apenas quando consumidores downstream que fixam pmndrs/docs/.github/workflows/build.yml@v4 ou @pmndrs/docs@4 devem receber a alteração. Ele incrementa package.json, publica no npm e marca vX.Y.Z + vX — então @v4 resolve para a versão mais recente.
Resumo — ajuste apenas no site: pule. Qualquer coisa que os consumidores vejam (fluxo de trabalho, comportamento de build, modelos): adicione um.
Teste
Testes visuais são realizados na nuvem, por meio de chromatic.yml.
Você também pode reproduzir localmente:
$ npx playwright test --update-snapshots
$ npx chromatic --playwright --project-token $CHROMATIC_PROJECT_TOKEN
