Artifex is an AI-driven engineering tool that acts as a copilot designed to simplify CAD workflows by enabling natural language-driven design. With Artifex, you can describe your ideas in plain English, and it will translate them into complex 3D CAD models within FreeCAD. Built as a macro, Artifex leverages state-of-the-art APIs like OpenAI, Claude and Mistral AI to provide real-time design assistance.
- Text-to-CAD: Transform natural language descriptions into CAD models.
- Real-time AI Assistance: Get instant feedback and suggestions for design improvements.
- Multi-API Support: Compatible with OpenAI, Claude and Mistral AI APIs.
- Open-Source and Extensible: Built to encourage community contributions and enhancements.
-
Install FreeCAD
Download and install FreeCAD from the official website. -
Clone the Repository
Clone this repository to your local machine:git clone https://github.com/islamnurdin/Artifex.git cd Artifex
-
Set Up API Keys
Obtain API keys for the required service:- OpenAI API: Sign up here.
- Claude API: Sign up here.
- Mistral AI API: Sign up here.
Configure the keys as environment variables:
api-key = "your-openai-key" OPENAI_API_KEY = "your-claude-key" MISTRAL_API_KEY = "your-mistralai-key"
-
Load the Macro in FreeCAD
- Open FreeCAD and navigate to
Macro > Macros...
. - Load the
Artifex-Anthropic.FCMacro
,Artifex-OpenAI.FCMacro
orArtifex-MistralAI.FCMacro
file from thesrc/
directory. - Click Run to start using Artifex.
- Open FreeCAD and navigate to
Artifex uses AI to process natural language inputs and generate 3D CAD models:
- Input Design: You describe your design in text, such as:
"Create two spheres (20mm diameter) connected by a cylinder (20mm diameter, 200mm height)." - AI Processing: Artifex uses OpenAI or Claude to interpret your input and create a script for FreeCAD.
- Model Generation: FreeCAD executes the script, generating a precise 3D model.
Artifex/
src/ # Macro source files
Artifex_OpenAI.FCMacro
Artifex_Claude.FCMacro
Artifex-MistralAI.FCMacro
docs/ # Documentation
examples/ # Example input and output files
README.md # Project documentation
LICENSE # MIT License
CONTRIBUTING.md # Contribution guidelines
Contributions are welcome! Please read the CONTRIBUTING.md for guidelines.
- Bug Reports: Open an issue describing the problem.
- Feature Requests: Suggest new features via issues.
- Pull Requests: Submit code improvements or fixes.
- Fork this repository.
- Create a new branch for your feature or fix:
git checkout -b feature-name
- Commit your changes with clear messages:
git commit -m "Add feature X"
- Push to your branch and open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
- Website: Artifex.com
- Twitter: Izzy on X