From 86a5f1466bb5485de4643a1014966bf53ebc0370 Mon Sep 17 00:00:00 2001 From: Ferraz Date: Sun, 6 Sep 2026 21:06:46 -0300 Subject: [PATCH] docs: refresh README with sensor controller example - Add a complete sensor-controller example and rendered schematic - Update branding assets and example generation tooling - Streamline installation, usage, and reference documentation --- README.md | 212 +++++++----------- docs/assets/sensor-controller.svg | 22 ++ .../wire-lang-lockup-horizontal-1040.png | Bin 16328 -> 19194 bytes .../wire-lang-lockup-horizontal-520.png | Bin 7353 -> 9036 bytes ...e-lang-lockup-horizontal-reversed-1040.png | Bin 13957 -> 16943 bytes ...re-lang-lockup-horizontal-reversed-520.png | Bin 6467 -> 8029 bytes .../wire-lang-lockup-horizontal-reversed.svg | 25 +-- .../assets/wire-lang-lockup-horizontal.svg | 24 +- examples/sensor-controller.wire | 33 +++ scripts/update-examples.mjs | 1 + 10 files changed, 159 insertions(+), 158 deletions(-) create mode 100644 docs/assets/sensor-controller.svg create mode 100644 examples/sensor-controller.wire diff --git a/README.md b/README.md index bf712ea..99519bc 100644 --- a/README.md +++ b/README.md @@ -18,49 +18,89 @@ Node version

