Live data from Hacker News

For your next side project, make a browser extension

geoffreylitt.com

61–70 of 286 posts

Re: For your next side project, make a browser extension

#61

PSA: If you're making a browser extension, please support Firefox as well, not just Chrome. Firefox makes it easy since they support the `chrome` namespace for functions [0]. You can also use React/Next.js or another frontend library too if you prefer. I had created an extension a while ago out of pure HTML, CSS, and TypeScript but I found that was quite annoying to add more complex features with lots of state. I swi…

firefox/mozilla doesn't really make it easy (compared to chrome) mozilla now requires "add-on signing" [0]; extensions now have to be "signed" (By mozilla) before you can permanently side-load your own private extension onto regular firefox. they also require you to use 2FA [1] when setting up a firefox.com account (which is required in order for you to upload extensions so they can be signed). at least with chrome y…

It is great they require 2FA, it increases everyone security in case a developer account is compromised.

Re: For your next side project, make a browser extension

#62
post #15

Chrome Extension Developer experience was the worst. A week of wait of approvals, Management of extension packages isn't great. Rejects on image formats etc. Firefox hasn't yet adopted Manifest V3 which is also a bummer. After all this, I still managed to put up Selaro which is a workplace links organizer: https://getselaro.com

Manifest V3 support is coming to Firefox on Tuesday with the release of Firefox 109.

Re: For your next side project, make a browser extension

#63
post #51

Earlier quoted context omitted.

firefox/mozilla doesn't really make it easy (compared to chrome) mozilla now requires "add-on signing" [0]; extensions now have to be "signed" (By mozilla) before you can permanently side-load your own private extension onto regular firefox. they also require you to use 2FA [1] when setting up a firefox.com account (which is required in order for you to upload extensions so they can be signed). at least with chrome y…

Huh? To the best of my knowledge, to get a development extension working in FF: 1. Ctrl-shift-a to open add-ons page 2. Click the cog, and select "debug add-ons" 3. Click "load temporary add-on" 4. Select a file in your extension. 5. Done. This worked for me earlier this week.

Key word from the grandparent post: "permanently"

Key word from the parent post: "temporary"

Re: For your next side project, make a browser extension

#65
post #51

Earlier quoted context omitted.

firefox/mozilla doesn't really make it easy (compared to chrome) mozilla now requires "add-on signing" [0]; extensions now have to be "signed" (By mozilla) before you can permanently side-load your own private extension onto regular firefox. they also require you to use 2FA [1] when setting up a firefox.com account (which is required in order for you to upload extensions so they can be signed). at least with chrome y…

Huh? To the best of my knowledge, to get a development extension working in FF: 1. Ctrl-shift-a to open add-ons page 2. Click the cog, and select "debug add-ons" 3. Click "load temporary add-on" 4. Select a file in your extension. 5. Done. This worked for me earlier this week.

Hm. I tried this with an super simple extension[1] I had lying around and couldn't get any network requests to work. The error thrown in console was a generic "NetworkError", but the network tab shows no relevant entries at all. Not a great developer experience, especially compared to chromium.

https://github.com/JacksonKearl/FeelingBlue/blob/main/extens...

Re: For your next side project, make a browser extension

#66
I wrote something similar about extensions being a good starting place for indie hackers that are trying to make money. Many of the same conclusions as the author of the article — low barrier to creating, can sometimes grow and be useful for a lot of people with no scaling issues: https://www.indiehackers.com/post/why-browser-extensions-are...

Also, I run a service that lets extension developers take payments in their extensions and it's been really cool to see many extensions take off like the author describes.

Re: For your next side project, make a browser extension

#67

Earlier quoted context omitted.

firefox/mozilla doesn't really make it easy (compared to chrome) mozilla now requires "add-on signing" [0]; extensions now have to be "signed" (By mozilla) before you can permanently side-load your own private extension onto regular firefox. they also require you to use 2FA [1] when setting up a firefox.com account (which is required in order for you to upload extensions so they can be signed). at least with chrome y…

It is great they require 2FA, it increases everyone security in case a developer account is compromised.

I'd prefer to choose how much risk I want to take when installing extensions. Just give me a warning and let me do what I want.

Re: For your next side project, make a browser extension

#68
post #21

If someone is looking for ideas, I'd love an extension that shows if a png image is really transparent instead of being a png or jpg with literal checker box patterns on the image. I tweeted about this once a while back[0], it gained some traction but never materialized. This would save a lot of time trying to find transparent images that turn out to be fake. These types of sites are worse than the "fake" github issu…

Hmmm the checkered background actually seems distinct enough that it wouldn’t be too difficult to automate its removal and just create a png with a transparent background.

> Hmmm the checkered background actually seems distinct enough that it wouldn’t be too difficult to automate its removal and just create a png with a transparent background.

You can do this with some image editors and a "magic wand" but you typically end up with jagged edges unless the shape is basic or you have specialized tools that can auto-feather them in a natural way.

I think with a bit of code you could check if the image type is png and it hasn't been flattened then overlay a little icon that says it's really transparent when you activate the browser extension.

Although I did just discover an interesting trick[0]. If you goto let's say images.google.com and search for something, you can tell right away if it's transparent or not by selecting the image and dragging it to anywhere on the page. If it shows the checker boxes while dragging then it's not transparent.

My life is complete now.

[0]: https://www.youtube.com/watch?v=G3Y5PcuH23Y&t=173s

Re: For your next side project, make a browser extension

#69
post #2

A lot of the most useful software I've made for myself has been browser extensions. Spend too much time on Hacker News? I made an extension to freeze the front page so it updates once every 6 hours. Spend too much time on Reddit? I made an extension requiring a password to be input for every page I visit. Want to extensively filter LinkedIn jobs, and track which jobs you've applied to? I made an extension to apply ve…

> Spend too much time on Hacker News? I made an extension to freeze the front page so it updates once every 6 hours.

Me, I just open a guest account, or a new profile, etc. Meaning, the extension is at most a reminder to try to stop. it's still trivial to bypass

Re: For your next side project, make a browser extension

#70
post #65
post #51

Earlier quoted context omitted.

Huh? To the best of my knowledge, to get a development extension working in FF: 1. Ctrl-shift-a to open add-ons page 2. Click the cog, and select "debug add-ons" 3. Click "load temporary add-on" 4. Select a file in your extension. 5. Done. This worked for me earlier this week.

Hm. I tried this with an super simple extension[1] I had lying around and couldn't get any network requests to work. The error thrown in console was a generic "NetworkError", but the network tab shows no relevant entries at all. Not a great developer experience, especially compared to chromium. https://github.com/JacksonKearl/FeelingBlue/blob/main/extens...

Odd! Were you trying to fetch a public, CORS-enabled API? That should just work. If you were trying to make a network request for a non-CORS endpoint (eg fetch the google homepage or something), you'll need to add the domain to your permissions section.

Eg:

"permission": [ "storage", "https://google.com" ]

Post reply on HN