# Text-to-CAD Supported File Formats: A Complete Guide to CAD, Mesh, and Drawing Exports

> Explore Text-to-CAD supported file formats including STEP, STL, 3MF, GLB, DXF, and G-code. Learn how to generate, validate, and export CAD artifacts efficiently.

- Repository: [earthtojake/text-to-cad](https://github.com/earthtojake/text-to-cad)
- Tags: getting-started
- Published: 2026-08-04

---

**Text-to-CAD supports STEP, STL, 3MF, GLB, DXF, G-code, URDF, SRDF, and SDF formats through modular skills that generate, validate, and export CAD artifacts.**

The earthtojake/text-to-cad repository provides a modular architecture where dedicated skills handle specific export types. Each skill defines its own supported file formats, from canonical 3D CAD geometry to 2D drawings and robot description files. Understanding which skill produces which format ensures you request the correct export for your manufacturing or simulation workflow.


## Core 3D CAD Formats (STEP, STL, 3MF, GLB)

The **CAD skill** orchestrates the primary 3D geometry pipeline. According to [`plugins/cad/skills/cad/references/supported-exports.md`](https://github.com/earthtojake/text-to-cad/blob/main/plugins/cad/skills/cad/references/supported-exports.md), this skill always produces **STEP** (or **STP**) as the canonical format while optionally generating mesh side-cars.

### STEP as the Canonical Format

All 3D models originate as STEP files. The repository enforces a strict policy documented in the supported exports reference: *"Generate and validate STEP first, then export requested side-cars from the same `scripts/step` run."* This guarantees that all derived meshes share geometric consistency with the master CAD file.

### Mesh Side-car Formats

From the validated STEP file, the CAD skill can generate three mesh formats:

- **STL** (`.stl`) – Standard triangulated mesh for legacy 3D printing workflows.
- **3MF** (`.3mf`) – 3D Manufacturing Format with color and material support.
- **GLB** (`.glb`) – Native binary glTF 2.0 for web viewing and modern pipelines.

The GLB output is a native glTF file, not the hidden topology artifact used internally by the CAD Viewer.


## 2D Drawing Exports (DXF)

For 2D patterns, flat layouts, and templates, the **DXF skill** handles AutoCAD drawing generation. Defined in [`skills/dxf/SKILL.md`](https://github.com/earthtojake/text-to-cad/blob/main/skills/dxf/SKILL.md), this skill exports **DXF** (`.dxf`) files through the `gen_dxf()` function.

The CAD skill documentation explicitly delegates 2D work: *"For 2D DXF output, use the `$dxf` skill."* This separation exists because 2D drawing generation often follows different workflows, such as projecting faces or unfolding geometry, rather than exporting from 3D side-cars.


## Implicit CAD Mesh Exports

The **Implicit CAD skill** samples signed-distance fields and exports meshes without STEP intermediates. As documented in [`plugins/cad/skills/implicit-cad/SKILL.md`](https://github.com/earthtojake/text-to-cad/blob/main/plugins/cad/skills/implicit-cad/SKILL.md), the skill explicitly lists supported export formats: *"`glb`, `stl`, and `3mf`."*

This skill re-uses the same three mesh formats as the CAD skill but extracts them from implicit mathematical representations rather than boundary representations.


## Manufacturing Toolpaths (G-code)

The **G-code skill** converts validated meshes into printer-ready instructions. Located in [`skills/gcode/SKILL.md`](https://github.com/earthtojake/text-to-cad/blob/main/skills/gcode/SKILL.md), this skill produces **G-code** (`.gcode`) files suitable for FDM printers.

The skill consumes mesh side-cars (STL, 3MF, or GLB) and processes them through slicer backends. According to [`skills/gcode/references/slicer-backends.md`](https://github.com/earthtojake/text-to-cad/blob/main/skills/gcode/references/slicer-backends.md), the underlying Trimesh library handles the input mesh parsing, supporting the standard triangulated formats generated by the CAD and Implicit CAD skills.


## Robot Description Formats (URDF, SRDF, SDF)

For robotics simulation and visualization, the **URDF skill** generates structural description files. According to [`skills/urdf/SKILL.md`](https://github.com/earthtojake/text-to-cad/blob/main/skills/urdf/SKILL.md), supported formats include:

- **URDF** (`.urdf`) – Unified Robot Description Format.
- **SRDF** (`.srdf`) – Semantic Robot Description Format.
- **SDF** (`.sdf`) – Simulation Description Format.

These XML-based formats describe robot kinematics, collision geometry, and simulation properties distinct from the pure geometry exports handled by other skills.


## Cloud Manufacturing Integration

The **SendCutSend skill** prepares files for cloud-based CNC manufacturing services. As documented in [`skills/sendcutsend/SKILL.md`](https://github.com/earthtojake/text-to-cad/blob/main/skills/sendcutsend/SKILL.md), this skill supports **DXF** and **STEP/STP** formats for pre-flight validation before submission to cutting services.


## How to Export Each Format

Below are practical CLI snippets showing how to request each file type. All examples assume you are in the repository root with the appropriate Python or Node environment active.

### Export STEP with Mesh Side-cars

```bash
python scripts/step path/to/model.py \
  --stl meshes/model.stl \
  --3mf meshes/model.3mf \
  --glb meshes/model.glb

```

This produces `model.step` (canonical) plus the requested mesh files in the `meshes/` directory.

### Export Native GLB Only

```bash
python scripts/step path/to/model.py --glb meshes/model.glb

```

### Generate 2D DXF Drawings

```bash
python scripts/dxf dxf_profile.py --output drawings/profile.dxf

```

### Export Implicit CAD to Mesh

```bash
node scripts/export.mjs path/to/model.implicit.js \
  --format stl --output meshes/model.stl

```

The `--format` flag accepts `stl`, `3mf`, or `glb`.

### Slice Mesh to G-code

```bash
python scripts/gcode meshes/model.stl \
  --slicer slic3r \
  --output prints/model.gcode

```


## Summary

- Text-to-CAD uses a modular **skill architecture** where each skill manages specific file formats and export pipelines.
- The **CAD skill** produces **STEP** as the canonical format, with optional **STL**, **3MF**, and **GLB** side-cars generated from the same validated geometry.
- The **DXF skill** handles 2D drawing exports via the `gen_dxf()` function, separate from the 3D pipeline.
- The **Implicit CAD skill** exports **GLB**, **STL**, and **3MF** directly from signed-distance fields.
- The **G-code skill** generates printer toolpaths by slicing mesh inputs using Trimesh-compatible slicer backends.
- **Robot description files** (URDF, SRDF, SDF) are supported through dedicated skills for simulation workflows.


## Frequently Asked Questions

### What is the primary file format in Text-to-CAD?

**STEP** is the canonical format. According to the source code in [`plugins/cad/skills/cad/references/supported-exports.md`](https://github.com/earthtojake/text-to-cad/blob/main/plugins/cad/skills/cad/references/supported-exports.md), all mesh side-cars are generated from the same STEP file to guarantee geometric consistency. This ensures that your STL, 3MF, and GLB exports remain synchronized with the master CAD geometry.

### Can Text-to-CAD export 2D drawings for laser cutting?

Yes. The **DXF skill** generates `.dxf` files suitable for flat patterns and cut layouts. Additionally, the **SendCutSend skill** validates both DXF and STEP/STP formats specifically for cloud-based CNC manufacturing services, ensuring your files meet external fabrication requirements.

### How do I export a mesh from an implicit CAD model?

Use the Implicit CAD skill's export script with the `--format` flag. The command `node scripts/export.mjs path/to/model.implicit.js --format stl --output model.stl` generates the mesh. As implemented in [`plugins/cad/skills/implicit-cad/SKILL.md`](https://github.com/earthtojake/text-to-cad/blob/main/plugins/cad/skills/implicit-cad/SKILL.md), supported formats are limited to **GLB**, **STL**, and **3MF**.

### Does Text-to-CAD support 3D printing workflows?

Yes. The repository supports end-to-end additive manufacturing through the **G-code skill**, which slices **STL**, **3MF**, or **GLB** meshes into `.gcode` toolpaths. The skill interfaces with slicer backends via the Trimesh library, accepting the standard mesh formats produced by the CAD and Implicit CAD skills.