G-code viewer — source-linked path review & measurement export
Open your G-code text, inspect an isometric or orthographic path, step through source-linked movements and export a numeric review. Unsupported state changes stop interpretation, so the tool never silently invents the remaining machine path.
G-Code Review Desk
Choose your inputs, or load the working example to explore the result. Your files stay on this device.
Supported scope: UTF-8 text up to 2 MiB, 50,000 lines, 20,000 movements and 200,000 preview points. Review stops when a limit is reached. XYZ coordinates are limited to +/-1,000,000 mm. · Only the published subset is interpreted: XY incremental-center I/J arcs, not R arcs, other arc planes, macros, cycles, work offsets, rotary axes, extrusion, cutter compensation or tool-length offsets. Default initial state is visible in every report. · No machine connection or execution, stock removal, collision, tool shape, controller verification or manufacturing approval. Preview arcs use 2-degree chords; distances use analytic arcs. Time excludes acceleration and machine actions.
Your inputs
Required fields are marked with an asterisk.
Your result
Review your output, then save it to your device.
Make the next step clear.
Your findings, assumptions and next steps will appear here after you run the check.
G-Code Review Desk · https://gcode.kitforma.com/ · KitForma
Source-line links for every modeled movement
Exact line/arc lengths with explicit feed assumptions
Editable local review and transparent partial results
Understand the evidence.
Focused guides explain the rules, the edge cases and the checks worth doing before you act.
Read a source-linked G-code review
Keep modeled movements and unknown source separate.
Read the guide ↗Field guide / 02Interpret arc lengths and ideal timing
Separate numeric path measurements from machine performance.
Read the guide ↗Field guide / 03Share a reproducible local review
Export the path, source and limitations together.
Read the guide ↗Before you start
Will this run or validate my CNC program?
It never runs a machine. It visualizes only the declared subset from an assumed origin, without stock, tool geometry, offsets or controller configuration. A clean supported-subset report is not a manufacturing or safety approval.
What happens when a command is unsupported?
The report stops at that source block and states its line and the unreviewed tail length. Earlier supported movements remain inspectable. The JSON and SVG retain the partial-review warning, and no later coordinates are invented.
Which arcs are supported?
G2 and G3 in XY/G17 with incremental I/J center offsets, including a Z change for a helix. I/J stay relative to the start even when XYZ uses G90. R-radius arcs, G18/G19, absolute arc centers and multiple turns are outside this release.
Why is the time different from my controller?
The estimate divides analytic movement distance by feed or the rapid speed you supplied and adds G4 P dwell. Acceleration, planner blending, spindle ramp, tool change, controller constraints and operator pauses are not included. A missing feed makes total time unknown.
Can I edit and export the program?
You can edit a local text copy and run another review. Exports include the exact text that was reviewed as a TXT file, a line-linked measurement CSV, JSON and an SVG. No toolpath repair or machine-specific postprocessing is performed.
Are my files uploaded or saved automatically?
No. Parsing runs in a local Web Worker. The editor remains in the open tab, and saving a file is explicit. Reset restores the original reviewed copy. There is no automatic browser storage or cloud project.
Sources & assumptions
Formats, algorithms and supported features are documented below. Check the stated scope and inspect your output before using it.
- LinuxCNC — G-code reference ↗
Primary command semantics used to define the supported subset; this viewer is not a complete LinuxCNC interpreter.
- LinuxCNC — Overview and format ↗
Program format, comments, words and modal groups.
- LinuxCNC — M-code reference ↗
Program end and machine commands; this product records selected nonmotion commands as annotations.
Reviewed 2026-10-19. Read our methodology or report an issue.