TL;DR Build Fast, Sell Faster
You've probably seen tons of stories online of successful devs who build a SaaS app and starting brining in the money.
Well, we've got another one for you.
And we're not sharing this story with you to make you feel bad, but rather to inspire you and tell you about the dev tools that made it all possible.
First of all, depending on who you are $20,000 may seem like a small amount of money, considering apps are often valued for millions of dollars in the tech world. But for others, $20k can be life changing.
Regardless, each story has some value in it, and this story in particular highlights a few great strategies in selling a small SaaS app:
- Build fast with the right tools.
- Be bold and make your product public ASAP.
This is the simple story of Kaloyan and how he built and sold NuloApp in a matter of weeks.
The Dev Behind the App
Meet Kaloyan Stoyanov, a tech lead by day, and a tinkerer and indiehacker by night who built and sold NuloApp a few days after making it public.
A year before officially launching NuloApp, Kaloyan was diving into the world of "faceless YouTube channels", those social media accounts that post short, simple, sometimes AI-narrated videos. Kaloyan wanted to start his own channel, but noticed that the common tools to generate short-form content from long-form videos, such as Opus.pro, were very expensive.
Seeing how expensive these tools were, Kaloyan decided to take matters into his own hands, building his own tool in just a month.
Initially, his tool automatically created and uploaded shorts, but after some time, when his channel didn’t pick up, he stopped the project. Fast forward to a year later, and YouTube's algorithm brought similar content back into his feed, reigniting his drive.
This time, Kaloyan took it further by transforming his tool into a SaaS product: NuloApp.
Before We Begin
We’re working hard at Wasp to help you build web apps as easily as possible, including creating inspiring content like this!
The easiest way to support our entirely free, open-source efforts is by starring our repo on GitHub: https://www.github.com/wasp-lang/wasp 🙏
All about NuloApp
NuloApp is an AI-assisted tool designed to make video content creation simpler by converting long-form videos into short clips that have the highest chance to capture audience’s attention.
It automatically resizes and captions content from horizontal (landscape) to vertical (portrait) for platforms like YouTube Shorts, Instagram Reels, and TikTok, helping creators push content faster. Here's an example video
Tech Stack Overview
- Full-stack framework: Wasp
- Payment integration: Stripe
- Other tools: OpenCV, FastAPI, Meta's llama, OpenAI's Whisper, LangChain
- Database: PostgreSQL
Programatically Editing Videos
The real genius behind NuloApp is the way that Kaloyan combined a number of tools to programatically edit the longer form videos and podcasts, into short, engaging clips for social media.
First of all, OpenCV, an open-source computer vision library, was used as the main editing tool. This is how NuloApp is able to get the correct aspect ratio for smartphone content, and do other cool things like centering the video on the speaker so that they aren't out of frame when the aspect ratio is changed.
In order to programtically get the correct clips to be extracted, AI tools like Meta's llama-3-70b LLM and OpenAI's Whisper were also used. Whisper allowed for fast speech-to-text transcription, which could then be passed on the llama in order to find the segments worth extracting.
Putting these tools together and accessible via a standalone API was the final step in this process. But this really clever combination of tools was just one part of puzzle. The next problem to solve was how to deliver it all as a SaaS app that users could pay for?
Why Wasp?
When Kaloyan decided to relaunch his tool as a SaaS product, he didn’t have time to spare. He needed a framework that would allow him to build and deploy quickly. That’s where Wasp came in.
“I was looking for a quick and easy-to-use boilerplate with most SaaS app features already pre-built so I could deploy faster,” says Kaloyan. Wasp’s open-source SaaS boilerplate starter, with well-structured documentation, alongside its responsive Discord support, made it the ideal choice.
The Impact of Wasp on Development
Kaloyan was particularly impressed with how Wasp simplified complex tasks that would normally take much longer to implement. From setting up Google logins and dark mode switches to creating hourly jobs, the development process was smoother than expected. “Everything from enabling Google logins to creating hourly jobs I badly needed was way too easy to set up”.
If you're considering Wasp, Kaloyan’s advice is clear: Wasp is easy to get started with and flexible enough to build what you need without adding unnecessary complexity. For Kaloyan, Wasp was ideal because it handled the boilerplate while still giving him the freedom to customize as required. "The documentation is also solid, which definitely helps when you're moving quickly.”
Auth and Stripe Integration Made Easy
One of Kaloyan’s least favorite tasks as a developer is building out authentication systems, and he found that even implementing third-party libraries could be frustrating. Fortunately, Wasp’s boilerplate made the process of setting up authentication and pre-configuring Stripe for payments seamless.
Here's what wasp.config
file looks like, through which you can define full-stack auth in a Wasp app.
app myApp {
wasp: {
version: "^0.14.0"
},
title: "My App",
auth: {
// 1. Specify the User entity
userEntity: User,
methods: {
// 2. Enable Github Auth
gitHub: {},
email: {
// 3. Specify the email from field
fromField: {
name: "My App Postman",
email: "hello@itsme.com"
},
// 4. Specify the email verification and password reset options
emailVerification: {
clientRoute: EmailVerificationRoute, //this route/page should be created
},
passwordReset: {
clientRoute: PasswordResetRoute, //this route/page should be created
},
// Add an emailSender -- Dummy just logs to console for dev purposes
// but there are a ton of supported providers :D
emailSender: {
provider: Dummy,
},
},
},
onAuthFailedRedirectTo: "/login"
},
}
And here's a 1 minute demo:
Additionally, the framework's job scheduling features helped Kaloyan avoid the headache of configuring cron jobs on Docker containers.
Fast Acquisition: From Launch to Sale in 24 Hours
Upon launching NuloApp, Kaloyan listed the product on Acquire with the primary goal of gathering feedback from potential buyers about what features or metrics they value most in a SaaS product.
To his surprise, within the first day of listing, he received multiple offers. After a brief meeting with one interested buyer, they quickly agreed on a $20k deal, validating the product's value and market potential.
Next Steps
If you’d like to follow in Kaloyan’s footsteps, this is how to get started with the boilerplate he used.
Open your terminal and install Wasp:
curl -sSL https://get.wasp-lang.dev/installer.sh | sh
From there you only need to run:
wasp new -t saas
That’s it, you’re one step closer to building your first SaaS!
Join us, friend!
So there you have it. Another success story. And it won't be the last!
That's because we've got a strong Discord community of indiehackers and solo devs building successful SaaS apps in their free time.
Join us if you've got questions, are looking for inspiration, or want to share what you're building. Who knows, maybe you and your app will be featured in a future blog post just like this one?
Thanks, and see you next week.
Top comments (6)
The idea that startups/products can be sold via Aquire is still fascinating to me, it is hard to imagine that working out, I would love to read more about how that process happens, and what it looks like.
Sounds like a good topic for a new blog post!
Well, here comes my builder FOMO again...
FOMO IN!
That's a cool project!
Love this story. It is amazing how fast the turnaround from the idea to acquisition is today. Thanks for sharing!