diff --git a/README.md b/README.md
index e8fc918..ff29d41 100644
--- a/README.md
+++ b/README.md
@@ -14,6 +14,10 @@ The reason it exists: ERC passes boards that don't work. Your EDA tool has no id
## How it works
+
+
+
+
1. **Parse** the BOM (CSV/XLSX) and netlist (PADS-PCB `.asc` or EDIF 2.0.0 `.edn` — exportable from KiCad, Altium, OrCAD, Allegro, Xpedition, EasyEDA, Eagle) into a queryable bipartite graph of components and nets.
2. **Extract** pin tables and specs from the PDFs. Large datasheets are trimmed to the relevant pages first, and every extraction is cached in a shared library, so a given part number is only ever processed once.
3. **Review** each IC in isolation. The model gets the trimmed datasheet plus that IC's circuit neighborhood, can query the graph (`find_connected_components`, `get_net_for_pin`, `get_pintable`) and pull pages from a *connected* part's datasheet when a finding spans an interface. It files findings with severity, reasoning, and page citations.
diff --git a/docs/how-it-works.svg b/docs/how-it-works.svg
new file mode 100644
index 0000000..580e25a
--- /dev/null
+++ b/docs/how-it-works.svg
@@ -0,0 +1,121 @@
+