Last updated: 11/9/2026Last verified: 2026-11-08

sand3d

sand3d: LLM-Friendly 3D Modeling as Python Code

2
0

Apache-2.0 Python library for writing 3D objects as short programs over Blender bpy—profiles, solids, edits, frames, joints, and assemblies—built for LLMs. Sandflow presents a 100K 3D-as-code dataset written in it (67K Objaverse, 24K CAD, 9.2K Articraft, 2.3K NVIDIA SimReady, 3.1K AutoMate; 10K+ articulated objects and 36K joints); the README and the 5 November 2026 press release put the Hugging Face programs under CC BY 4.0, and the press release says commercial use is allowed.

Free

What is sand3d?

sand3d is an Apache-2.0 Python library for describing 3D objects as short programs built on Blender's bpy API. Designed for LLM workflows, it provides operations for profiles, solids, edits, frames, joints, and assemblies through a flat s3d interface. Sandflow also presents an accompanying dataset described as 100K 3D-as-code programs, including CAD assets and articulated objects. It is a programming library rather than a standalone conversational 3D generator.

Key Features

  • Python-based modeling: Install with pip install sand3d and import the library with import sand3d as s3d.
  • Compact API for LLM prompts: The documentation describes 70 public names and an API representation of 3,643 tokens, designed to fit into a prompt.
  • Structured geometry: Build objects using profiles, solids, edits, frames, joints, and assemblies.
  • Named geometry: Refer to parts, edges, and faces by name when expressing model structure and edits.
  • Deterministic generation: The supplied documentation states that the same program builds the same mesh, bit for bit.
  • Multiple export formats: Use one export call to write GLB, URDF, USDA, OBJ, or STL, with exported lengths in metres.
  • Unit conventions: The introductory program uses millimetres by default, while exports use metres.
  • Companion dataset: Sandflow reports 100K 3D-as-code programs spanning Objaverse, CAD, Articraft, NVIDIA SimReady, and AutoMate sources, with more than 10K articulated objects and 36K joints.

Best For

Developers building LLM workflows that generate editable Python programs for 3D objects.Researchers studying code-based 3D generation and articulated object representations.Blender users who prefer programmatic construction and named geometry.Robotics and simulation developers preparing articulated assemblies for formats such as URDF or USDA.Teams that need to export programmatically constructed geometry to several common 3D formats.

Pricing

The Python library is free under Apache-2.0. The official README labels the Sand3D programs on Hugging Face CC BY 4.0, and the 5 November 2026 press release states commercial use is allowed. This does not establish identical licensing for every underlying source asset; check each dataset, attribution requirements and source-asset terms.

Pros & Cons

Pros

  • A compact, flat API is explicitly designed to be included in LLM prompts.
  • Code-based object definitions can support inspection, revision, and version control.
  • Named parts, edges, and faces provide explicit references within modeling programs.
  • Includes joints and assemblies alongside basic geometry operations.
  • Supports five export formats through a single export interface.
  • The library is available under the permissive Apache-2.0 license.

Cons

  • Requires working with Python and Blender's bpy ecosystem rather than a standalone no-code interface.
  • The supplied information does not establish a built-in text-to-3D model or hosted generation service.
  • Different modeling and export unit conventions require attention when integrating assets into other workflows.
  • The library's Apache-2.0 license should not be confused with the dataset programs' stated CC BY 4.0 license.
  • This overview is based on official documentation; no hands-on modeling, performance or downstream compatibility tests were performed.
  • The official page describes 100K objects, but its source labels (67K, 24K, 9.2K, 2.3K and 3.1K) sum to about 105.6K. The counting basis is not explained; these are attributed marketing figures, not an independently verified exact total.

FAQ

Details

Platform

LinuxmacOS

Features

  • Short Python programs for profiles, solids, edits, frames, joints, and assemblies over Blender bpy (`pip install sand3d`, `import sand3d as s3d`)
  • Named parts, edges, and faces; the same program builds the same mesh, bit for bit
  • One export call for GLB, URDF, USDA, OBJ, or STL, with lengths in metres; the first program uses millimetres by default
  • Docs state the whole API is 3,643 tokens and 70 public names on one flat s3d. surface, written to paste into a prompt

Languages

en

Known limitations

  • Python 3.13 (recommended) or 3.11. The README says bpy has no wheel for Python 3.12, nor for Intel Macs from bpy 5.2 on (use Python 3.11 there). Docs pair bpy 5.2 LTS with Python 3.13 and bpy 4.5 LTS with Python 3.11; the published CI job runs bpy 5.2 on Ubuntu 24.04
  • A code library plus datasets, not a hosted text-to-3D generator. The 5 November 2026 press release says Sandflow will release its first 3D foundation model in mid-December
  • Samples on sandflow.ai/sand3d use `import sky3d as s3d`. The README and docs install `sand3d` and use `import sand3d as s3d`
  • The docs, README, and product page are in English. No Windows install path is stated

Alternatives

Meshy — Hosted text and image to 3D assets, not an open-source code CAD library
Tripo AI — Hosted text or image to 3D with rigging, not editable sand3d programs
Spline — Browser 3D design, not a Python library over Blender bpy

Rate This Tool

Related Tools