When building an app takes a year, you get precious about your ideas. When it takes a few months, you can afford to be wrong. When it takes 39 days, you stop thinking about building altogether.
From start to finish, Sloper took me about four months to complete—and a work trip carved out a two-week hiatus in that timeline. This was the experience of someone who had never built an app before. Every step was new. Every problem required a detour to learn something I didn't know.
Notionary took me 39 days to build, and mainly because I wasn't blocked by any major new learning curves.
Notionary is an AI Study app that takes in notes, formats them, and produces additional study aids like flashcards, quizzes, and other interactive AI tools. The two main differences in the build process were it's release across all platforms, and it's integration with an LLM API.
I began with the v0/Figma integration just like I did with Sloper, but after two days I moved directly into my own repo and connected it to OpenAI's Codex. I'd used Codex earlier in the summer for some Sloper improvements, so I knew what it was capable of, but I hadn't leaned on it for a brand new project before. Despite some clunkiness with delayed PR reviews, the performance was far and above my previous methods. No more manual copy-paste. No more bouncing between LLMs and VS Code stitching files together.
One thing I noticed when working with Codex is that I was much lazier with my inputs at the beginning. I think this was partly due to how well it was performing with such general instructions. At some point, when the codebase grew larger, the outputs began missing the mark more frequently and I had to give a little more focus to what instructions I was feeding it. Another positive of Codex was that I could start multiple tasks at the same time if I knew they weren't dependent on each other. This alone attributed to some significant velocity gains.
I think the most remarkable part of Notionary's build out was how fast the brand design came. Sure this was rather lightweight lift (app and website), but it does have a distinct brand look and feel. I've never considered brand design a particular strength of mine, but I've created more than a few. And this time around I employed more AI tools that helped speed up the process.
I heavily gravitated toward Duolingo for the brand feel and I knew I wanted a cute and friendly looking fox mascot for the app. So I fed Nano Banana a picture of Duolingo's Owl and asked it for a Fox. One-shotted it. Then I asked for that Fox in a variety of different outfits and ages and positions. I'd take the images from Nano Banana into Figma, remove background, upscale them, have Codex bake them into a component, and done. When I needed a loading animation, I threw one of my Fox images into Grok and turned it into a 6 second loop.
From generating the first Fox image to that final loading asset, 30 minutes. With all the iterating and tweaking in between. It was a shocking revelation of what designers are truly capable of with today's tools.
The experience I gained with Sloper was priceless. There was so much I had to learn the first time around that nothing I undertook with Notionary truly felt novel. Yes, Stripe was new, but it was payments—and I had a foundation from RevenueCat and webhooks to understand it. Android and web platforms were new, but if you've tackled one, the others come quickly. Of everything, I was most unsure about integrating an LLM API, but that was a total non-issue, nothing more than a nested prompt in the code.
Sloper set the foundation and Notionary built on top of it. I learned how to build and now I've learned how to build fast.
If anyone can build anything, the focus shifts to how do I get the right people to see it? That's where I'm stuck now. I have a couple hundred users across two apps, modest double-digit MRR, and a strong distaste for social media marketing. I'm thinking, maybe I can just to build my way out of this problem too.