CAD-Eng 🖨️

CAD-Eng will transform the way people approach 3D printing and innovation. By lowering the barrier to entry, we aim to empower anyone to imagine and create with a 3D printer, making advanced and technical engineering creations accessible to all.

Currently there's a large focus on text to text, text to images, text to music, videos, and data. CAD-Eng is on the forefront of text to 3D, and allows the average person to create physical products with just the imagination.

Inspiration 😲

Our inspiration came from the desire to make 3D printing more accessible and user-friendly. We wanted to create a platform where users could easily convert their ideas into 3D printable files without needing extensive technical knowledge.

What it does ⚙️

Our application allows users to select their 3D printer model and input a description of what they want to print. The system then generates a 3D printable file based on the user's input.

How we built it 🛠️

We built the application using Streamlit for the frontend interface, which allows for easy creation of interactive web applications. The backend functionality, including the conversion of text prompts to CAD files and displaying STL files, is handled by custom Python functions. Additionally, users can interact with a chatbot named Oski (powered by Anthropic's Claude) to get help and ask questions about the 3D printing process.

Challenges we ran into ⛰️

We faced several challenges during the development process:

  • New to Coding: Three out of four team members were new to coding. Two of them downloaded Python and Visual Studio Code for the first time during this hackathon, which made the initial setup and learning curve quite steep.
  • KittyCAD API Integration: Integrating with the KittyCAD API was challenging due to minimal documentation. We had to experiment and troubleshoot extensively to get the API calls working correctly.
  • STL Mesh Data: Handling stl_mesh_data vectors involved a lot of trial and error, especially with scaling and file processing. Ensuring the 3D models were displayed correctly required significant tweaking.
  • Environment Files: Creating environment files to keep API keys and other secrets safe was crucial for security, but it was a new concept for some team members.
  • Streamlit Navigation: Navigating and structuring the application in Streamlit posed its own set of challenges, as we had to ensure a smooth and intuitive user experience.
  • GitHub Collaboration: Learning how to collaborate on GitHub using the command line interface (CLI) was a new experience for the team. We had to quickly get up to speed with version control and collaborative coding practices.

Accomplishments that we're proud of 🌟

We are proud of several key accomplishments:

  • Fully Working Product: We successfully developed a fully functional product that converts user prompts into CAD files. This end-to-end solution works seamlessly, from input to generating a 3D printable file.
  • Simplifying CAD for Beginners: We managed to simplify the technical, difficult, and often tedious process of CAD design, making it accessible to beginners and those without an engineering background. This democratizes 3D printing and opens it up to a wider audience.
  • Effective Team Collaboration: Despite varying levels of experience and being new to coding, our team collaborated effectively. We learned to use GitHub for version control and managed to integrate our work smoothly.
  • Secure and Scalable Setup: We implemented environment files to keep API keys and other sensitive information secure, ensuring our application is both secure and scalable.
  • User-Friendly Interface: We created an intuitive and user-friendly interface using Streamlit, making it easy for users to interact with our system and get the desired output without hassle.
  • Overcoming Learning Curves: Our team members quickly adapted to new tools and technologies, such as Python, Visual Studio Code, and the KittyCAD API, showcasing our ability to learn and implement new skills rapidly.

What's next for CAD-Eng 🐣

We have exciting plans for the future of CAD-Eng:

  • Image to CAD File: We aim to develop a feature that allows users to upload images and convert them into CAD files. This will further simplify the design process and make it even more accessible.
  • Broken Objects to Fixed CAD File Part: We plan to introduce a functionality where users can upload images or descriptions of broken objects, and our system will generate a CAD file for the replacement part. This will be incredibly useful for repairs and custom modifications.
  • Social Collaboration Features: We envision a social feature where users can collaborate and build cooperative parts with friends. This will foster a community of makers and innovators, allowing for shared projects and collective creativity.

Built With

Share this project:

Updates