Skip to content

etchy v0.1.0-rc1

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 01 Jul 10:46
· 112 commits to main since this release

What's Changed

  • Phase 0 + M1: engine, CLI, GUI — diffs real Gerber boards by @Cimos in #1
  • Review follow-ups: rename-tolerant layer pairing + fail-loud coord guard by @Cimos in #2
  • Landing page (GitHub Pages) by @Cimos in #3
  • Landing page: review revisions + GUI demo by @Cimos in #4
  • Landing: docs page, real example, badges, Get-it, accuracy fixes by @Cimos in #5
  • Docs: per-OS install, exit-code clarity, back-home link by @Cimos in #6
  • Docs: back-home link (left, gold text) by @Cimos in #8
  • Docs: tabbed install methods (Windows default) by @Cimos in #9
  • Docs: match landing shell + simpler Home nav by @Cimos in #11
  • etchy GUI: web demo + M1 viewer hardening + landing site by @Cimos in #10
  • docs: board-free UI screenshots for feedback issues by @Cimos in #43
  • Viewer UX + colour fixes (feedback batch) by @Cimos in #45
  • Features: SVG export, measure tool, noise-filter range, widget capture by @Cimos in #47
  • fix(core): track→pad junction notch (#13) — primitive winding normalization by @Cimos in #48
  • Render: zoom-stable diff LOD (marker dots) + triangulation proof by @Cimos in #46
  • fix(core): pour clearances filled solid (regression from #48) by @Cimos in #66
  • Settings persistence + canvas/grid colour + mode hotkeys + centered Colors (#52,#53,#55,#56) by @Cimos in #65
  • Measure-tool upgrades + grid overlay (#50, #51) by @Cimos in #64
  • Per-ECAD input presets (#54 MVP) — rebased onto main by @Cimos in #69
  • docs: handoff (2026-06-24) — Phase 1-2 + render fixes merged by @Cimos in #70
  • gui: viewer feedback fixes (arrow, per-theme canvas, collapsible groups, measure Esc, input presets) by @Cimos in #71
  • gui: multi-layer view with highlight/dim and group show/hide (#58, #59) by @Cimos in #73
  • gui: swipe/curtain compare + Phase 3 review feedback (#61) by @Cimos in #74
  • docs: GPU-side geometry transform design (viewer perf) by @Cimos in #75
  • gui: default viewer to selected layer only (perf, #9/#10) by @Cimos in #76
  • size: drop wgpu for glow + release profile (#86, #87) by @Cimos in #98
  • test: winding-invariant + macro/arc geometry tests (#89, #90) by @Cimos in #102
  • ci/test: cargo-deny + fuzz target + parser panic boundary (#84, #85) by @Cimos in #104
  • feat: resource caps — input size + per-layer object count (#82, #83) by @Cimos in #103
  • perf: share layer geometry via Arc, not deep-clone (#81) by @Cimos in #101
  • docs: scope #94 (adaptive tessellation) as future work by @Cimos in #97
  • docs: full code review (2026-06-25) with diagrams by @Cimos in #78
  • core: tessellation-robust region count (noise-floored) — unblocks #94 by @Cimos in #96
  • perf: render-only base-mesh simplification (~2x faster all-layers pan, #94) by @Cimos in #95
  • core: parallelize per-layer diff with rayon (~20% on large boards) by @Cimos in #77
  • perf(gui): pre-reserve per-frame mesh buffers — fixes dense-board lag (#80) by @Cimos in #116
  • perf(gui): GPU path for all layers — O(1) pan, the HDI fix (#80, supersedes #107) by @Cimos in #117
  • ci: fix wasm bundle optimization + gate it in CI (Refs #99, #88) by @Cimos in #119
  • core: classify Altium fab-documentation gerbers (Refs #111) by @Cimos in #118
  • docs: native KiCad .kicad_pcb diff as an accepted future goal (Refs #122) by @Cimos in #123
  • core: tighten same-board guard to spec (1mm/2%) (Refs #92) by @Cimos in #127
  • core: cap per-layer point + polarity-span counts (DoS) (Refs #83) by @Cimos in #128
  • core+cli: Excellon/NC drill parsing — hits + slots (Refs #62) by @Cimos in #129
  • feat(gui): Open revision A / B loader — folder, zip, drag-drop (Refs #120) by @Cimos in #124
  • feat(gui): unified Settings panel (Refs #121) by @Cimos in #131
  • feat(gui): sidebar %-change (#114), single-layer clarity (#112), loader last-dir (#120) by @Cimos in #126
  • feat(gui): drill layers in the viewer via Excellon front-end (Refs #62) by @Cimos in #130
  • cleanup: drop dead spike examples + unused gerber-types dep (#93) by @Cimos in #109
  • fix(gui): label Split/Swipe as raw-board views (Refs #91) by @Cimos in #132
  • feat(gui): startup splash — the etchy brand screen by @Cimos in #133
  • feat: export per-layer SVG + copper-area CSV (Refs #60) by @Cimos in #134
  • release: distroless container + tag-triggered binary release + roadmap reconcile by @Cimos in #135

New Contributors

  • @Cimos made their first contribution in #1

Full Changelog: https://github.com/Cimos/etchy/commits/v0.1.0-rc1