Repository navigation
v0.1.0 — The Viewport
Forge v0.1.0 — The Viewport
A cross-platform 2D CAD viewport with ECS-backed geometry, command-driven interaction, and a 60fps wgpu render pipeline.
Features
Render Pipeline (wgpu 29)
- wgpu-based 2D render pipeline with orthographic camera
- Grid renderer with major/minor lines, axis markers, and lazy regeneration on ≥10% camera shift
- Entity renderer with dedicated WGSL pipelines for Line, Circle, Arc, and Polyline primitives
- Surface loss recovery and window resize handling
Entity-Component System (hecs 0.10)
- ECS geometry store with LineData, CircleData, ArcData, PolylineData components
- Singleton resources: CameraState, GridConfig, InputState
Command System (nom 8)
- Interactive LINE command with buffer-then-commit design and undo support
- Full command parsers for LINE, CIRCLE, ARC, and PLINE (30+ parser tests)
- CIRCLE/ARC/PLINE stubs ready for v0.2.0 implementation
Input (winit 0.30)
- Mouse/keyboard handling with camera pan (middle-drag) and zoom (scroll wheel)
- Click dispatch to active commands for point picking
- 8 unit tests covering pan/zoom math and clamping
UI (egui 0.34)
- Status bar with live coordinates, zoom %, and version string
- Command-line text input with history (1000-entry cap)
- Toolbar and property inspector stubs (ready for v0.2.0)
Build & Configuration
- Rust 1.87 MSRV
- Cross-platform: Linux (Vulkan), macOS (Metal), Windows (DX12)
- 12 pinned dependencies
Deferred to v0.2.0+
- Selection system, snapping engine, modify commands, undo/redo
- Full interactive CIRCLE/ARC/PLINE commands
- Rubber-band preview geometry
- Layer system, file I/O, WebAssembly build
See the full changelog for details.