# Smith v0.1.0 - Table of Contents

> Composable, native Elixir CAD with sketches, assemblies, and verified printable exports

## Pages

- [Smith](readme.md)
- [Getting started](getting-started.md)
- [Modeling with functions and pipelines](modeling.md)
- [Workplanes and sketches](sketches.md)
- [Paths, lofts, and shells](paths-and-shells.md)
- [Mechanical parts](mechanical-parts.md)
- [Forming and cutting](forming.md)
- [Extrusion extent and taper](extrusion.md)
- [Project curves onto surfaces](projection.md)
- [Orthographic drawings](drawings.md)
- [Named assemblies](assemblies.md)
- [Joints and assembly poses](joints.md)
- [Exporting printable models and assemblies](exporting.md)
- [Modeling in Livebook](livebook.md)
- [Errors, contracts, and limits](errors-and-limits.md)
- [Changelog](changelog.md)
- [LICENSE](license.md)

## Modules

- Modeling
  - [Smith](Smith.md): CAD recipes built with Elixir functions and pipelines.
  - [Smith.Error](Smith.Error.md): A failed modeling step, optionally associated with an assembly part.
  - [Smith.Model](Smith.Model.md): A deferred sequence of modeling operations.
  - [Smith.Result](Smith.Result.md): An evaluated shape and its BREP content hash.

- Sketches
  - [Smith.Path](Smith.Path.md): An ordered, open chain of world-coordinate edge recipes.
  - [Smith.Plane](Smith.Plane.md): A local, right-handed coordinate frame for sketches and holes.
  - [Smith.Sketch](Smith.Sketch.md): Deferred planar outlines with optional cutouts and corner rounding.

- Selection
  - [Smith.Selector](Smith.Selector.md): Composable queries over the edges or faces of one evaluated body.

- Internals
  - [Smith.Assembly.Frame](Smith.Assembly.Frame.md): Rigid-frame arithmetic used by assembly placement and joint evaluation.
  - [Smith.Features.Hole](Smith.Features.Hole.md): Native evaluation of Smith's hole recipes.

- Assemblies
  - [Smith.Assembly](Smith.Assembly.md): Named solid parts and reference geometry with explicit placement.
  - [Smith.Assembly.Export](Smith.Assembly.Export.md): Verified export bundles for named assemblies.
  - [Smith.Assembly.Joint](Smith.Assembly.Joint.md): An evaluated attachment frame and the member to which it belongs.
  - [Smith.Assembly.Result](Smith.Assembly.Result.md): An evaluated assembly and its placed members.

- Export
  - [Smith.Drawing](Smith.Drawing.md): Orthographic line drawings with visible and hidden edges.
  - [Smith.Export](Smith.Export.md): Part bundles containing geometry files, a preview mesh, and check results.
  - [Smith.Mesh](Smith.Mesh.md): Low-level indexed triangle utilities used by the exporter.

- Livebook
  - [Smith.Kino](Smith.Kino.md): Interactive 3D previews for Livebook through Kino.JS.

