How I supercharged my programming speed with an open source app
Have you ever wished you could just send your files to an AI and have it do the coding for you? I certainly did. That’s why I built Speed, an open-source app that’s changed the way I code.
The initial idea
The idea started as a simple experiment. I was already using some AI tools here and there, but it was not good enough. There was still a room for productivity increase. I wanted to see if I could accelerate my coding workflow by using an AI to handle some of the heavy lifting. I wrote a script in Node.js that could take my prompt, along with a few files, and generate some code. It was surprisingly fast and, more often than not, the generated code worked perfectly. Plus, it was cheap to run.
How it works
The process is straightforward. Let’s say I’m building a property management app. I start by asking the AI to write a TypeScript type that represents a property. Once I’ve reviewed and corrected the type, I add the file path containing these types into my script. Then, I ask the AI to generate a Zod schema based on that type.
I repeat this process for the database schema, the GraphQL schema, and the resolvers, both on the server and client sides. Essentially, I lay down the foundation (types and schemas) and let the AI take it from there, generating the necessary code based on these patterns ; such as add, update, remove and a property.
I would update these files by adding code to handle translations and errors, and use them as examples to generate other files of the same type.
When I need to add a new element, like a tenant in our property management app, I just serve the files related to the property and ask the AI to generate the same for the tenant. By taking it step by step , creating the types, schemas, and so on, I can produce code much faster. Sometimes it feels like I’m working five, ten, or even fifty times faster. I’ve been able to write more code in a day than I used to in ten days, even while using other AI tools.
Advantages
The biggest advantage of this approach is the speed. By letting the AI handle repetitive tasks, I’ve been able to ship more code and decrease the mental energy needed to reach the same point. However, it’s not a magic solution for everything. Some parts of the code are still too complex for the AI to fully understand and generate on its own. But even in these cases, if I give it clear instructions and provide relevant files as examples, it significantly speeds up the process. Although there is some code that the LLM is not able to handle at all.
Challenges and improvements
Initially, using a script to manage everything worked well. But as my codebase grew, so did the list of files in the script. It started taking longer to choose the right files and directories for the prompt. Sometimes I’d forget to include important files, or I’d accidentally include the wrong ones. On top of that, the script was writing the AI’s response into a .txt file, which wasn’t as practical as having it in Markdown.
I realized I needed something more robust , an app that could handle the growing complexity and make the whole process even smoother.
A new start
That’s when I decided to build an app. Not only did it solve a problem, but it also gave me a chance to give back to the developer community that has helped me so much. It’s my first open-source project, and while it’s not perfect, I’m excited to learn and improve. If you want to contribute or need some help, feel free to reach out. I’d love to collaborate and see where we can take this project.
Check out the repo at https://github.com/AtWeacle/speed