Open-source, static-first web app that renders an interactive "tech tree" of law and ethics from curated JSON data in this repository. See docs/PRD.md for product requirements and docs/TRD.md for the technical architecture.
npm install
npm run compile-graph # generates public/data/* from data/
npm run dev # http://localhost:3000Before the first dev server run, generate public/data/graph.json and related files with npm run compile-graph (or run a full npm run build).
| Script | Description |
|---|---|
npm run validate |
JSON Schema, DAG, references, pros/cons (validator enforces schemas in data/schema/) |
npm run compile-graph |
Build graph.json, search index, axiom metadata from data/ |
npm run build |
validate → compile-graph → Next.js static export (out/) |
npm run lint |
Biome check (lint + format check) |
npm run format |
Biome check --write (safe fixes, format, organize imports) |
npm run test |
Vitest unit tests |
npm run test:e2e |
Playwright (starts dev server; runs compile-graph first) |
- Copy
.env.exampleto.env.localand setNEXT_PUBLIC_GITHUB_REPOtoowner/reposo in-app "Propose edit" links point at the correct GitHub location.
- Code in this repository: MIT.
- EthosMap editorial content in
data/(descriptions, arguments, graph structure): CC BY-SA 4.0. Statutory and case text may be public domain or governed by their own terms; EthosMap's original annotations are CC BY-SA 4.0.
data/nodes/*.json— one file per nodedata/edges/edges.json— dependency edges (DAG)data/axiom-sets/*.json— curated worldview rootsdata/jurisdictions/*.json— jurisdiction metadatadata/schema/*.json— JSON Schemas used bynpm run validate