Inspiration 💡
If I asked you to design a Bluetooth-controlled door lock, would you know how to start? What components would you need? How would you connect them and create a prototype to optimize the design? Several pain points in hardware development make even the most experienced engineers feel frustrated at times. Not only is it difficult for beginners to understand the physics behind circuit designs, but it's also time-consuming for experienced engineers to manually interpret and debug hardware prototypes.
This revelation inspired us to build Easyware, an AI-native application that transforms your project ideas into interactive diagrams. Easyware generates TypeScript code that integrates seamlessly with tscircuit.com, allowing users to visualize their ideas using PCB layouts, schematics and 3D models.
Whether you're a beginner or an expert, our tool empowers engineers to focus on what they do best: solving problems, building hardware, and pushing ideas forward.
What it does 🚀
With Easyware, turning a hardware idea into a working prototype takes less than a minute. Once the user inputs their project idea, Easyware will generate a detailed component list, generate the firmware code and render the circuit prototype in PCB, schematic, 3D layouts!
How we built it 🛠️
When a user submits their project idea, Easyware queries Perplexity to generate a reliable, well-sourced list of components and citations. We used prompt engineering to improve response accuracy and provide key metadata for the components.
Once Easyware generates this list, we leverage Claude’s chain of thought reasoning to produce clean, well-structured TypeScript code for tscircuit.com integration. We applied prompt engineering to enforce proper naming conventions and incorporate net components that prevent infinite circuit connection loops. To make these responses more accurate, we used Letta to store the context of prior API calls in memory blocks, allowing our system to make logical decisions that are informed by multiple interactions. These refined code responses are then sent to the client side, where our front end interacts with tscircuit.com to transform the generated code into detailed schematics, PCB layouts, and 3D circuit diagrams.
Challenges we ran into 🚨
Our biggest challenge was generating a visual schematic based on a list of hardware components. Our initial approach was generating an HTML file that renders these components and their connections. However, the inconsistent results and visually unclear diagrams fell short of the accuracy we were hoping to achieve. After exploring alternative schematic formats, we attempted to create a compiler that converts a JSON object into TypeScript code for tscircuit.com integration. However, this approach led to significant complications that hindered the latency and performance of our application. Eventually, we recognized the power of prompt engineering and how detailed prompts outlining restrictions, documentation and coding conventions would improve the accuracy of existing AI models. Thus, through multiple iterations of testing and generating hardware prototypes, we eventually built an application that converts user ideas into interactive prototypes.
Accomplishments that we're proud of 💪
Despite all the failed approaches we attempted during the development process, we used logical reasoning and discussion of technical tradeoffs to reach our final product. This experience not only deepened our understanding of hardware design and prompt engineering but also highlighted the power of collaboration in solving complex problems.
What we learned 🍎
One of the most critical steps of working with LLMs is crafting the right prompt. By providing rich examples, detailed documentation from credible sources, and clear constraints on what type of information we want to output, Claude could provide detailed diagrams that replicate accurate circuit logic.
What's next for Easyware❓
The biggest challenge in generating well-designed and reliable hardware lies in the lack of accessible, high-quality datasets. Since several hardware data are protected as intellectual property, this limits our ability to train and improve AI tools based on real-world data. Our goal is to create a product that utilizes credible data from hardware engineers to generate valuable feedback that will improve future iterations. We plan to implement a component search system that supports databases containing widely used components, technical specifications and usage context to enhance the accuracy of Easyware outputs. Additionally, we would love to expand our user base by collaborating with renowned hardware manufacturers to support the open-source hardware community.
Built With
- claude
- express.js
- letta
- perplexity
- react




Log in or sign up for Devpost to join the conversation.