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.
Chili3D is a web-based 3D CAD application for online model design and editing. It features a modular TypeScript architecture with core packages for foundations, application logic, UI, Three.js rendering, and WebAssembly bindings to OpenCASCADE for CAD operations. The system uses a command pattern with decorators for UI actions, a transaction system for undo/redo, and a plugin architecture for extensibility. Key capabilities include primitive shape creation, Boolean operations, extrusion/revolve/sweep/loft, snapping, measurement tools, document management with IndexedDB persistence, and import/export of STEP, IGES, STL, and BREP formats. The UI implements an Office-style ribbon interface with property panels and hierarchical scene tree. The application is actively maintained with recent commits and demonstrates strong engineering practices in its reactive primitives, plugin system, and serialization framework.
libOpenDRIVE is a C++17 library that parses OpenDRIVE (.xodr) road network definition files and generates 3D mesh models for visualization and simulation. The architecture is a classic object-oriented library with a central OpenDriveMap class that loads an XML file and exposes roads, junctions, lanes, road marks, objects, and signals. Key modules include geometry types (Line, Arc, Spiral, ParamPoly3), cubic spline profiles for elevation and lane offsets, a routing graph based on lane connectivity, and multi-resolution mesh generation with triangle strips. The library is dependency-light, relying only on pugixml for XML parsing and a bundled Fresnel integral implementation for spirals. It provides efficient coordinate transforms, surface point queries, and boundary approximation using Ramer–Douglas–Peucker or bezier decomposition. Tests using Catch2 validate parsing and routing against a real-world test file.
pythonocc-core is a Python binding for the OpenCASCADE Technology (OCCT) 3D CAD kernel, providing full access to OCCT's geometry, topology, visualization, and data exchange capabilities. It is a library, not a standalone application, designed for engineers and developers building CAD/CAE/PLM tools in Python. The architecture is a C++ extension module generated via SWIG, with a thin Python layer that adds convenience utilities, multiple display backends (Qt, wxPython, Tkinter, WebGL/Jupyter), and high-level helpers for shape creation, topology traversal, and file I/O (STEP, IGES, STL, glTF, OBJ, PLY). The core API mirrors OCCT's class hierarchy, while the `OCC.Extend` and `OCC.Display` packages provide Pythonic wrappers and interactive 3D viewers. The repository is actively maintained, with recent releases (7.9.3) and CI pipelines for conda packages across platforms. It includes extensive type stubs for IDE support, a comprehensive test suite, and support for offscreen rendering and Jupyter notebooks. Key entry points include `OCC.Display.SimpleGui.init_display()` for interactive viewers, `OCC.Extend.DataExchange.read_step_file()` for CAD file import, and `OCC.Core.Tesselator.ShapeTesselator` for mesh generation. The codebase demonstrates strong engineering practices with reusable patterns like the topology explorer, shape factory utilities, and a generic proxy pattern for OCCT objects. However, the SWIG-generated wrapper layer is large and fragile, requiring careful version alignment with OCCT, and some OCCT classes remain unwrapped.
BetterModel is a high-performance, server-side Minecraft plugin and mod (Bukkit/Paper/Fabric) that renders custom 3D models from BlockBench (.bbmodel) files using Minecraft's display entities. It automatically generates resource packs, supports keyframe and Molang-driven animations, per-player model visibility, hitboxes, mounting, player skin integration, and third-party compatibility (MythicMobs, Citizens, SkinsRestorer). The architecture is modular with a clean API/implementation split, platform abstraction, and version-specific NMS modules for multiple Minecraft versions (1.21.4 through 26.3). The codebase demonstrates strong engineering practices in packet bundling, animation interpolation, concurrency utilities, and event-driven design. However, it suffers from significant code duplication across NMS versions, minimal test coverage, and heavy reliance on Minecraft internals via reflection, which introduces maintenance fragility. It is actively maintained with frequent updates and a responsive issue tracker.
CADAM is a production-grade, open-source web application that converts natural language descriptions into fully parametric 3D CAD models. It operates in two primary modes: parametric (generating OpenSCAD code via an AI agent that can iterate with live previews) and creative (producing 3D meshes via external providers like Meshy and Tripo). The application is built with React 19, TypeScript, TanStack Start, Vite, and Tailwind CSS, with a Supabase backend for authentication, database, and file storage. AI integration spans multiple providers (Anthropic, OpenAI, Google, xAI, and others) via the Vercel AI SDK, and the generated OpenSCAD code is compiled in-browser using a vendored WebAssembly build of OpenSCAD. The system includes a token-based billing model, real-time preview updates, parameter editing, and export to STL, OBJ, GLB, and other formats. Although primarily an application, the benchmarks directory serves as a research record of the quality of generated parametric models, covering complex assemblies like a V8 engine and turbofan.
This repository provides a collection of Blender Geometry Node groups for procedurally generating assets of a northern European French town. The main file `GeometryNodesFrenchHous.blend` contains a library of node groups for creating houses, towers, bridges, town walls, gates, cliffs, vegetation, and architectural elements like churches and windmills. Users can append or link these node groups into their own Blender projects to generate customizable 3D models via adjustable parameters. The project includes demonstration files (e.g., `Demo-MagicSchoolV2.blend`) showcasing usage examples. The architecture is based on Blender's Geometry Nodes system, functioning as a modular asset library rather than a standalone application. Each node group is self-contained, allowing extraction and reuse in new Blender projects with minimal modification. The system relies externally on Blender 5.0 (as specified in the README) for execution, with no additional software dependencies. Data flow involves parameters driving geometric generation within the node groups, outputting 3D meshes directly usable in Blender scenes. The repository shows active maintenance with a recent commit (2026-07-05) and indicates low technical drift, as the Geometry Nodes setup appears compatible with the targeted Blender version. While the internal node structures cannot be inspected without opening .blend files, the README emphasizes documentation, viewer nodes for clarity, and a variety of asset types, suggesting thoughtful organization. The project fulfills its stated purpose of providing a reusable toolkit for procedural town generation in Blender.
This repository is a collection of AI agent skill definitions for the Higgsfield platform, enabling automated content creation across multiple domains including brand identity, product photography, website generation, video explainers, YouTube thumbnails, and 3D game assets. Each skill is self-contained in a folder with a SKILL.md entry point and references directory, designed for consumption by AI agents (Claude, Cursor, Codex). The repo also includes deterministic scripts for GLB processing, texture pipeline, procedural rigging, and brandbook generation, as well as CI validation workflows. While primarily a skill library, it contains reusable engineering patterns such as a brandkit state machine, stdlib-only GLB patching, and a texture seam-fix pipeline. The codebase is well-structured with version sync enforcement and anti-slop design rules, but relies on external tools (Blender, ImageMagick, LibreOffice) and live Higgsfield API endpoints.