@cosla/sensemaking-report-ui
v0.1.2
Published
Lightweight standalone HTML report builder without Angular.
Keywords
Readme
report_ui
Lightweight report builder that generates a standalone report.html. This is based off the @cosla/sensemaking-web-uisen package but does not require Angular.
CLI usage
npx sensemaking-report-ui inline \
--topics ./input/topic-stats.json \
--summary ./input/summary.json \
--comments ./input/comments.json \
--metadata ./input/metadata.json \
--reportTitle "My Report" \
--outputDir ./output \
--outputFile report.htmlYou can also run from this workspace directly:
npm run build -- inline --inputDir ./fixtures/happy-path --outputDir ./outputSupported options
--topics: path totopic-stats.json(default:<inputDir>/topic-stats.json)--summary: path tosummary.json(default:<inputDir>/summary.json)--comments: path tocomments.json(default:<inputDir>/comments.json)--metadata: path tometadata.json(default:<inputDir>/metadata.json)--reportTitle: optional title override (falls back to metadata title)--inputDir: base input directory (default:./input)--outputDir: output directory (default:./output)--outputFile: filename or path for final html (default:report.html)
Fixtures and smoke tests
Fixtures are in fixtures/:
happy-pathempty-datasetmissing-field
Run smoke checks:
npm run smokeThis validates:
- successful builds for
happy-pathandempty-dataset(output undersmoke-output/<fixture>/report.html), - output HTML includes the
About this reportsection marker, missing-fieldfails with a clear validation error (topics string).
Parity checklist against Angular standalone report
- [x] Single-file standalone HTML output (CSS, JS, and viz assets inlined).
- [x] Core report sections:
- About this report (summary copy, alignment definitions, metrics)
- Conversation overview (
topics-overviewchart) - Participant alignment (high / low / uncertainty toggles)
- Topics identified badge and per-topic cards (breakdown, chart, subtopic accordions)
- Subtopic panels (breakdown, themes, high / low / uncertainty statement groups, view-all)
- [x] Charts via inlined
@cosla/sensemaker-visualizations(sensemaker-chart):topics-overviewon conversation overviewtopic-alignmentwith Groupings / Statements (solid/waffle) per topic
- [x] Interaction baseline:
- Side nav (
details/summary) with topic and subtopic links - In-page anchor scroll (overview, topics, subtopics)
- Share dialog and copy link
- Statement card tooltips (including inside the statements dialog)
- Centered statements dialog for “View all statements” (grouped like the Angular drawer)
- Side nav (
- [~] Visual style: lightweight CSS approximating layout and colors; not full Angular Material parity (typography, icons, breakdown widgets, etc.).
- [~] Threshold / help microcopy: main section copy and tooltips match Angular; minor gaps may remain (e.g. per-section share buttons, overview breakdown icons).
Publishing notes
This package is structured for npm publishing:
- CLI exposed via
binassensemaking-report-ui. - Runtime dependency on
@cosla/sensemaker-visualizations(UMD + CSS copied in at build time). fileswhitelist includes only runtime artifacts, fixtures, and docs.- Breaking input-contract changes should use semver major bumps.
