A suite of CAM tools that run entirely in your browser. No installation, no accounts, no cloud processing - your files never leave your machine.
Both apps sit on shared foundations: analytic file parsing, a Clipper2/WASM geometry pipeline that reconstructs almost lossless arcs after boolean operations, three-stage toolpath planning with G2/G3, plus ten post-processors and counting. Each app wraps that engine in a UI and an operation set built for specialized workflows.
Turns Gerber, Excellon and SVG into G-code for isolation milling, or into precision SVG/PNG for laser and vinyl work. Meant as an alternative to FlatCAM.
Open EasyTrace5000 · Documentation · Repository README
Isolation routing · copper clearing · drilling · board cutout with tabs · solder paste stencils · a fiber/UV laser pipeline (beta).
General routing from vector and mesh sources, from flat SVG cutting through 3D surfacing and 4th-axis work. Planned as a replacement for Easel, it now offers more operational choices and better quality toolpaths (thanks to analytic G2/G3 arcs).
Open EasyShape5000 · Documentation · Repository README
Profile · pocket · drilling · engraving · v-carve · 3D relief · rotary (continuous radial and indexed 3+1), with a 3D toolpath preview.
| EasyTrace5000 | EasyShape5000 | |
|---|---|---|
| Input | Gerber, Excellon, SVG | SVG, STL |
| Model | one file per operation | per-shape operation buckets |
| Transforms | board-level | per-shape/nested group |
| Undo/redo | no | full command history |
| Machines | CNC router, laser/drag knife | CNC router |
| 3D operations | no | V-carve, relief, rotary |
| Output | G-code, plus SVG/PNG | G-code |
- Parsing - Gerber (RS-274X), Excellon, SVG (full path spec including arcs and Béziers), STL (binary and ASCII).
- Geometry - Clipper2 via WebAssembly for booleans, with arc reconstruction so exported arcs use G2/G3 arcs insted of tessellated polylines.
- Toolpaths - translate geometry to motion, optimize (staydown clustering, nearest-neighbour ordering, collinear simplification), then inject machine specifics: rapids, plunges or helical entries, holding tabs, rotary routes.
- Rendering - a custom 2D canvas renderer with batching, level-of-detail and viewport culling, plus a three.js 3D preview for toolpaths and stock. With simulation to come soon™.
- Frontend - vanilla JavaScript (ES6+), HTML5, CSS3. No framework, and no build step required for development or local deployment.
| Format | Extensions | Used by |
|---|---|---|
| Gerber | .gbr .ger .gtl .gbl .gts .gbs .gko .gm1 |
EasyTrace5000 |
| Excellon | .drl .xln .txt .drill .exc |
EasyTrace5000 |
| SVG | .svg |
both |
| STL | .stl (binary and ASCII) |
EasyShape5000 |
Developed and tested against KiCad and EasyEDA output.
Exporting Gerber with Protel extensions lets drag-and-drop auto-assign files to the right operation.
Bézier curves are parsed analytically but interpolated to line segments before offsetting - analytic Bézier offsetting is not supported yet.
Having access to a limited number of machines/controllers/setups means the project depends on community feedback about what works or doesn't for most hardware/setup combinations. While the geometry system has been tested thoroughly, the recent additions of tool-changing and 4th-axis logic mean a lot more variables have been added which haven't been fully tested in all possible controller configurations, so proceed with some caution and report any unexpected behaviour.
| Post | Tool change | 4th axis | state |
|---|---|---|---|
| GRBL | no | replacement | (mostly) tested |
| Roland RML | no | no | (more) experimental |
| grblHAL | yes | a-word / repl. | experimental |
| Makera (Carvera) | yes | a-word / repl. | (less) experimental |
| UCCNC | yes | a-word / repl. | experimental |
| Mach3 | yes | a-word / repl. | experimental |
| LinuxCNC | yes | a-word / repl. | (less) experimental |
| Marlin | no | replacement | experimental |
| Fanuc | yes | a-word / repl. | radioactive |
| WinPC-NC | yes | a-word / repl. | radioactive |
Full walkthroughs, every operation and every parameter live on the site:
- EasyTrace5000 docs - CNC · Laser · Operations · Parameters
- EasyShape5000 docs - Workflow · Operations · Parameters
EasyTrace5000 supports keyboard-only navigation and screen readers. See the accessibility guide (source: easytrace5000/doc/ACCESSIBILITY.md) for the full shortcut list and current WCAG 2.1 status.
One shared engine at the repository root; each app directory adds a UI, an operation set and a profile. Repository layout, local setup, the production build and the debug console commands are in ARCHITECTURE.md.
git clone https://github.com/RicardoJCMarques/EasyCAM5000.git
cd EasyCAM5000 && npx serve # a local server is required; file:// will not workSuite version 1.6.2 - see the changelog. Versions track the suite as a whole; entries name the app they affect.
Anything else lives in the issue tracker.
- Multi-lingual UI - the string layer exists, only English is populated
- Tool library, post-processor and theme import/export
- Toolpath playback and material removal simulation in the 3D preview
- Service Worker for offline use
I am not actively seeking code contributions, but testing reports are the most useful thing anyone can send - especially confirmation that a post-processor works on real hardware.
- Report a bug or request a feature
- Ask a question - machine settings, posts, workflow
- CONTRIBUTING.md · SUPPORT.md · SECURITY.md · Code of Conduct
If you use and like EasyCAM5000 don't forget to star it so it becomes more discoverable to other people.
EasyCAM5000 is free software. If this tool saves you time or patience, Github Sponsors and Ko-fi contributions fund development time and test hardware. Manufacturers and industry partners can get visibility on the welcome screen and in the documentation.
|
|
|
Contact us regarding sponsorship →
Copyright © 2025-2026 Eltryus - Ricardo Marques
The application is licensed under the GNU Affero General Public License v3.0 or later (LICENSE). Free to use commercially, free to modify and redistribute - but a modified version served over a network must make its source available to the people using it.
Third-party components keep their own licenses, listed in NOTICE: Clipper2 (Boost 1.0), three.js (MIT), delaunator (ISC).
Example files carry their own terms: examples/exampleThroughHole1 is CC0; examples/exampleSMD1 and LineTest.svg are CC BY-NC.
Trademarks. "Eltryus" is a trademark. You may not use the name to endorse or promote derived products without written permission, beyond describing the software's origin.
- Angus Johnson for Clipper2, and Erik Sombroek for the WASM build
- Delaunator library developers
- The open-source and Fab Lab / Makerspace communities
- Krisjanis and Marcela, for outstanding contributions to naming this thing
- Marcela again, for the through-hole example board
- A standalone Clipper2-WASM test page built during early development, still useful as living documentation for the library's API - live version

