Instalação
Um único pacote, cinco entradas. Instale o core e adicione peers só quando o recurso correspondente for usado.
1. Instale o pacote
O core não traz PDF, XLSX nem UI — cada recurso puxa seu peer sob demanda.
npm i cosmemilton-report2. Peers opcionais
Instale apenas os que o seu uso exige.
| Peer | Para quê | Quando instalar |
|---|---|---|
@react-pdf/renderer | Geração de PDF e o preview ao vivo do documento | Ao usar a entrada /pdf ou componentes de /client como CmReportPdfPreview |
exceljs | Exportação em XLSX (planilha real, com formatação) | Ao usar a entrada /xlsx |
cosmemilton-ui + @iconify/react | Editor de layout, designer e preview em tela | Ao usar componentes de /client como CmReportLayoutEditor e CmReportDesigner |
next | Nada em runtime — não é uma dependência real do pacote | A entrada /next usa apenas Response e Request padrão da Web, sem depender do framework |
Linhas por página:1-4 de 4 Página 1 de 1 | ||
Uso só-servidor
Route handlers que só exportam arquivos não precisam de nenhum peer de UI.
Um route handler não precisa de UI
Se o único objetivo é servir /api/relatorios/[slug].pdf ou .xlsx, importe apenas cosmemilton-report, cosmemilton-report/pdf (ou /xlsx) e cosmemilton-report/next. cosmemilton-ui e @iconify/react só entram quando alguma tela renderiza CmReportPdfPreview, CmReportLayoutEditor ou CmReportDesigner.
Entradas do pacote
Cada import path carrega só o que precisa — o core nunca puxa PDF, XLSX ou UI de arraste.
| Entry | Conteúdo | Peer |
|---|---|---|
cosmemilton-report | defineReport, resolveReport, dataset, formatadores, serializers CSV/TSV/JSON e registry | Nenhum |
cosmemilton-report/pdf | createReportDocument, renderReportToBuffer/Stream e registerReportFonts | @react-pdf/renderer |
cosmemilton-report/xlsx | exportReportToXlsx | exceljs |
cosmemilton-report/client | Hooks (useReportExport, useReportViews) e componentes (CmReportLayoutEditor, CmReportPdfPreview, CmReportDesigner) | cosmemilton-ui + @iconify/react (e @react-pdf/renderer para o preview em tela) |
cosmemilton-report/next | renderReportResponse e reportResponse, para route handlers do App Router | Nenhum |
Linhas por página:1-5 de 5 Página 1 de 1 | ||
Próximo passo
Entenda como definição, colunas e formatos se encaixam antes de escrever o primeiro relatório.
Ver conceitosTestar agora
Cole seus próprios dados e veja o PDF, o editor e as exportações funcionando ao vivo.
Abrir playground