The first commit of Edicek is from March 20, 2025. Collections are from March 23. Folders, folders inside folders, the whole tree, in the web app and in the backend.
On iPhone and iPad they came out last week, in release 1.13. Nineteen months later.
TL;DRCollections had a finished backend from day three and still took nineteen months, two failed attempts and five days of real work to reach the phone. Build the first version fast and hide it behind a feature flag, get the data structure right, and then don't rush the release: going back to what already exists is worth more than adding five more half-finished things.
Two attempts that didn't work
In February I wrote that the first feature I ever built still wasn't public. It sat behind a feature flag, and people were asking for it.
I started writing the iOS app in Swift at the end of October 2025, when the web app had already been around for seven months. From how I used it and where I saw the project going, I was dead sure nobody would need collections, and I didn't plan for them in its data model at all. It was one of my first native iPhone apps in Swift, I was learning as I went, and cards were one of the first models I had to build. I forgot about collections. Or, honestly, I just didn't bother.
So adding them later felt like a superhuman feat. I kept arguing with myself: should I improve other things in the app instead? Would people even use collections? Or should I just build them? And even when I decided to build them, it took me basically two tries before I settled on how to do it. One of them I actually merged into main, but the change was so huge that I couldn't get a grip on it or even process it in my head.
In March or April I finally tried to bring them to iOS. It grew into eight places and a handful of edge cases I hadn't seen coming, and I put it away and fixed the sidebar instead.
Two things held me back. I couldn't see how people would even get to collections, because the main navigation wasn't built with them in mind. Putting them in the sidebar didn't make sense either, since that's where past conversations live. I kept moving things around and couldn't figure it out. The other thing was the data model, and that came down to skill. I don't see it as a mistake: if I started with a new language today, I know I'd end up in exactly the same place.
In September I started again, from scratch. By then I had a fairly long stretch of development behind me and several releases on the App Store, so I knew a bit more. One mistake I kept making before was trying to fix everything at once, in one panicked burst of improving the app. It always ended the same way: I couldn't review my own code, and I no longer knew what each part of the app did.
This time I told myself to go slower, in small pieces with tiny commits, and to merge every piece in whatever state it was, hidden behind a feature flag. I had to accept that the first implementation wouldn't go out to people. I just needed it in the code, so I could keep iterating on it. And that let me move really fast. I got a version into the iOS app behind the flag, so a few people could see it. I thought it was tragic. That's exactly why I didn't release it. It didn't feel good enough, and I knew it.
Then something clicked. I was looking at how the ChatGPT app handles projects: you create one, give it an icon and a color, and manage them all in one place. And I thought, this is how I want collections to look in Edicek.
I built the real one in five days.
The backend was already there
The funny part is that about 98% of the backend had been there since the start of the project. For the final version I added two things: an icon and a color for each collection.
If someone had handed me just those two as a backend task, they would have taken fifteen minutes.
Everything else, the months, the two attempts, the five days, went into the iOS app: how it looks and feels there. The backend was never the problem.
A month and a half of old features
Release 1.13 is the biggest Edicek release so far, and most of it isn't new. In the last month and a half I:
- animated some of the states
- redid the sidebar, including how past conversations look in it
- built collections on iOS
- changed the bottom bar
- changed the navigation on the Mac
- made a new quick menu for creating a bookmark
- replaced the blur on sensitive cards with a little paper blind that rolls down
Most of those things have been in the app for months. Instead of firing off more and more features, I'm trying to make the app more personal, get it moving a bit, give it some soul.
The paper blind is my favorite example. The blur it replaced was slowing the app down, and it never even hid things the way I wanted. The blind fits Edicek because Edicek is a playful brand. A blur looked like any other app.
If I had released collections in the state they were in six weeks earlier, I know they would have made the product worse. I'm convinced these six weeks are worth more to the people using Edicek than five more half-finished features would have been.
How I build now
I agree that the first version should be fast. It just doesn't have to be public. Mine live behind feature flags.
Do the backend early, because it's the part that rarely changes. Get the data structure right, so it doesn't block or limit where the feature goes later.
Then don't rush the release. Keep coming back to the things that are already done.









