Chikọta
A bookmark workspace for capturing, organizing, and finding links, with reminders to revisit saved content and a browser extension for quick capture.

We all save things we think we'll need later.
Tweets on X, articles in browser bookmarks, links buried inside bookmark folders, and tabs we refuse to close because they might be important someday.
The problem is that these things eventually end up scattered everywhere.
I use multiple browsers and, over time, my bookmarks grew across all of them. I also had the habit of leaving important tabs open instead of bookmarking them because I knew there was a good chance I'd forget about the bookmark entirely. I love Arc browser and have been using it as my default browser for over a year, but one thing that frustrated me was how inactive tabs would eventually close & get archived. Whenever that happened, I'd have to dig through my history trying to remember what I had open.
I had also come across browser extensions built specifically for bookmarking, but the few ones I checked out, I found they stored bookmarks locally in the browser. That doesn't solve the problem for me. If my bookmarks live in that browser's local storage, then I still need that particular browser and potentially that particular device to access them. Thus, that defeats the entire purpose of what I wanted:
Save something once, then access it anytime, anywhere, and from any device.
Building Chikọta
Early this year, I built a simple version of this solution for myself. The idea was deliberately straightforward: whenever I found something I wanted to keep, instead of bookmarking it on X, leaving a tab open, or adding it to yet another browser folder, I'd paste the link into Chikọta. Then I could find it later from any device.
Chikọta is an Igbo word meaning "to gather."
The name fits what I was building — a single place to gather all the things on the internet I wanted to come back to.
Bookmarks shouldn't just sit there
While using the first version, I realized another problem with bookmarks: Sometimes, simply saving something isn't enough. There are links I save because I genuinely need to act on them later — this could be an article I want to read, a tool I want to try, documentation I need for a project, or something I need to revisit on a particular day.
So I added reminders.
A bookmark can have a reminder attached to it, and Chikọta can notify me through a device notification or email when it's time to revisit it.
This changed the product slightly in my head. Chikọta wasn't just becoming a place to store links. It was becoming a place to remember why I saved them in the first place.
Rethinking the experience
A few months later, I returned to the project.
The first version worked, but it was very obviously something I had built to solve a problem quickly. I wanted to explore what the product could feel like if I treated the experience and visual design with the same level of attention as the functionality. After all, I'm a Frontend Engineer. Even a private tool I use myself deserves to feel considered.
I looked at a few interfaces and websites, specifically EchoTab, I liked the design choice and I used those as references while designing a second version.
But the redesign wasn't only visual.
I also started thinking about where the act of bookmarking actually happens. Usually, I'm already inside a browser when I discover something worth saving. Opening another website, copying a URL, navigating to Chikọta, and pasting it introduces unnecessary friction. So V2 extends Chikọta outside of the main application.
There’s now a browser extension that lets me right-click a page or link and save it to Chikọta. It opens the app in a new tab and adds the link automatically. The extension is simply a way in; when I’m signed in, the bookmark lives in my Chikọta account and is available across devices.
I also added a desktop widget for quickly accessing bookmarks without needing to open the browser at all. The goal was to make Chikọta less like a destination I had to remember to visit and more like a small utility that was available whenever I needed it.
Version 2
Engineering Chikọta
Stack: Chikọta uses SvelteKit, TypeScript, and Tailwind CSS for the interface. Drizzle ORM and PostgreSQL persist the bookmark library and its relationships.
A few decisions shaped how Chikọta works across these different surfaces:
-
The browser extension is an entry point, not another bookmark store. Right-clicking a page or link opens Chikọta with its details ready to save automatically. I also added a small prompt when a URL is copied. Both flows lead back to the same account-based collection rather than storing bookmarks inside the browser.
-
The desktop experiences follow the conventions of their platforms. WidgetKit on macOS works within fixed sizes and intentionally limits interaction, so anything requiring text input opens the companion app. On Linux, I use a resizable desktop window instead, which allows bookmarks to be added, searched, and organized directly.
-
Desktop access has its own authentication flow. The desktop apps use an account-issued token to communicate with the same bookmark API as the web application, without relying on an active browser session.
-
Saved links remain useful offline. Each desktop app keeps a local copy of the last synchronized collection, so bookmarks can still be browsed and opened when there is no internet connection.
What I learned
Building Chikọta reinforced something I've increasingly come to believe about product design:
The best interface isn't always another interface.
The first version solved the storage problem, but it still required me to adapt my behavior around the product. The browser extension, reminders, and desktop widget came from asking a different question: How can the product adapt to the way I already behave? It also reinforced the difference between making a feature convenient and making the underlying system genuinely accessible.
A browser extension alone wasn't enough. If the data remained trapped inside that browser, I would just be creating another bookmark silo. The extension needed to be an input mechanism, not the database. That distinction shaped one of the core ideas behind Chikọta: the experience can exist across browsers and devices, while the user's collection remains unified. It also became an exercise in balancing engineering and design.
I wasn't designing an interface first and then figuring out how to implement it, nor was I building functionality and adding polish afterward. The product evolved through both at the same time; interaction decisions affected the technical architecture, and technical possibilities shaped the experience.
Chikọta started as a tiny utility I built because I was tired of losing things on the internet. It eventually became an exploration of how something as ordinary as bookmarking could be made calmer, more accessible, and more intentional.
Arigatou gozaimasu! (ありがとうございます)



