CADAM AI: Free AI Text-to-3D & Image-to-3D Model Generator

An open-source, AI-powered tool that turns your text descriptions and images into parametric 3D models. Export to STL or SCAD formats.

CADAM is a free, open-source AI tool that transforms natural language descriptions and images into customizable 3D CAD models.

It transforms text prompts or visual references into customizable CAD designs that can be exported for 3D printing or further modification in OpenSCAD.

Features

  • AI-Powered Generation: Converts natural language descriptions and uploaded images into functional 3D models using advanced AI algorithms.
  • Parametric Controls: Provides interactive sliders that allow instant adjustments to model dimensions without requiring AI regeneration.
  • Multiple Export Formats: Supports both STL files for direct 3D printing and SCAD files for further editing in OpenSCAD.
  • Browser-Based Operation: Runs completely in web browsers without requiring software installation or powerful hardware.
  • Library Support: Includes BOSL, BOSL2, and MCAD libraries for enhanced modeling capabilities.
  • Real-time Preview: Uses Three.js to display instant visual feedback as parameters change.
  • Parameter Extraction: Automatically identifies and exposes adjustable dimensions from generated models.
  • Custom Font Support: Features built-in Geist font support for incorporating text elements into models.

Use Cases

  • Rapid Prototyping: Quickly generate and iterate on 3D models for product designs or mechanical parts.
  • Custom Product Design: Create personalized items like phone stands or jewelry holders without needing to be a CAD expert.
  • Educational Purposes: A great tool for students and beginners to learn the basics of 3D modeling and CAD.
  • Hobbyist Projects: Perfect for makers and hobbyists who want to bring their creative ideas to life.

How to Use It

1. Visit CADAM’s live demo to access the online tool.

2. Type a natural language description of your desired 3D model or upload an image that represents the object you want to create. The description should be specific enough to convey the basic shape and any important features. For example, “Create a cylindrical vase with a narrow neck and flared base” provides clear geometric guidance.

CADAM Prompt Upload Image

3. Choose between two AI model options based on your needs. Adam provides faster responses optimized for iterative design work, while Adam Pro offers enhanced capabilities that take longer to process but deliver more sophisticated results.

4. Click the Run button to initiate the AI generation process. The system analyzes your input and creates both the 3D model geometry and the underlying OpenSCAD code that defines the parametric structure.

CADAM Generated Model

5. Use the parameter controls to fine-tune your model. The parameters include height, radius measurements, wall thickness, twist angles, segment counts, and color properties. These controls update the model in real-time without requiring regeneration.

CADAM Parameters

6. Export your finished model in either STL format for immediate 3D printing or SCAD format for further modification in OpenSCAD or other compatible software.

CADAM Download Model

Self-Host CADAM

The live demo is a great way to try out CADAM, but for stable and high-quality results, self-hosting is the way to go. This gives you full control over the environment and connects directly to your own API keys.

1. Before you start, make sure you have these tools installed:

  • Node.js and npm
  • Supabase CLI
  • ngrok (this is necessary for letting the AI model access your local images)

2. Clone the source code from GitHub.

# Clone the repository
git clone https://github.com/Adam-CAD/CADAM.git
# Navigate into the project directory
cd CADAM

3. Install all the required Node.js packages.

npm install

4. You’ll need to set up two separate environment files for the frontend and the backend functions.

For the Frontend:

  1. In the root directory, copy the template file: cp .env.local.template .env.local
  2. Open the new .env.local file and add your Supabase URL and anon key. You’ll get these when you start Supabase in the next steps.
VITE_SUPABASE_ANON_KEY="<Your Supabase Test Anon Key>"
VITE_SUPABASE_URL='http://127.0.0.1:54321'

For Supabase Functions:

  1. Navigate to the Supabase functions directory and copy the template: cp supabase/functions/.env.template supabase/functions/.env
  2. Open the new supabase/functions/.env file and add your API keys and ngrok URL.
