cosmemilton-report
Relatórios declarativos para Next.js
Defina uma vez, exporte em qualquer formato. O cosmemilton-report une definição em código, customização pelo usuário e export em PDF, CSV, XLSX, JSON e TSV.
PDF de verdade
Gerado com @react-pdf/renderer no servidor ou no navegador, com preview ao vivo.
CSV, XLSX, JSON e TSV
Os mesmos dados e a mesma definição alimentam todos os formatos.
Editor de layout
O usuário final mostra, oculta e reordena colunas — sem deploy.
Designer em runtime
Relatórios novos criados na tela, a partir de fontes de dados registradas.
Um relatório em 12 linhas
A definição é um objeto puro: colunas, formatos e totalizadores. O resto — PDF, planilha, editor — vem de graça.
import { defineReport } from "cosmemilton-report";
export const relatorioVendas = defineReport<Venda>({
slug: "vendas",
name: "Relatório de Vendas",
columns: [
{ key: "data", header: "Data", format: "date", width: "15%" },
{ key: "cliente", header: "Cliente", width: "55%" },
{ key: "total", header: "Total", format: "currency", width: "30%" },
],
summary: [{ label: "Total geral", sourceColumn: "total", operation: "sum", format: "currency" }],
});