- Published on
Introducing smol developer- Your Personal Junior Developer
- Authors
Introducing smol developer- Your Personal Junior Developer
Are you tired of manually setting up codebases for your projects? Do you wish you had a junior developer who could scaffold an entire codebase for you based on a product spec? Look no further! Meet smol developer, a prototype "junior developer" agent that can generate code for you, making your development process faster and more efficient.
What is smol developer?
smol developer, also known as your own personal junior developer, is a prototype AI agent that can scaffold an entire codebase for you based on a product spec. Unlike traditional code generation tools that provide rigid starters for specific frameworks, smol developer allows you to develop your own scaffolding prompt in a tight loop with the agent. It is designed to be helpful, harmless, and honest, providing you with code that is simple, safe, and smol (less than 200 lines of Python and Prompts).
How does it work?
The workflow with smol developer is human-centric and coherent. You start by writing a basic prompt for the app you want to build. Then, the main.py
script generates the code based on your prompt. You can run and read the generated code, manually identify any errors, and even paste the error into the prompt just like filing a GitHub issue. For additional help, you can use the debugger.py
script, which reads the entire codebase and provides specific code change suggestions.
The iterative process allows you to continuously refine your prompt and generate code that meets your requirements. The AI is only used as long as it adds value, and you can take over the codebase from your smol junior developer whenever you want.
Benefits and Use Cases
The use of smol developer comes with several benefits. First, it saves you time and effort by automating the code generation process. Instead of manually setting up a codebase, you can rely on smol developer to do it for you. This is especially useful for repetitive tasks or when you need to quickly prototype an idea.
Second, smol developer allows you to focus on the high-level aspects of your project. By offloading the code generation to the AI agent, you can spend more time on designing the architecture, defining the business logic, and implementing the core features of your application.
Third, smol developer is a great tool for learning and experimentation. It provides a hands-on experience with AI-enabled code generation and allows you to explore different prompts and code generation techniques. You can use it to gain insights into how AI can assist in the development process and improve your own coding skills.
Future Directions
The smol developer project has several exciting future directions. One direction is to enable smol developer to take over an existing codebase and bootstrap its own prompt. This would allow the agent to analyze an existing codebase and generate a prompt that captures its functionality. This could be useful for maintaining and extending legacy codebases.
Another direction is to improve the feedback loop and reduce the time it takes to generate code. Currently, the process can be slow, taking a few minutes to generate code with the AI agent. The team behind smol developer is actively working on optimizing the performance and reducing the generation time.
Additionally, there are plans to enhance the smol developer ecosystem by supporting different programming languages and frameworks. Currently, smol developer is primarily focused on Python, but there are forks and alternative implementations for JavaScript, TypeScript, C#, and Golang. This allows developers to leverage smol developer in their preferred programming language and ecosystem.
Conclusion
smol developer is an innovative prototype that brings AI-enabled code generation to the hands of developers. With its human-centric and coherent workflow, smol developer empowers developers to quickly scaffold codebases based on product specs. It saves time, allows for experimentation, and enables developers to focus on the high-level aspects of their projects. With ongoing development and future directions, smol developer has the potential to revolutionize the way developers build and maintain codebases.
Give smol developer a try and experience the power of having your own personal junior developer by your side!
Note: The smol developer project is actively seeking more examples and contributions. If you have a use case or an alternative implementation, feel free to contribute and join the smol developer community.