# xiangechen/chili3d

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/xiangechen-chili3d).**

4,293 stars · 397 forks · TypeScript · agpl-3.0

## Links

- GitHub: https://github.com/xiangechen/chili3d
- Homepage: https://chili3d.com
- awesome-repositories: https://awesome-repositories.com/repository/xiangechen-chili3d.md

## Topics

`3d` `browser-based` `cad` `geometry` `occ` `occt` `opencascade` `three` `threejs` `wasm` `webassembly` `webcad`

## Description

Chili3D is a browser-based parametric 3D modeling tool that uses boundary representation (B-Rep) to define and manipulate precise solid geometry. It functions as a constructive solid geometry (CSG) engine, combining primitive shapes through union, difference, and intersection operations, while also serving as a parametric constraint system that maintains geometric relationships and dimensions through adjustable parameters.

The software distinguishes itself by running entirely in a web browser without requiring installation, while providing industry-standard CAD file format support for importing and exporting STEP, IGES, and BREP files. It includes a hierarchical assembly tree for organizing components into nested parent-child structures, a command-based undo stack for full transaction history, and a WebGL viewport renderer for hardware-accelerated 3D scene display with orbit, pan, and zoom controls.

The modeling capabilities span sketching 2D geometry on workplanes, extruding or revolving profiles into 3D shapes, creating solid primitives like boxes and cylinders, and modifying edges with chamfers and fillets. Users can measure dimensions including angles, lengths, areas, and volumes, snap to existing geometry for precise alignment, and transform objects through move, rotate, and mirror operations. The interface supports localization between Chinese and English, and documents can be created, opened, saved, and exchanged in standard CAD formats.

## Tags

### Graphics & Multimedia

