28 December 2025

How to build successful browser extensions

Some thoughts on developing browser extensions that users love

Happy Users of Browser Extensions
  • browser extensions
  • productivity
  • community
  • development
~6 MIN

Reflecting on a fruitful year

As we are approaching the end of 2025, I wanted to take a moment to reflect on Grounded Momentum’s journey this year. I finally took the project seriously and made significant improvements to the extensions as well as the whole ecosystem. This year alone, we have added over 2,000 more active weekly users. Just for context, it took us over 7 years from releasing the first version of Time Snatch (2017) to getting over 200 active weekly users (2024). But this year we also did so much more:

  • Completely overhauled the look and functionality of Time Snatch.
  • Released Time Snatch for Firefox and Edge.
  • Launched two new free and open-source extensions: Cadence and Gram Control.
  • Released the Grounded Momentum Plus subscription, bringing persistent storage and cross-device syncing to Gram Control and Time Snatch.
  • Launched this website to showcase our work.
  • Got dozens of 5-star reviews and only a single, lower, 4-star review.

While my internal perfectionists would like to point out that we could have accomplished so much more, these are all significant milestones and I could not be prouder of what we have achieved.

Key factors for success

I have broken down the learnings of this year’s journey into 3 simple, but I believe important, points. These might change as we continue to improve and learn more, but for now, here are the key takeaways:

1. Using the right technology

Despite my initial urge to write about the importance of good ideas, continuous improvement, and user feedback, I will start with the good old tech behind building Grounded Momentum. All the extensions we published, including the rework of Time Snatch, have been developed using the WXT framework with React and ShadCN. This allowed for structured and rapid cross-browser development. There is just so much the community has already built around this tech stack that the decision was trivial. Furthermore, these choices allowed us to create and reuse components that work across all extensions.

The website you are reading this on is built with Astro. It is a web framework for content-driven websites, which allowed us to create the Grounded Momentum website with ease. However, it was also flexible enough to let us include components related to authentication and the Grounded Momentum Plus subscription.

2. Building tools for your own needs

I guess this point could also be titled “Having the right motivation”. From day one, all the extensions I built were created to solve my own problems first. Developing extensions is a niche skill and it will certainly not make you rich, so doing it for the right reasons is an important part of the quality equation.

For instance, Gram Control was something I really wanted to have for myself in order to avoid distractions but still make the most out of Instagram. At first, I did not want to release the extension to the general public. It is a very niche product and lacks some basic customization options that I know many people would like. However, it is still useful for over 150 active users and even surpassed Cadence by that metric.

3. Listening to the community

This point might be the most important one. When I decided to rework Time Snatch, I went through all feedback given by users throughout the past years and noted it all in one place. That formed the basis for many of the improvements that followed throughout the year. We also set up a small (~50 people at the moment) Discord community where people gave suggestions for improvement, reported bugs, and upvoted other people’s ideas. I really enjoyed interacting with people and making small tweaks that made people’s lives a tiny bit better. That also helped me address issues that I would have never discovered on my own.

I want to also tag along another lesson with this point: the importance of frequently releasing marginal improvements and addressing bug fixes. This serves two purposes. Firstly, the small improvements add up and make a big difference over time. Secondly, it shows the community that the project is alive and well maintained. Many browser extensions are abandoned after a while and practically become useless to their user base. For instance, Instagram frequently changes its codebase and breaks extensions similar to Gram Control. That is avoidable by both listening to the community and frequently releasing updates.

Looking ahead

What I want to improve the most going forward is the pace of development as well as the surrounding ecosystem that helps the extensions thrive. By increasing the pace of development, I mean that I can carve out much more of my personal time to dedicate to the projects. What I do not mean is heavily automating the development process using AI. Relying on AI for the development of the extensions and the website is something I am already doing, but I also spend a lot of time manually checking and improving code. I am not looking to change that, as quality is something I deeply care about.

I also want to engage with the community much more. By the community, I mean Grounded Momentum users, browser extension developers, and the wider productivity/personal development community. Many people love the extensions, and I want to make sure that people can find them and use them to their full potential.