Dannie: engineering tools inside a PCB ordering platform
Overview
Dannie combined PCB ordering with tools for reviewing the design before manufacturing. I joined as technical lead and worked with two developers and a tester. I handled architecture, implementation, code review, planning, and deployment.
My work covered the browser-based Gerber viewer, manufacturing checks, a fixture plate generator, and the order system. The backend used NestJS and PostgreSQL. The frontend used React, with shared packages for board geometry and validation.
Constraints
The board tools and the order system had different constraints.
Gerber files describe circuit-board geometry. Parsing them, identifying layers, and checking clearances takes work that should not block navigation or inspection.
Implementation
I built shared board-processing packages and kept manufacturing workflow separate from shipment records.
I separated parsing, layer identification, geometry operations, and manufacturing checks into reusable packages. The viewer and fixture tools used those packages instead of maintaining separate interpretations of the files.
Features

Inspect a manufacturing issue
A selected finding highlights its location on the board and hides unrelated layers when needed.

Read order activity by stage
The order timeline groups workflow events and support messages. It also links actions such as payments and design revisions to the relevant stage.

Review a fixture before export
The fixture view presents the plate, probe positions, and component cutouts together.
Results
- Shared Gerber packages supported the viewer, manufacturing checks, and fixture generator.
- Order templates described dependencies without hardcoding every manufacturing sequence.
- Separate shipment records supported partial fulfillment while retaining the original customer shipping price.
What mattered
Leading this project meant staying close to both geometry code and day-to-day delivery. Shared packages gave the board tools a common basis. Explicit order and shipment records kept later operational changes from rewriting the customer's original order.