- [Browser-Based CAD Modelers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/3d-math-and-geometry-toolkits/geometry-primitives/constructive-solid-geometry-kernels/browser-based-cad-modelers.md) — Runs entirely in a web browser as a parametric 3D modeling tool for creating and analyzing solid geometry designs.
- [2D Vector Geometries](https://awesome-repositories.com/f/graphics-multimedia/2d-vector-geometries.md) — Draws lines, arcs, circles, ellipses, rectangles, polygons, and Bezier curves on a workplane. ([source](https://cdn.jsdelivr.net/gh/xiangechen/chili3d@main/README.md))
- [Assembly Hierarchies](https://awesome-repositories.com/f/graphics-multimedia/assembly-hierarchies.md) — Organizes 3D objects into nested parent-child structures for complex model management.
- [CSG Engines](https://awesome-repositories.com/f/graphics-multimedia/csg-engines.md) — Combines primitives through union, difference, and intersection operations to create 3D shapes.
- [Constructive Solid Geometry Kernels](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/3d-math-and-geometry-toolkits/geometry-primitives/constructive-solid-geometry-kernels.md) — Builds complex shapes by combining primitive solids through union, difference, and intersection operations.
- [3D Scene Renderers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/gpu-accelerated-ui-rendering/3d-scene-renderers.md) — Renders the 3D scene directly in the browser using hardware-accelerated WebGL graphics.
- [Navigation Controls](https://awesome-repositories.com/f/graphics-multimedia/media-production-suites/3d-modeling-software/navigation-controls.md) — Provides orbit, pan, and zoom camera controls for navigating the 3D viewport. ([source](https://cdn.jsdelivr.net/gh/xiangechen/chili3d@main/README.md))
- [Solid Primitives](https://awesome-repositories.com/f/graphics-multimedia/media-production-suites/3d-modeling-software/solid-primitives.md) — Creates basic solid primitives such as boxes, cylinders, cones, spheres, and pyramids to start a design. ([source](https://cdn.jsdelivr.net/gh/xiangechen/chili3d@main/README.md))
- [Parametric Design Constraints](https://awesome-repositories.com/f/graphics-multimedia/parametric-design-constraints.md) — Maintains geometric relationships and dimensions through adjustable parameters and constraints.
- [Object Transforms](https://awesome-repositories.com/f/graphics-multimedia/3d-scene-descriptions/scene-theme-transformers/object-transforms.md) — Moves, rotates, or mirrors selected components within the 3D scene. ([source](https://cdn.jsdelivr.net/gh/xiangechen/chili3d@main/README.md))
- [Edge Modifications](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/3d-math-and-geometry-toolkits/geometry-primitives/constructive-solid-geometry-kernels/edge-modifications.md) — Applies chamfers, fillets, trims, splits, and breaks to refine a model's shape. ([source](https://cdn.jsdelivr.net/gh/xiangechen/chili3d@main/README.md))
- [3D Geometry Measurers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/3d-math-and-geometry-toolkits/geometry-primitives/coordinate-mapping/3d-geometry-utilities/3d-geometry-measurers.md) — Provides measurement tools for calculating lengths, angles, areas, and volumes of 3D geometry.
- [3D Geometry Measurements](https://awesome-repositories.com/f/graphics-multimedia/text-dimension-measurement/3d-geometry-measurements.md) — Calculates lengths, angles, areas, and volumes of selected 3D geometric features. ([source](https://cdn.jsdelivr.net/gh/xiangechen/chili3d@main/README.md))

### Scientific & Mathematical Computing

- [Boundary Representation Modeling](https://awesome-repositories.com/f/scientific-mathematical-computing/boundary-representation-modeling.md) — Represents solid geometry as a topological mesh of faces, edges, and vertices for precise operations.
- [Constructive Solid Geometry Operations](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/computational-geometry/geometric-operations/constructive-solid-geometry-operations.md) — Combines, subtracts, and intersects solid shapes to construct complex geometry through boolean operations.

### Part of an Awesome List

- [Browser-Based CAD Software](https://awesome-repositories.com/f/awesome-lists/ai/visual-design-and-cad/browser-based-cad-software.md) — Runs entirely in a web browser as a parametric 3D modeling tool for creating and analyzing solid geometry designs.
- [CAD Format Converters](https://awesome-repositories.com/f/awesome-lists/devtools/format-converters-and-plugins/cad-format-converters.md) — Imports and exports geometry in STEP, IGES, and BREP formats for industry-standard interoperability.

### Business & Productivity Software

- [CAD File Importers and Exporters](https://awesome-repositories.com/f/business-productivity-software/cad-document-workflows/cad-file-importers-and-exporters.md) — Imports and exports STEP, IGES, and BREP files for industry-standard CAD interoperability.

### Data & Databases

- [Profile Extrusions and Revolves](https://awesome-repositories.com/f/data-databases/sqlite-drivers/sqlite-storage-adapters/sqlite-or-postgresql-storage/profile-extrusions-and-revolves.md) — Sweeps 2D sketches along paths or rotates them around axes to generate 3D solid geometry. ([source](https://cdn.jsdelivr.net/gh/xiangechen/chili3d@main/README.md))
- [CAD Document Managers](https://awesome-repositories.com/f/data-databases/data-collections-datasets/collection-lifecycle-management/document-storage-managers/cad-document-managers.md) — Creates, opens, saves, and imports or exports models in STEP, IGES, and BREP formats. ([source](https://cdn.jsdelivr.net/gh/xiangechen/chili3d@main/README.md))

### Programming Languages & Runtimes

- [Assembly Tree Organizers](https://awesome-repositories.com/f/programming-languages-runtimes/programming-utilities/data-structure-type-helpers/data-structures/hierarchical-tree-structures/hierarchical-tree-visualizers/assembly-tree-organizers.md) — Organizes components into a nested parent-child structure for managing large models with flexible grouping.

### Software Engineering & Architecture

- [CAD File Format Support](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/plugin-format-adapters/file-format-plugin-support/cad-file-format-support.md) — Imports and exports STEP, IGES, and BREP files for industry-standard CAD interoperability.

### User Interface & Experience

- [Geometric Snapping Tools](https://awesome-repositories.com/f/user-interface-experience/alignment-utilities/geometric-snapping-tools.md) — Aligns new elements precisely to existing points, edges, faces, or workplanes using visual guides. ([source](https://cdn.jsdelivr.net/gh/xiangechen/chili3d@main/README.md))

### Web Development

- [Undo-Redo History](https://awesome-repositories.com/f/web-development/history-management/undo-redo-history.md) — Records each modeling operation as a reversible command object for full undo and redo support.