ANTHROPIC_API_KEY="<Your Anthropic API Key>"
ENVIRONMENT="local"
NGROK_URL="<Your ngrok URL>" 

5. CADAM uses the Anthropic Claude API for image analysis, which requires a publicly accessible URL to fetch the image. ngrok creates a secure tunnel to your local machine to make this possible.

  1. If you don’t have ngrok, install it:
# Via npm
npm install -g ngrok
# Or via Homebrew on macOS
brew install ngrok
  1. In a new terminal window, start an ngrok tunnel pointing to your local Supabase instance, which runs on port 54321.
ngrok http 54321
  1. ngrok will give you a public URL (e.g., https://random-string.ngrok.io). Copy this URL and paste it as the NGROK_URL value in your supabase/functions/.env file.

6. Now you can start the Supabase backend and the frontend development server.

  1. Start all the local Supabase services. This will also give you the local URL and API keys you need for your .env.local file.
npx supabase start
  1. Serve the edge functions. The --no-verify-jwt flag is used for local development.
npx supabase functions serve --no-verify-jwt
  1. In your original terminal window (in the project’s root directory), start the frontend development server.
npm run dev

Your self-hosted CADAM application is running and accessible at http://localhost:5173.

Pros

  • No CAD experience required: Natural language interface makes 3D modeling accessible to beginners.
  • Instant customization*: Parametric sliders allow quick adjustments without re prompting the AI.
  • Open source advantage: Self hosting option provides control over performance and privacy.
  • Cost-effective: Completely free to use with no subscription requirements.
  • Format flexibility: Supports both 3D printing (STL) and coding (SCAD) workflows.
  • Library integration: Built in OpenSCAD libraries expand design possibilities.

Cons

  • Learning curve: Specific prompting techniques yield better results than vague descriptions.
  • Processing limitations: Complex designs may exceed browser based computation capabilities.
  • Quality variability: Output quality depends on prompt specificity and AI interpretation.
  • Local setup complexity: Self hosting requires technical knowledge of Node.js and Supabase.

Related Resources

  • OpenSCAD Documentation: Guide to the underlying CAD language that powers CADAM’s parametric capabilities.
  • BOSL2 Library Guide: Documentation for one of the advanced libraries integrated into CADAM for enhanced modeling functions.
  • Three.js Learning Resources: Tutorials for understanding the 3D rendering technology used in CADAM’s preview system.
  • 3D Printing Basics: Fundamental concepts for users planning to print their CADAM-generated models.
  • FreeCAD Software: Open-source CAD alternative for users who need more advanced modeling capabilities beyond CADAM’s scope.

FAQs

Q: Can CADAM handle complex mechanical parts with precise tolerances?
A: CADAM excels at generating basic geometric shapes and simple mechanical components, but it’s not designed for precision engineering applications. The AI interpretation of natural language descriptions may not capture the tight tolerances required for mechanical assemblies. For complex parts requiring specific tolerances, traditional CAD software remains the better choice.

Q: How does the self-hosting option differ from the online version?
A: Self-hosting provides more stable performance and eliminates dependency on external servers. The setup process requires Node.js, Supabase CLI, and an Anthropic API key, but offers better control over processing speed and availability. The online version at adam.new/cadam is suitable for testing and light usage, while self-hosting supports production workflows.

Q: Can I import existing CAD files into CADAM for modification?
A: CADAM is designed for generation rather than import functionality. It works best when starting from natural language descriptions or reference images. If you need to modify existing CAD files, traditional CAD software or tools like FreeCAD would be more appropriate.

Q: Are there limits on commercial use of models generated by CADAM?
A: Since CADAM is open-source under the GPLv3 license, generated models can be used commercially.

Leave a Reply

Your email address will not be published. Required fields are marked *

Get the latest & top AI tools sent directly to your email.

Subscribe now to explore the latest & top AI tools and resources, all in one convenient newsletter. No spam, we promise!