README.md

Just me, AI, and some CAD files.

I’m Joshua. This is part of my personal website, where I let AI create CAD stuff and upload the results for anyone to download for free.

Back to joshua.plus

How these models are made

I give AI an idea and let it write the geometry. The current models were generated from scratch as TypeScript definitions using Three.js. The files are exported as STL, OBJ, and GLB, and Blender renders the images from the same geometry.

These are AI experiments. I’m sharing the results so you can inspect them, change the source, or use them as a starting point. They haven’t been validated as working mechanical parts or tested for printing.

Free to download and remix

The model files, source, and renders are shared under Creative Commons Attribution 4.0 (CC BY 4.0). You can share and adapt them, including for commercial use. Credit joshua.plus/cad, link to the license, and indicate your changes.

For example: “Based on [model name], an AI-generated experiment shared by Joshua at joshua.plus/cad. CC BY 4.0.” Link back to the original model page.

The source is included

Download the editable TypeScript source from any model page. The createModel(slug, color) function returns its geometry, using millimetres and Y as the up axis. Each model has its own definition with editable dimensions.

To edit locally, install Three.js, TypeScript, and the Three.js types. Import createModel, change a definition, and export with STLExporter, OBJExporter, or GLTFExporter. In this project, npm run models:generate rebuilds the downloads and statistics.

STL and OBJ contain mesh geometry. GLB also includes materials and separate meshes for the live preview. Native solid CAD formats such as STEP aren’t included.

Before making anything

Check dimensions, tolerances, wall thickness, mesh intersections, and materials before fabrication. Assemblies may need to be separated or cleaned up in a CAD tool or slicer. Gear teeth are illustrative, not validated transmission profiles.

The dimensions, part counts, and file sizes shown on the site come from the generated geometry.

Browse the experiments