Authoring Browser Extensions
I got an awesome opportunity to chat with Wes Bos and Scott Tolinski on the Syntax podcast. We talked about some of my projects, including T.LY URL Shortener and Weather Extension. Syntax is a fun podcast for web developers hosted by Wes Bos and Scott Tolinkski, two independent full stack developers who create online training courses. In each episode, Scott and Wes break down topics to provide “Tasty Treats” to the audience — applicable tips and nuggets of information to help web developers in their careers.
In this episode, Wes, Scott, and I talk about authoring browser extensions, how side projects like Weather Extension and T.LY came together, the developer workflow behind shipping extensions, and why I still think the category is underrated.
Transcript
Lightly edited for readability.
Hosts: Welcome to Syntax Supper Club. Today we’re talking with Tim Leland about browser extensions, side projects, Weather Extension, and T.LY.
Tim: I’ve been a software developer for more than a decade. I work full time, but I’ve also spent years building side projects. Browser extensions became a big focus for me starting around 2015.
Hosts: What pulled you into extensions in the first place?
Tim: I used a lot of extensions myself and wanted to understand how they worked. Weather Extension came from a simple need: I wanted a quick way to check the weather from my browser without opening a site or grabbing my phone. Over time it grew into something a lot of people use.
Hosts: Weather Extension has a large user base. Is it fully free?
Tim: It has a free version and a paid upgrade. The upgrade adds things like weather alerts, more frequent updates, and multiple locations. That helped offset the cost of the weather API and the ongoing server traffic.
Hosts: What has it been like running a large extension in the Chrome ecosystem?
Tim: It has been good overall, but you do have to take security seriously. Years ago people were constantly trying to buy extensions for shady reasons, or take over the publisher account. Chrome has tightened up permissions and reviews a lot since then, which is a good thing. If an extension requests access it does not truly need, that now gets much more scrutiny.
Hosts: How much of your growth came from marketing versus just building something useful?
Tim: Both. Weather Extension got a big lift when sites like Lifehacker shared it. That kind of exposure can change everything. But usefulness matters too. If it solves a simple problem and keeps doing it well, people keep installing it and telling others about it.
Hosts: We talk a lot about JavaScript environments. What makes browser extension development different?
Tim: Extensions have their own set of surfaces: popups, options pages, and background scripts. With Manifest V3, background logic moves toward service workers, which means some older patterns no longer work. I have had to remove assumptions about window and document in background code and modernize a lot of older logic.
Tim: The server side is separate. The extension bundle ships HTML, CSS, images, and JavaScript, but Weather Extension still calls an API for forecast data. Earlier on I could get away with hosting some JavaScript remotely, but Chrome has become much stricter about that because it was abused.
Hosts: Your other major product is T.LY. How did that happen?
Tim: I was looking for the next extension to build and created a tool to analyze Chrome Web Store listings. I noticed a Google URL shortener extension with a huge user base, right around the time Google was shutting down goo.gl. That looked like an obvious opening, so I built my own URL shortener extension that supported multiple providers.
Tim: Once Google’s service disappeared, users needed an alternative. The extension grew quickly, and that eventually pushed me to build my own shortening service instead of depending on third-party APIs. That became T.LY.
Hosts: And the domain itself is unusually good.
Tim: It was a meaningful investment. I worked with a domain reseller to find short options and ended up paying around $50,000 for t.ly. It sounds expensive, but for a URL shortener the domain is a core part of the product, not just branding.
Hosts: What do people pay for in T.LY?
Tim: Basic shortening is free. Paid plans unlock features like custom domains, expiring links, password protection, analytics, smart redirects, and API access. I wanted it to be simpler and more affordable than some of the established players, especially for people who just want branded short links without enterprise pricing.
Hosts: You also mentioned “one links,” which sounds like a Linktree-style feature.
Tim: Exactly. It is a lightweight landing page for multiple links. I see it as a useful add-on for people already using T.LY rather than a separate business on its own.
Hosts: What has been hardest technically?
Tim: Abuse prevention, easily. Shortly after I launched T.LY, my hosting company shut the server down because bad actors were routing malicious links through it. I spent months building automated detection, review workflows, and domain safety checks. Running a URL shortener safely is a much bigger problem than just storing and redirecting links.
Hosts: Where do your ideas usually come from?
Tim: Usually from small frustrations. I keep a running list of ideas and revisit it when I have time. Weather Extension came from wanting to check the weather faster. T.LY came from seeing a need for affordable link shortening and custom domains. A lot of projects start that way for me.
Hosts: Have you expanded your extensions beyond Chrome?
Tim: Yes. Firefox, Edge, and Opera are all pretty workable because the browser extension APIs are fairly close now. Safari is the outlier. It is more effort, a different review process, and I have not been motivated enough to move everything there yet.
Hosts: Have you made money in any non-obvious ways through all of this?
Tim: Blogging has helped a lot. Years ago, one of my Raspberry Pi tutorials got picked up by bigger sites and made a surprising amount through Amazon affiliate links. Since then I have kept writing technical tutorials and small project write-ups. It is still valuable. Helpful content gets shared, drives search traffic, and brings in users over time.
Hosts: So blogging is not dead?
Tim: Not at all. I am not the most polished writer, but if I can help someone solve a problem, that tends to pay off one way or another. A lot of my posts come from things I did around the house, tools I built, or issues I solved for myself.
Hosts: We closed with a quick lightning round: you use a 13-inch MacBook Pro, a Microsoft Sculpt keyboard, VS Code, and if someone were starting from scratch you would steer them toward JavaScript first.
Tim: That is right. It gives people a lot of reach early. For my own side projects, though, I still use Laravel heavily because it lets me move fast and avoid rebuilding common infrastructure every time.
Hosts: Final advice?
Tim: Use your spare time well. I wish I had started building products even earlier, especially in college when I had more free time than I realized. You do not need the perfect idea. Start with a real problem, keep it simple, and keep shipping.
Hosts: Where can people find you?
Tim: You can check out T.LY for link shortening, or visit timleland.com for my blog and more of the projects I’ve been working on.