1Drop in an SVG
Logos, lettering, line art — anything you'd cut on a vinyl plotter works as inlay artwork. Drag it into the app and CNC Inlay Studio takes care of scaling, centring, and cleaning up the geometry for two-piece inlay cutting.
Drop in artwork. CNC Inlay Studio generates the matched pocket and plug G-code for a clean two-piece wood inlay — with a live 3D preview and built-in machine control over USB.
Logos, lettering, line art — anything you'd cut on a vinyl plotter works as inlay artwork. Drag it into the app and CNC Inlay Studio takes care of scaling, centring, and cleaning up the geometry for two-piece inlay cutting.
Choose pocket and plug stock from a built-in library (walnut, maple, padauk, ash, oak, cherry, and more). Pick roughing and finishing bits from your owned-bit list (50+ in the catalog). The app picks safe feeds and speeds for the wood/bit combo automatically, and you can override anything per-bit on its Speeds tab.
Inspect the toolpaths in 3D before you commit any wood — the assembled wood block renders as colour-coded layers (pocket / glue gap / plug) so you can see exactly what cuts where. Plug in your CNC over USB; the app jogs, zeroes, streams, and tracks the live bit cone in 3D. Drag the scrub bar to start (or resume) anywhere in the program.
The Finished tab renders the assembled inlay with realistic wood-grain textures so you can sanity-check colour pairings before cutting. Maple pocket + padauk plug shown below.
Pocket and plug toolpaths generated together so the plug always seats flush in the pocket. Adjustable glue gap, XY tolerance, and plug margin so you control the fit.
Lunyee 3018 PRO MAX, SainSmart Genmitsu, Foxalien, Shapeoko, X-Carve, Onefinity, OpenBuilds — all built-in. Don't see yours? Punch in any X/Y bed size in cm and the bed envelope and grid resize to match.
Stack a 3 mm roughing bit to clear bulk fast, then a 1 mm finishing bit for the corners. The app sorts them, computes per-bit residual coverage, and skips any tool change that wouldn't add new clearing.
Pick a 30°/45°/60°/90° V-bit as the wall finisher and the pipeline emits a perimeter pass at the chosen angle. Angled walls wedge tight on assembly — eliminating the visible glue line — with no change to the flip-and-mirror plug workflow.
Built-in surfacing planner removes the plug backing after glue-up so the inlay sits flush. Auto-derives depth from your glue gap, includes 21 catalog surfacing bits (12–50 mm + 1/2"–2") and a live 3D preview of the assembled panel as 3 colour-coded layers.
Rotate, pan, and zoom the toolpaths in 3D over a render of your wood block sitting on the bed. Direction arrows show travel direction; a purple bit cone tracks live machine position during a real cut.
Connect over USB. Jog, set work zero, dry-run, stream — all without a third-party sender. Crash recovery, pause/resume, abort, character-counted streaming for fast cuts. M3 + 3-second spindle dwell prevents bit breakage on plunge.
Coloured-segment timeline shows every bit in the program. Drag the handle to any line and click Run from Cursor to start (or resume) from there — perfect when a roughing pass is fine and you only want to redo the finishing.
50+ pre-populated bits — 1/8" and 1/4" shanks, flat endmills (metric and imperial), down-cut, compression, V-bits, engraving, surfacing. Tick the ones you own; the project dropdowns only show those.
Optional ✨ Generate from prompt — describe a design in plain English and get a fresh inlay-ready SVG. Bring your own Google Gemini API key.
Per-bit run-time estimates use a trapezoidal acceleration model tuned to hobby CNCs, plus tool-change and spindle-ramp overhead. The numbers actually match your wall clock — not the optimistic length÷feed math most CAM tools use.
Built with PySide6 + OpenGL for snappy panning and instant toolpath updates. No Java, no Electron, no servers, no subscription.
If your machine speaks GRBL over USB-serial — yes. There are 10 presets built in (Lunyee, Genmitsu, Foxalien, Shapeoko, X-Carve, Onefinity, OpenBuilds), so the bed envelope shown in the 3D preview matches your machine's actual work area. If your CNC isn't on the list, pick "Custom" and enter your X/Y in cm. Any GRBL-firmware machine over USB-serial — including DIY Arduino + grblShield builds — works as long as you can specify its bed size.
For most projects, no — flat-endmill inlay (the default) works great. V-bit inlay is for fine detail (tight script, sharp serifs, small logos) where bit-radius corner limits matter. It produces angled walls that wedge tight on assembly, eliminating the visible glue line. The plug workflow is the same flip-and-mirror you already do; the V-bit just runs an extra perimeter pass at the chosen angle. Pick a V-bit (30°/45°/60°/90°) in the Wall finish dropdown to enable it.
Yes. Settings → Surface plug backing… opens a planner dialog: pick your surfacing bit (or a flat endmill ≥6 mm), and the depth-to-remove auto-calculates from the project's glue gap + a safety margin. The Surfacing tab shows a live 3D preview of the assembled panel as 3 colour-coded layers (pocket, glue, plug backing). Click Run on Machine to stream it directly.
You can still open and edit projects, but the "Run on Machine" and "AI Generate" features unlock only with a license. No nag-screens, no time bombs.
Not currently. The app is built on cross-platform tooling (Python + Qt) so it's not impossible — but I only ship what I can test, and I only have a Mac.
Email ross.malcolm@gmail.com with screenshots and what your CNC model is. I read everything.