Weather Station Pt 4
Working on Gerber Viewer#
As part of the weather station project (and other ongoing projects), I switched focus today from hardware to tooling.
Recently, I’ve been working on an online application that allows Gerber files to be viewed directly in the browser—without uploading anything to a server. Everything is processed client-side, which keeps things simple and avoids handling potentially sensitive design files.
The application is built using:
- React
- TypeScript
- Vite
and is containerised using Docker.
How It Works#
The viewer supports two main ways of loading Gerber files:
Uploading a
.ziparchive using the “Choose Zip Archive” option
(the archive should contain standard Gerber and Excellon drill files)Loading a
.ziparchive via a URL parameter
Even when loading via URL, the file is fetched and processed entirely in the browser. For now, this feature is restricted to a whitelist of allowed sources while the viewer is still in beta.
Try It Out#
You can try the viewer here:
👉 https://gerberviewer.protoworks.uk
If you work with PCB designs, this is a quick way to sanity-check Gerber files without installing any additional tools or uploading files to third-party services.
If you already have Gerber files, just upload a zip and take a look.
Alternatively, here’s one of my own publicly available test cases from the current weather station project:
Why Build This?#
Coming from a software background, I prefer fast feedback loops.
With PCB design, there’s always a delay between generating Gerbers and receiving physical boards. That makes it easy to miss small issues that only become obvious later.
This viewer is a simple way to quickly sanity-check layouts before sending them off for manufacture.
It’s not a replacement for professional tools—but it removes a surprising amount of friction from the workflow.
Next Steps#
The viewer is still very much a work in progress. Some areas I’d like to improve:
- Broader support for different Gerber formats and edge cases
- Better rendering performance for larger boards
- Improved UI/UX for navigating layers
- Relaxing the URL restrictions once I’m confident in the implementation
If this is useful, I may expand it further or integrate it into other tools and workflows.
If you are working on custom carrier boards, sensor integration, or ESP32 prototypes and need an experienced engineering partner, let’s discuss your project at Protoworks (NI).
- 2026-10-17 Refining the Protoworks service offerings Lab
- 2026-09-27 Belfast Tech Week Lab
- 2026-09-19 Refining the UCMOD Architecture R&D
- 2026-09-06 Giving AI Agents a Way to Talk to Protoworks Software
- 2026-09-03 A Morning at a Manufacturing Trade Show Lab
- 2026-09-01 Debugging 921600 Baud on the ATtiny1614 R&D