And for example, if you need, I don't know, just the chat method, you're pulling in the image, the video, the audio and all of this stuff you don't need into your bundle. And what we did next is we had basically live chats every so often. And we basically talked through ideas. So, for example, this is an example from the other day where we were adding multimodality support to image generation. So you can like send reference images and get it to work. And we basically just debated on the API. And because the 10-Stack group has a lot of smart people, they all chime in. Give their opinions. And then we can just refine the API. And for example, this is the idea for the final API, which went through like three or four revisions, which kind of helps us build a great API because if you have a great team behind it, that powers a lot of the cool stuff.
Finally, the came skills. So, for example, after a while, you realize that the output from LLMs is good, but it's not good enough. So what we basically did was write a bunch of skills to help us get the consistency and the quality that we are after. So, for example, if we had tests, what we did was, okay, we don't want the tests to use casts as any because that's just like kills the type safety in the test and you have no idea if it's correct or not. And then, for example, don't overabstract tests, don't skip tests and stuff like that. And then you just write this library of skills that improve the codebase over time. And for example, what we did was we wrote a skill for dogs and whenever we add a new feature, this skill is a quality gate that stops us from shipping it until we actually write really good dogs that cover the new features.
Another problem that we ran into while shipping features and making sure that it all works is that we had no budget for marketing. We are an open-source community and we rely on our sponsors and we don't have a dedicated designer team who can create cool videos for us to promote our new features. So what I did was I used a library called HyperFrames. So it's a remotion alternative. And I created a skill that generates these videos for us. So it helps us promote our new features that we're building and not make it just a footnote on X or whatever. So nobody is like aware of all the cool features that you're shipping. And this in of itself helps us ship these features rather than spending time on like creating these videos because it shortens the amount of time you have to spend on marketing, which we like to spend more time writing code. And finally, the last thing that is kind of cool here is that new problems require new tools. And for example, our docs, when we used LLMs, they would often hallucinate APIs and it was very frustrating. So what I did was I created a small library that basically type checks your documentation, code snippets, and markdown. And it basically checks if, for example, if you've got an import or if your documentation, you change some API, but you forgot to update the documentation, this is going to catch it in CI and fix it.
Comments