-**Text-first electronic schematics.** Describe a circuit in a small declarative -language and render it as a clean, documentation-ready SVG. +Describe electronic schematics in text and render them as SVG. -## Why Wire Lang +## This is how you write -LLMs changed how we write software because code is text. Diagrams followed with tools like [Mermaid](https://github.com/mermaid-js/mermaid), giving AI a format it can easily generate, understand, and modify. +Name the components, declare their pins, and connect them with nets. +Here is an excerpt from a sensor controller with a button and status LED: -Electronic schematics are still stuck in GUI editors. - -Wire Lang brings schematics into the AI era with a text-based representation that enables real-time collaboration between engineers and AI. Instead of screenshots and proprietary files, schematics become something AI can reason about, generate, review, and improve. - -Wire Lang is the missing layer between AI and electronic schematics. +```wire +schematic + title "Sensor controller with status LED" -## Setup + // Declare a button and a green status LED. + component SW1 PushButton + component D1 LED color=green -```bash -npm install wire-lang + // Connect named pins to describe each electrical net. + net BTN: SW1.1, U2.BTN + net LED_OUT: U3.OUT, D1.A + // ... full circuit below ``` -Write a `.wire` file: +
+View the complete Wire Lang source ```wire schematic - title "LED current limiting circuit" + title "Sensor controller with status LED" + description "A controller reads an I2C sensor, accepts a button input, and controls a status LED through a driver." + + // Declare each block and its named pins. @left and @right set pin sides. + // U1: I2C sensor with an interrupt output. + component U1 IC pins=[1:VCC@left, 2:GND@left, 3:SCL@right, 4:SDA@right, 5:INT@right] + // U2: microcontroller that reads the sensor and button. + component U2 IC pins=[1:3V3@left, 2:GND@right, 3:SCL@left, 4:SDA@left, 5:IRQ@left, 6:BTN@left, 7:DRIVE@right, 8:FAULT@right] + // U3: LED driver with a fault output back to the controller. + component U3 IC pins=[1:VIN@left, 2:GND@left, 3:IN@left, 4:FAULT@left, 5:OUT@right] + component SW1 PushButton + component D1 LED color=green + + // All blocks share the supply and ground rails. + net VCC: U1.VCC, U2.3V3, U3.VIN + net GND: U1.GND, U2.GND, U3.GND, SW1.2, D1.C + + // The sensor sends readings over I2C and signals an interrupt on INT. + net SCL: U1.SCL, U2.SCL + net SDA: U1.SDA, U2.SDA + net INT: U1.INT, U2.IRQ + + // The controller commands the driver, which reports faults back. + net DRIVE: U2.DRIVE, U3.IN + net FAULT: U3.FAULT, U2.FAULT + + // Pressing the button connects BTN to ground. The driver powers the LED. + net BTN: SW1.1, U2.BTN + net LED_OUT: U3.OUT, D1.A + + // Draw supply rails above and below the blocks, and bundle related signals. + render layout=bus-rail +``` - component BT1 Battery voltage=5V - component R1 Resistor value=220ohm - component D1 LED color=red +
+ +## This is what you get + +The complete source renders as a schematic with shared power rails, a sensor +bus, and separate control signals. + +Sensor controller with an I2C sensor, LED driver, status LED, and push button - net VCC: BT1.+, R1.1 - connect R1.2, D1.A - net GND: D1.C, BT1.- +## Install and use - annotation "Current limiting resistor" near R1 +```bash +npm install wire-lang ``` -Render it from the CLI: +Save the [complete source](./examples/sensor-controller.wire) as +`sensor-controller.wire`, then render it: ```bash -npx wire render led.wire --out led.svg +npx wire render sensor-controller.wire --out sensor-controller.svg ``` -…or from JavaScript/TypeScript: +Open `sensor-controller.svg` to view the schematic. To render from JavaScript or TypeScript: ```ts import { renderSvg } from "wire-lang"; @@ -68,6 +108,21 @@ import { renderSvg } from "wire-lang"; const svg = renderSvg(source); ``` +## AI skill + +Install the [Wire Lang authoring skill](./skills/wire-lang/SKILL.md) to teach your +AI assistant the syntax, component library, and validation workflow: + +```bash +npx skills add eduardozf/wire-lang --skill wire-lang +``` + +Agents can validate source with `wire check sensor-controller.wire --json`. The parser returns +a partial AST for invalid input, with source locations and suggested fixes in +its diagnostics. + +## Markdown and MDX + Write the same source inside a Markdown or MDX fence: ````markdown @@ -100,72 +155,8 @@ For ahead-of-time rendering with no browser runtime, use `remarkWire` or `rehypeWire` from `@wire-lang/markdown` with `{ mode: "static" }`. See the [Markdown/MDX guide](./packages/markdown) for complete build configuration. -## How it compares - -Think **[Mermaid Charts](https://github.com/mermaid-js/mermaid), but for electronic schematics**: text goes in, documentation- -friendly diagrams come out. The difference is that Wire Lang models real -electrical nets, terminals, and components instead of flowchart boxes and arrows. - -## Use with AI - -Wire Lang is built for AI-assisted authoring: - -- `parse(source)` returns a partial AST even for invalid input, and every - diagnostic carries a source location and suggested fix — so agents can - self-correct. -- The CLI speaks JSON for scripts and agents: `wire check led.wire --json`. -- A bundled [Agent Skill](./skills/wire-lang/SKILL.md) teaches assistants the - syntax and component library so they generate valid `.wire` source. - -Install the authoring skill with the open Agent Skills CLI: - -```bash -npx skills add eduardozf/wire-lang --skill wire-lang -``` - -## Examples - -| LED current limiter | Soil sensor (bus-rail) | Bus-rail block diagram | -| ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| LED current limiting circuit rendered by Wire Lang | Soil sensor module rendered by Wire Lang | Bus-rail block diagram rendered by Wire Lang | - -See the [full gallery](./docs/EXAMPLES.md) and source in [examples/](./examples). - ---- - ## Reference -### The language - -Wire Lang separates the electrical model from the rendered drawing. In the -source below, `R1`/`D1` are component instances, `Resistor`/`LED` are types, -`VCC`/`GND` are nets, and `connect` makes an anonymous net. Visual wires are -renderer output, not the source of truth. - -```wire -schematic - component R1 Resistor value=10k - component D1 LED color=red - - net VCC: R1.1 - connect R1.2, D1.A - net GND: D1.C -``` - -Components can also be defined locally, including overriding a built-in symbol: - -```wire -define component SoilSensor - terminal VCC - terminal GND - terminal AOUT - terminal DOUT - symbol module -end - -component S1 SoilSensor -``` - ### API ```ts @@ -182,54 +173,15 @@ stage's output. Packages are ESM-only and target Node.js 20+. ### CLI ```bash -wire check examples/led.wire # validate -wire render examples/led.wire --out led.svg -wire watch examples/led.wire --out led.svg +wire check examples/sensor-controller.wire # validate +wire render examples/sensor-controller.wire --out sensor-controller.svg +wire watch examples/sensor-controller.wire --out sensor-controller.svg ``` Add `--json` to `check`/`render` for machine-readable output. Exit codes: `0` success (incl. warnings), `1` source/render errors, `2` usage or I/O problems. There is no preview server; open the generated SVG directly. -### Standard components - -`Resistor`, `Capacitor`, `PolarizedCapacitor`, `Inductor`, `Diode`, `LED`, -`NPNTransistor`, `PNPTransistor`, `Battery`, `GroundReference`, `SPSTSwitch`, -`PushButton`, `Header`. - -Wire Lang uses IEC-style conventions where practical with original, open-source -symbol art; it does not claim formal IEC/IEEE compliance. See -[CONTRIBUTING.md](./.github/CONTRIBUTING.md) for the artwork policy. - -### Packages & development - -| Package | Role | -| -------------------------------------------- | ----------------------------------------------------------- | -| [`wire-lang`](./packages/wire-lang) | User-facing aggregate package and the `wire` binary | -| [`@wire-lang/core`](./packages/core) | Parser, compiler, schematic model, layout engine, renderer | -| [`@wire-lang/cli`](./packages/cli) | `wire check`, `wire render`, `wire watch` | -| [`@wire-lang/browser`](./packages/browser) | Asynchronous rendering after HTML loads | -| [`@wire-lang/markdown`](./packages/markdown) | Markdown and MDX integration with optional static rendering | - -```bash -pnpm install -pnpm build # tsup build + tsc typecheck -pnpm test # vitest -``` - -### Scope - -The MVP is implemented: a working `parse → compile → layout → renderSvg` -pipeline plus the CLI. Scope is intentionally narrow — schematic documentation, -not simulation, PCB/breadboard layout, BOMs, or editor integrations. See -[docs/MVP.md](./docs/MVP.md) for the full specification. - -## Documentation - -- [MVP specification](./docs/MVP.md) · [Example gallery](./docs/EXAMPLES.md) · [Domain vocabulary](./docs/CONTEXT.md) -- [Architecture decisions](./docs/adr/) · [Brand assets](./docs/brand/) -- [Contributing](./.github/CONTRIBUTING.md) · [Code of conduct](./.github/CODE_OF_CONDUCT.md) · [Support](./.github/SUPPORT.md) · [Security](./.github/SECURITY.md) · [Changelog](./CHANGELOG.md) - ## Contributing Wire Lang is early and design-heavy. The most useful contributions right now are diff --git a/docs/assets/sensor-controller.svg b/docs/assets/sensor-controller.svg new file mode 100644 index 0000000..ca0c6d5 --- /dev/null +++ b/docs/assets/sensor-controller.svg @@ -0,0 +1,22 @@ + +Sensor controller with status LED +A controller reads an I2C sensor, accepts a button input, and controls a status LED through a driver. + + + +VCC1GND2SCL3SDA4INT5U13V31SCL3SDA4IRQ5BTN6GND2DRIVE7FAULT8U2VIN1GND2IN3FAULT4OUT5U3SW1D1 + +VCCGNDU1-U2 bus + \ No newline at end of file diff --git a/docs/brand/assets/wire-lang-lockup-horizontal-1040.png b/docs/brand/assets/wire-lang-lockup-horizontal-1040.png index eb58bec60a74785b4dfa5e876dd09c280f2b8bb2..afe6c07563a80af2c294153bbc68b90f0a7287c1 100644 GIT binary patch literal 19194 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 E0EH|FJ^%m! literal 7353 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 diff --git a/docs/brand/assets/wire-lang-lockup-horizontal-reversed-1040.png b/docs/brand/assets/wire-lang-lockup-horizontal-reversed-1040.png index 14df88ae65ec730ba7d74bfe240029e50bfae800..7d12540216da49af92aa92e3023d1efc5bc313c4 100644 GIT binary patch literal 16943 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 OU#qETE7vGlNBti(pAY~5 literal 13957 zcmeHuXIN8P^Ka+@1ftReX`)CkN17;IKm_TCQU#=UX;MOy-VuZd(mP1+El5`gy@U>m zbOJ(v5K6ck&-|@A+@FM z4SK=4PVNVGnq_T$QXh*)v6+4Jum8BmXhb9HCg_Bi!R z`^xBjxqwPhY9coUFiIm#s;`jB|NW~HCv20+?@v^qui+3@aeH}h@6+Eq;hUTGdt-3> z9$}b`I8_|OCpzfC&6!sQLxR#hb4|{k9$k9vin(v2A*^307{!FFE15%0LIKxb(n?Vb&ce-26K9(jksGW#7QR)rNKqak>mvoZkzrmTMpLdsO(^LFg1;c=> z&}s(6b4`~=o{L15q{Y7MvWM?_%joIS5_ygR^DUbjBi2@v$(=F69ybT6{n&505aQVGvDR$qW? zJRxc)yQC(&L;aL`=H&S1=0hetKveNnhNO48NyFMLtXiVsQgVl8f9-S-G?U{j-tj+Z6v>9wC^*lsQ;f%+TNAN4JCfvH6V98g1ezupIGM zaT2gEDugFzaFbKtooq=tPnk-L`HW?7EO0CO7i{aOx=mf$G?}utalPHbVDXZzCfM|j z%-2e5wU3)!OYuhttFNJ-j@HyE^M;f1^Pw~SQ34#p6*mU_G6rEtq*a22i4PD)*Bm|H zFNu?YQ|+uye|M1&3(eTYqQ~G?y$9lRc6a^#`pZdJY*Ee5GY+r}smG7ZyiZr{atF6> zfJRy)NFn{+g=umD@dftqAc?c89eU&^J-kVGHW|)G>Sdc^xD0HYq^)zxb5ZVWtYm*s zGxwHZnuS@tdffNPmA6qFsY?fN3?(xuV`=eE*AnD_n#3kmO;g+;CD{Ny_Xk?c}z4_U(eF(2|%oa-Gt!k!^6Z^6`tX*Y^TP? z9?U4;&$La3sKo4{kVfXolzAD7N8&HCgK~;eIG5-zH{*;WC6@Bmwj8_sjYm?+u@$j3d2oM_ObZ9M3};$n z1wTcTdAKiw$XMhW4}=Izc0-F(Tq8guc$6)7Gz28;OZ0rM%^05109*d6;0IG_3~}?G z>sO2SH!d#SqaM-R<5tt!aBuj;s-&RF2!3etqh;|6cb{OdP6ZCDtEhlo^URb2-_+_c z>^nZ4sNXxEVyctpcUWK3R;xH%DBjLfd-r-~R?v5kF~LJYjm@5I^ky)q{Icvy0Y*L1r12J4R3VM0fqiGn>r10Oup714w` z!xYcjX7xp1tEpIc0ybQQ*(3!ks?`fOmha9CZ2;KtGu4!uSA)c+aey3obfZKpH$vc;FooI#@&mF9Nl~t zux!`bN4@V}#AfW_*ynqEQZK1%fYd^WmNZV4U7KZb@7WR4Lp-KPu6OamHg(vapY8#B zDS9#X7Gjo#OxeCFZy2sDS^_dHm)>qO`j&5AYJRbEaIkEHF9DaB5_01&BvueYh95`N ztMqtiyQvifV{`W0paNnFnGfF=mcl4mGwY=?K_HT}Mv!U0?{!r3WyTnD54AvRrSv15 z^o8kI3J)cO_G&BYtlW9GfwsjlHV{UsqD)Zh%4?6- z%aY9LRemJJYCoNEP-&hri}Zx1*i4v_Em_6qkK$Xw_u5Eey2s1Zybr==xtc?@Iw?oJ z+FXA))=(EL%iziJI-n`hDrZj$yxYDkNn8DXlc=$rT)3@>qyl9@Z_=@bGlY-X%-%S$OPV?}|FTaH=2!FfF-|z&7c28;N0Pj0+80 z{SPCh4fikg3>!i{35$gljpIk^cAKuMN6ZJ6V-jROfs|rQ(#vg%0Dj{hKOMz8; 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 WW%F{S*CGLoM@LilL4~??#Qy+Qp&G6L diff --git a/docs/brand/assets/wire-lang-lockup-horizontal-reversed.svg b/docs/brand/assets/wire-lang-lockup-horizontal-reversed.svg index 18a3a2c..39ec09d 100644 --- a/docs/brand/assets/wire-lang-lockup-horizontal-reversed.svg +++ b/docs/brand/assets/wire-lang-lockup-horizontal-reversed.svg @@ -1,15 +1,12 @@ - - Wire Lang reversed lockup - Horizontal Wire Lang lockup with WL monogram, wordmark, and tagline. - - - - - - - - - - wire·lang - SCHEMATICS AS CODE + + + + + + + + + + + diff --git a/docs/brand/assets/wire-lang-lockup-horizontal.svg b/docs/brand/assets/wire-lang-lockup-horizontal.svg index 16ae13d..339735f 100644 --- a/docs/brand/assets/wire-lang-lockup-horizontal.svg +++ b/docs/brand/assets/wire-lang-lockup-horizontal.svg @@ -1,15 +1,11 @@ - - Wire Lang lockup - Horizontal Wire Lang lockup with WL monogram, wordmark, and tagline. - - - - - - - - - - wire·lang - SCHEMATICS AS CODE + + + + + + + + + + diff --git a/examples/sensor-controller.wire b/examples/sensor-controller.wire new file mode 100644 index 0000000..facef2c --- /dev/null +++ b/examples/sensor-controller.wire @@ -0,0 +1,33 @@ +schematic + title "Sensor controller with status LED" + description "A controller reads an I2C sensor, accepts a button input, and controls a status LED through a driver." + + // Declare each block and its named pins. @left and @right set pin sides. + // U1: I2C sensor with an interrupt output. + component U1 IC pins=[1:VCC@left, 2:GND@left, 3:SCL@right, 4:SDA@right, 5:INT@right] + // U2: microcontroller that reads the sensor and button. + component U2 IC pins=[1:3V3@left, 2:GND@right, 3:SCL@left, 4:SDA@left, 5:IRQ@left, 6:BTN@left, 7:DRIVE@right, 8:FAULT@right] + // U3: LED driver with a fault output back to the controller. + component U3 IC pins=[1:VIN@left, 2:GND@left, 3:IN@left, 4:FAULT@left, 5:OUT@right] + component SW1 PushButton + component D1 LED color=green + + // All blocks share the supply and ground rails. + net VCC: U1.VCC, U2.3V3, U3.VIN + net GND: U1.GND, U2.GND, U3.GND, SW1.2, D1.C + + // The sensor sends readings over I2C and signals an interrupt on INT. + net SCL: U1.SCL, U2.SCL + net SDA: U1.SDA, U2.SDA + net INT: U1.INT, U2.IRQ + + // The controller commands the driver, which reports faults back. + net DRIVE: U2.DRIVE, U3.IN + net FAULT: U3.FAULT, U2.FAULT + + // Pressing the button connects BTN to ground. The driver powers the LED. + net BTN: SW1.1, U2.BTN + net LED_OUT: U3.OUT, D1.A + + // Draw supply rails above and below the blocks, and bundle related signals. + render layout=bus-rail diff --git a/scripts/update-examples.mjs b/scripts/update-examples.mjs index d49e8a1..7ead4d4 100644 --- a/scripts/update-examples.mjs +++ b/scripts/update-examples.mjs @@ -21,6 +21,7 @@ const EXAMPLES = [ ["examples/npn-led-driver.wire", "docs/assets/npn-led-driver"], ["examples/kitchen-sink.wire", "docs/assets/kitchen-sink"], ["examples/bus-rail.wire", "docs/assets/bus-rail"], + ["examples/sensor-controller.wire", "docs/assets/sensor-controller"], ["examples/pot-divider.wire", "docs/assets/pot-divider"], ["examples/diode-variants.wire", "docs/assets/diode-variants"], ];