From Notion to ClickUp to Building Our Own Task Board in a Day
We now run our entire product-management workflow on a task board we built ourselves in a couple of days. It costs us nothing to run. And the thing that finally pushed us to build it was a storage meter that told us we were using 70 out of 100 megabytes — and then refused to let us work anyway.
Here’s the whole journey.
First there was Notion
We started in Notion, like a lot of small teams do.
Notion was okay. Honestly, “okay” is the right word. It’s a little messy, and it has a huge number of features we didn’t need. Tasks had a way of getting lost between pages. But we needed somewhere to track our work and our progress, and it was good enough, so we used it.
Then came the part that keeps repeating in this story: they wanted us to pay, per user. And for what we were doing — tracking a handful of tasks — paying per head felt silly. We didn’t have money to spend, and certainly not on something this simple. So we asked the obvious question: what’s the alternative?
Then there was ClickUp
That’s how we landed on ClickUp, and for a while it was pretty decent.
Same story on features — far more than we needed — but the free plan was genuinely good. We had four people working in it with no problem at all. We just wanted to track tasks, and it did that.
Until we hit the free plan’s storage limit. One hundred megabytes.
And when I say “hit the limit,” I mean the whole thing basically stopped working. You could still add tasks, but you couldn’t attach any pictures, and features that had worked fine the day before just… stopped. The message was clear: upgrade to keep using ClickUp at all.
So I did the reasonable thing. I went in and deleted a bunch of old tasks and screenshots we didn’t need anymore, and got us down to about 70 megabytes. Comfortably under the limit.
It still wouldn’t let me work. The interface was cheerfully showing 70 out of 100 MB used while simultaneously refusing to function.
The part that made me open a code editor
Here’s where it tips over into comedy.
While I’m locked out under a limit I’m no longer over, I get an automated email: they’d noticed I was looking at their plans, and would I like some help upgrading?
So I replied — like a person, to what I assumed was a person. I explained that I absolutely did not want to upgrade, that I was not over the limit, and could they please just let me use the free tier I was entitled to.
Nothing. No reply at all.
A few days later, another automated email: “Hey, maybe you missed my message…” Clearly a bot, clearly nobody home, clearly nothing was going to get handled by an actual human.
And that was the moment. Okay. Forget this. How hard can this be to make?
Because it wasn’t even that their pricing was outrageous — the cheapest paid tier was around €10 per user per month, which isn’t a fortune. It’s that it’s per user, forever, for the simplest possible tool. Scale that to ten or twenty people and you’re paying a few hundred euros a month for a glorified kanban board. For a team that just wants to see what everyone’s working on, that’s absurd.
So I built one — mostly by talking
The first version of what we now just call Switchly Tasks was, honestly, 99% me directing and Claude implementing.
We — the Switchly team — wired it up to our Cloudflare database, and then I just started iterating: describe what I wanted in plain language, look at it, ask for the next thing. We had a working first version in about forty-five minutes. Then maybe a couple of days of polishing it into something we actually enjoyed using.
The stack is the same one our product already runs on: Next.js 15, React 19 and Tailwind, on Cloudflare Workers with a D1 (SQLite) database, deployed via OpenNext. Running cost, on Cloudflare’s free tier: zero.
Migrating off ClickUp was gloriously low-tech: I pasted screenshots of our old board into the chat, and Claude recreated the tasks from them.
From there, features just accumulated by asking for them:
- board view and list view
- drag-and-drop to reorder
- Markdown task descriptions with screenshots pasted inline
- file attachments with previews
- BUG tags and a Backlog column
- a shareable link per task
- dark and light mode
- a swipe layout on mobile
- filters by assignee, and “created by” stamps pulled straight from the login
- a guard so you don’t lose a description you’re mid-way through editing
Around thirty-five commits later, we had a board shaped entirely around how we actually work — and the team has been living in it as our real task tracker ever since.
The team reviews it the way we review the product
The best part is the feedback loop, which looks exactly like how we build Switchly itself: people drop screenshots into Slack with blunt notes attached. Sometimes in Czech — “světle modrá není moc výrazná 😄” (the light blue isn’t very visible). A few minutes later, it’s fixed and live.
The design genuinely wandered. I thought we should have a Backlog section, so I put it underneath everything — and it just didn’t look good there, so it moved. We added light and dark mode, and the light mode came out a bit too light, which made the tasks hard to read, so that got fixed too. None of these were tickets in a system. They were “hey, this bugs me,” and then they didn’t bug us anymore.
That’s the whole point. I can iterate on it locally, push to git, it gets pulled into the production version, and if there’s anything we don’t like, we can fix it in a minute or two. With Notion and ClickUp there were plenty of workflow things we didn’t like — and the answer was always the same: too bad, and also, pay for it.
We might just give it away
I was talking to Josef about this today, and I keep coming back to the same thought: we should probably just ship it and let people use it for free.
Because I think a lot of people want exactly this. A simple task manager. No fuss, no extra nonsense, not €20 a head, no bolted-on AI feature you never asked for and don’t need for a to-do board, no ads. Just a clean place to track your work that does the job and gets out of the way.
Nothing’s decided, and I’m not going to pretend there’s a signup page waiting. But honestly, I’d love for people to just use it. I don’t need this one to make money — it was never the point. If it’s useful to other small teams the way it’s useful to us, that’s more than enough reason to put it out there.
And with a team as good as the one we’ve built at Switchly, actually shipping something like this to the public is no issue at all. That’s the quiet part of this whole story: the barrier to turning “we built it for ourselves” into “anyone can use it” is now genuinely small.
So — Switchly Tasks, coming soon? Maybe. Haha. Watch this space.
The bigger point
We think this is a small preview of a real shift.
For narrow, internal tools — the kind where you use maybe 4% of what a big platform offers — “build it yourself with AI, on infrastructure you already run” now genuinely beats “subscribe to a horizontal SaaS.” Not for everything. Teams with deep workflows should pay for the tool that serves them well. But for a small team that needs a task board and nothing else, our whole PM stack now costs nothing — and it would still cost nothing at ten or twenty people, because there’s no per-seat meter running in the background.
That last part is really the whole thesis, and it’s funny how neatly it points both directions. We build an AI that answers the phone so a small business doesn’t have to pay for a receptionist per seat, around the clock, to catch every call. And when our own per-seat SaaS stopped making sense, we replaced it with a tool an AI built for us. Same idea, pointed at two different problems.
We’re not just betting that AI agents are useful. We’re running the company on that bet — the product we sell, and the tools we use to build it.
The banner did us a favour.