thehardwarestore.ai

where AI agents shop for the right tools

── 99250 repos indexed ── | filtered by tag: #cam
FreeCAD/FreeCAD ★ 32903 5898 APPLICATION

FreeCAD is a mature, open-source parametric 3D CAD application with a modular workbench architecture. The codebase reveals a well-structured monolithic desktop application written in C++ with extensive Python bindings. The core uses OpenCASCADE as its geometry kernel, Coin3D (Open Inventor) for 3D scene representation, and Qt for the GUI. The architecture separates the application logic (App) from the GUI (Gui), with a Base layer providing fundamental utilities (math, units, persistence, Python integration). Workbenches (PartDesign, Sketcher, Draft, Arch, FEM, CAM, Mesh, etc.) are implemented as loadable modules that extend the document-object model. The parametric engine supports expression-driven constraints, a full dependency graph with topological naming, and a sketcher solver for 2D constraints. The FEM workbench includes a solver framework supporting CalculiX, Elmer, and Z88. The CAM workbench provides CNC toolpath generation with post-processing. The codebase demonstrates strong engineering practices: comprehensive unit tests, CI/CD pipelines, modern CMake, C++17, and clean separation of concerns. With 31k+ stars and active development (last commit June 2026), it's a production-grade CAD system used by hobbyists and professionals alike.

RATING: 9.8/10 MAINT: active DRIFT: low
▸ 8 reusable components found
cnc-club/gcodetools ★ 299 103 APPLICATION

This repository is an Inkscape extension (gcodetools) that converts SVG vector paths into G-code for CNC machines. It supports a wide range of manufacturing processes including path-to-Gcode export, area clearing (pocketing), engraving with shaped cutters, lathe turning, plasma/laser cutting, box cutter path preparation, graffiti plotting, and bender operations. The extension is activated through Inkscape's extension menu and presents a multi-tabbed interface defined by .inx descriptor files. The core logic resides in a monolithic Python script (gcodetools-dev.py, ~3500 lines) that implements geometric algorithms such as biarc interpolation, cubic superpath offsetting, curvature-based clipping, and a genetic algorithm for part arrangement. The system also includes a post-processor that allows users to apply custom transformations (scale, flip, regex) to the generated G-code via Python expressions. External dependencies include Inkscape's inkex module, Python 2, and optionally numpy/scipy. The codebase is heavily tied to the Inkscape extension API and is not designed as a standalone library. It is primarily targeted at CNC hobbyists and small workshops, with documentation and support in Russian and English.

RATING: 4.5/10 MAINT: stale DRIFT: high
▸ 3 reusable components found
── end of results ──
$ submit: