Saltar para o conteúdo
Blume
Esc
↑↓navegar↵abrir⌘Jpré-visualizar

Sanity

Puxe documentos de um dataset do Sanity com a fonte sanity() — uma consulta GROQ seleciona os documentos, e os corpos em Portable Text deles viram Markdown.

O adaptador nativo sanity() executa uma consulta GROQ e mapeia os campos de cada documento para o frontmatter e o corpo em Portable Text para Markdown. O adaptador declara @sanity/client como dependência de runtime — uma peer opcional, então instale-a só se você usar essa fonte.

import { defineConfig } from "blume";
import { filesystem, sanity } from "blume/sources";

export default defineConfig({
  content: {
    sources: [
      filesystem({ root: "docs" }),
      sanity({
        prefix: "guides",
        projectId: "abc123",
        dataset: "production",
        query: `*[_type == "guide"]`,
        // Field paths default to title / slug.current / body / _updatedAt
        fields: { slug: "slug.current", body: "content" },
      }),
    ],
  },
});

Um token de leitura para um dataset privado vem da variável de ambiente SANITY_TOKEN, que o adaptador declara. Tipos de bloco personalizados do Portable Text são mapeados para componentes do Blume pela opção serializers do engine, disponível quando você constrói sanitySource diretamente e o passa para custom(). Definir serializers faz com que as páginas da fonte sejam escritas como MDX, então um componente ou diretiva retornado por um serializer é renderizado.

Última atualização a 28 de setembro de 2026

Esta página foi útil?