Building Commonplace
→ the-commonplace.comI don’t really have a bookmarking system.
I used to use Pocket. It was fine. Then it got discontinued.
I tried Readwise after that. Decent enough, but for some reason it never fully clicked.
So now my “setup” is Chrome bookmarks and sending links to myself on Telegram. Which, if I’m honest, isn’t a setup at all. It’s just a mess that hasn’t collapsed yet.
I bookmark a lot. Articles, threads, docs, random ideas I’m sure will be useful later. And many of them would have been useful. The problem is that I almost never go back.
That’s the trap. Bookmarking feels productive, but it isn’t. It’s just postponing thinking. Saving something isn’t learning it. And it’s definitely not sharing it. The distance between “this is interesting” and “here’s what I actually learned” is large enough that most things just rot where they land.
I didn’t have a knowledge base.
I had a backlog of guilt.
And I’d felt this before — not just personally, but at work.
Slack-shaped knowledge
In almost every company I’ve worked at, people were eager to share. Articles, talks, ideas, experiments — all over Slack.
They shared them. And then… nothing. Buried under standups, deploy notifications, and “quick questions.” A great link would get a few reactions, maybe spark a short thread — and then vanish forever.
Slack is amazing for coordination. Terrible for memory.
Insights exist briefly. Then evaporate.
Intent is there. System? Not so much.
I wanted to fix that for myself.
And I also had a convenient excuse to try.
Learning by building
I was about to start a new job at Cloudflare. I’ve used their dev platform before — it’s amazing — but naturally, I wanted to triple down before my first day.
For me, the fastest way to understand a platform isn’t reading docs or following tutorials. It’s building something real. Not a demo. Not a toy. Something I’ll actually use and feel the friction of.
So I built a few small things with Workers, D1, KV, Durable Objects, R2, and even experimented with Workers AI and the AI Gateway. Got used to the edge-first mental model. Learned how the pieces fit together. Most of those projects did what they needed to do and then quietly stopped being interesting.
One didn’t.
The idea that wouldn’t let go
Commonplace started with a very simple question — the kind that sounds obvious in hindsight:
What if bookmarking and publishing were the same action?
What if the thing you save is, by default, something other people can find?
No reformatting. No app switching. No “I’ll turn this into a blog post someday” lying to yourself.
You capture something, and it’s already out there.
The more I used it, the more I noticed something changing. I was actually going back to what I saved. I was writing a sentence or two of context. I was sharing instead of hoarding.
That was enough to keep me building.
What it turned into
As the product took shape, a philosophy emerged. Mostly by saying no.
I deliberately didn’t add certain things:
no likes
no comments
no follower counts
no algorithmic feed
Every time I considered adding something engagement-driven, it felt wrong. Not morally wrong — just misaligned with what this was trying to be.
Most platforms want your attention. They optimize for time-on-site, reactions, and loops. Commonplace optimizes for something else: making sharing so frictionless that you actually do it — and then getting out of the way.
You get your own subdomain: yourname.commonplace.com. That’s your space.
There are four types of entries:
Notes — original thoughts
Bookmarks — links with context
Lessons — distilled learnings
Highlights — excerpts from things you’ve read
Each can be public, private, or unlisted. You can pin things, expose an RSS feed, send a newsletter if you want.
That’s it. The feature set is intentionally small.
And that constraint matters. Without an engagement layer, there’s no pressure to perform. You’re not writing for likes or reach. You’re just leaving traces. Over time, those traces add up: a body of work. A searchable record of what you found interesting. Knowledge that compounds instead of decays.
The stack (briefly)
Everything runs on Cloudflare’s edge.
Astro and Svelte on the frontend — content-first, minimal JavaScript.
D1 for the database.
Durable Objects to handle per-user state.
R2 for file storage.
Workers AI and the AI Gateway for experimental workflows.
A separate Worker for authentication.
The most interesting technical problem was multi-tenant subdomain routing. Each user gets their own subdomain, but it’s still one app. Middleware pulls identity from the URL and injects the right context.
I chose this stack because I was learning the platform anyway. It turned out to be a genuinely good fit: low cost at small scale, globally fast, and simpler than managing traditional infrastructure.
What I’d tell myself earlier
Scope discipline was the real work.
There’s always another feature that sounds essential: collections, AI search, mobile apps, team workspaces. I kept asking the same question: does this actually serve the core idea, or am I just interested in building it? Most of the time, it was the latter.
What helped:
using it myself every day
building incrementally
treating my own friction as the roadmap
If something annoyed me, I fixed it.
If I imagined a feature I’d never personally needed, I didn’t build it.
Closing the loop
You’re reading this on Commonplace. A post about building the thing, published on the thing. Slightly too neat, maybe — but also kind of the point.
If you have your own graveyard of bookmarks — Chrome folders you never open, links sent to yourself on Telegram, highlights decaying in Kindle, insights lost in Slack threads — maybe there’s a version of this that works for you too.
The idea is simple:
lower the friction until sharing is just what happens.
Then let the knowledge compound.