Reading the code

You never have to read the code. If you are curious, ask Claude to walk you through a part of it. This is the map.

PartWhereWhat it does
The report-kitapp/src/components/report-kit/Runs the reports' SQL and draws the blocks
The report formatreport-kit/define.tsx, define-page.tsxWhat a report.tsx holds: defineReport, query and the page's options
The blocksreport-kit/blocks.tsx, visual-blocks.tsx, driver-tree.tsxHow each chart, table and tile is drawn
The dialogreport-kit/info.tsxThe "(i)" dialogs
The connectorsapp/src/connectors/One folder per database
The Reports moduleapp/src/blocks/reports/The report list and its pages
The wikiapp/src/wiki/How these pages are read and drawn
The shared UIapp/src/components/ui/Buttons, tables, dialogs every screen uses

Good questions to ask:

  • "How does the app turn report.tsx into a page?"
  • "Where does the date filter cut the rows?"
  • "What happens when I open a report for the first time today?"

Content before code

If a report needs something the components cannot do, ask first whether a prop does it. Most of the time one does. When the kit's code does change, it is for every report, not one: a new prop or a new component, with a page in Components.