Inspiration

What it does

How we built it

Challenges we ran into

Accomplishments that we're proud of

Inspiration

I cut parts on shared laser cutters and quote small fabrication jobs as a freelancer in Switzerland. Before a job I need two numbers: how long it will take on the machine and what to charge. Usually I guess, or I open the file in the machine software at the machine. I wanted the estimate before I book the slot.

What it does

You drop an SVG. Beamtime reads every shape, applies transforms and units, and groups the lines by stroke colour. Red is cut and blue is score by default, and each layer can be switched to cut, score or ignore. It shows cut length, score length, number of pierces, travel between parts, setup time, total machine time, the material share of a sheet and the price. Press Play cut and a laser dot traces the parts in the order a machine would cut them: score lines first, then holes, then outlines, so no part drops out early. Copy quote puts the breakdown on the clipboard as plain text for an email or an invoice. Machine and material values are editable and saved in the browser. The file never leaves your computer.

How I built it

I planned it first: the scope, PRD and spec follow the Devpost Learn skill pack and are in the repo under devpost/. Then I built it with Claude Code as a plain web page with no server logic: an SVG sampler, a geometry and time/price model, and a canvas preview with playback. 10 unit tests cover scale detection, lengths, cut order and the price breakdown.

Challenges I ran into

Chrome's getTotalLength returned a small circle (1.6 mm radius) about 10% short, which would have made every hole wrong. Circles, ellipses and rectangles now use exact formulas. Units were the other trap: SVGs from different tools mix mm, px and unitless values with transforms.

Accomplishments that I'm proud of

For the sample box, Beamtime reports 1,638 mm of cut and 10 pierces, which matches my hand calculation, and the playback order is the one I would choose at the machine.

What I learned

Writing the scope and spec before code kept the project small enough to finish, and an exact test case (the sample box) caught the circle bug that a visual check would have missed.

What's next for Beamtime

DXF import, corner slowdown in the time model, and using it as the quoting step for laser-cut kits generated from STEP files.

What we learned

What's next for Beamtime

Built With

Share this project:

Updates

Submission history