Snippet Contract
Esta página é o contrato canônico para Snippets na Corvex Store V2.Um Snippet é um componente React reutilizável usado dentro de sections. Não é registrado em
theme.json e não aparece na paleta do Editor como section.
MUST — arquivos
{id} SHOULD ser kebab-case (product-card, price-badge).
MUST — export
snippet.jsx MUST exportar default um componente React.
MUST — import no build
Sections MUST importar via alias resolvido no build:@corvex/snippets/{id} mapeia a snippets/{id}/snippet.jsx.
Equivalente no código do tema: @corvex/theme-sdk para SDK; snippets usam @corvex/snippets/*.
Props
- Sem contrato global — o autor do snippet define props.
- SHOULD documentar props no JSDoc ou no guia da section que consome.
- Dados MUST vir de
data,settingsou hooks do Theme SDK — não inventar fetch ad hoc sem SDK.
MUST NOT
- Não listar snippet em
theme.json→sectionsoublocks. - Snippets são importados em JSX —
import X from '@corvex/snippets/{id}'. - SHOULD NOT conter lógica de página inteira — use Section para composição no Editor.
Snippet vs Section
Exemplo mínimo válido
snippets/greeting/snippet.jsx:
Veja também
- Section Contract
- Product Contract — objeto típico em snippets de card