When I started BrushForge, I honestly just wanted to build a small tool for myself.
I’m a UX/UI designer by day, with a programming background, and I missed actually building things. Not just designing apps for others, but shipping something of my own again.
BrushForge became my excuse to properly get back into coding.
I didn’t expect it to turn into a 1.5-year project across two platforms, with real users, a growing
community, and way more work than I ever planned 😅
But here we are.
A bit of personal context
I also picked up miniature painting again after almost 20 years.
A while back I was dealing with pretty bad insomnia, and painting minis during those sleepless nights helped me more than I expected. Quiet hobby, no pressure, just focusing on tiny details while the rest of the world was asleep.
That’s also where the name MidnightMiniatures comes from.
BrushForge grew out of that same period. I kept running into small annoyances while painting and thought:
“Why isn’t there one place that just has all of this?”
So I started building it.
Starting with iOS (and learning the hard way)
BrushForge began on iOS.
It was my first proper mobile project in a while, and I relearned a lot the hard way: architecture mistakes, performance issues, weird edge cases, and of course users doing things you never expect.
After some time, I decided to also build an Android version.
Ironically, Android ended up becoming the more complete app. Not because it’s better by default, but because I could apply everything I learned from iOS and just build it smarter the second time.
Right now Android has more features and a more active community. Once that version feels stable enough, I’ll bring those improvements back to iOS.
Not vibecoded, but AI definitely helped
When I started this project, “vibecoding” wasn’t even a thing yet.
BrushForge isn’t AI-generated or auto-built. It’s very much hand-made, feature by feature.
That said, AI tools helped a lot along the way. Especially with backend questions (I’m mostly frontend), tricky problems, and exploring different approaches when I got stuck.
For me it worked more like a learning partner than a shortcut.
And I was lucky to have a few friends helping out too.
The hardest parts weren’t coding
Building the app itself wasn’t the hardest part. Two things were much tougher.
1. The paint database
There’s no open-source paint database. No clean API. No easy solution.
So everything has to be done manually: collecting paints, cleaning data, verifying colors, fixing duplicates, and keeping it all up to date.
Some brands were kind enough to share official data (which helps a lot). Others never replied.
It’s slow work, but it’s gradually improving.
2. Finding users (without being annoying)
This one is harder than writing code.
I share the app on Reddit occasionally, but I really try not to spam or push it too hard. Growth is slow and organic.
Still, the feedback I’ve received so far has been very positive, and that honestly keeps me motivated to continue.
Life + work + BrushForge
BrushForge is still a side project.
So it’s:
a full-time job
life stuff
and the app
And recently… twins 😅
So time is limited.
Progress is sometimes slower than I’d like, but that’s okay. This is a long-term project, not a sprint.
About pricing
BrushForge was never meant to make me rich. It’s a hobby project first.
But there are real costs:
- servers and backend
- store fees
- a lot of development hours
And I live in a country with high taxes, so realistically I don’t keep much of what comes in.
I fully understand when people feel the pricing or limits are frustrating. I’m trying to find a balance that keeps the app sustainable while still being fair.
That balance is still evolving.
What’s next?
The goal hasn’t changed.
I want BrushForge to slowly become a solid toolkit for miniature painters. One place with useful tools, without getting in the way of the hobby itself.
Right now I’m focusing on:
- bringing Android and iOS closer together feature-wise
- improving iOS again
- expanding and cleaning up the paint database
- working with more brands
- shipping features based on user feedback
A lot of what exists today came directly from the community, and that’s how I want to keep building it.
Why I keep doing this
At the end of the day, I keep working on BrushForge because I enjoy it.
It helped me reconnect with programming, build something useful, and combine it with a hobby that genuinely helped me during a rough period.
It’s still very much a work in progress.
But it’s a fun one.