Compose rich, interactive reports with Editor.js and Luzmo analytics components: mix and match charts, key metrics, and text blocks to build polished data stories.


Compose rich, interactive reports with Editor.js and Luzmo analytics components: mix and match charts, key metrics, and text blocks to build polished data stories.
git clone <repo-url>
cd reporting-editorjs-builder
npm install
.env file from the example:cp .env.example .env
.env.| Command | Description |
|---|---|
npm run dev |
Start the Vite dev server |
npm run build |
Type-check and build for production |
npm run preview |
Preview the production build |
npm run lint |
Lint source files with oxlint |
npm run lint:fix |
Auto-fix lint issues |
npm run format |
Format source files with oxfmt |
npm run format:check |
Check formatting without writing |
src/
├── block-tools/ # Custom Editor.js block tools
│ ├── button.ts # Link button block
│ ├── callout.ts # Callout block (info/warning/danger)
│ ├── header.ts # Heading block (H2–H4)
│ ├── luzmo-key-metrics.ts # Key metrics summary cards
│ └── luzmo-viz-item.ts # Chart/visualization block
├── styles/ # SCSS partials
├── utils/ # Shared utilities (filter transforms)
├── blocks-data.ts # Default block data
├── data.ts # Dataset and column definitions
├── main.ts # App entry point & Editor.js init
└── report.ts # Report config and localStorage persistence
Take your data products to the next level with Luzmo.