This week I asked a few questions to Simon Wicki, former Head of Frontend (and best co-worker) at JustWatch.
Expert in Ionic, VueJS, Angular and Cordova/Capacitor, he recently started an indepedent consulting agency.
He is also co-organizer of the Ionic Berlin Meetup. He just released a new version of Notyfy, his notification aggregator Chrome extension.
I’m a frontend engineer with a product mindset specialised in Hybrid App development. The past 5 years I worked as head of frontend at JustWatch, a streaming search engine. I helped to build the web, Android and iOS apps.
Recently I’m working as a freelance frontend engineer (wicki.io), which gave me more flexibility to work on Notyfy.
Notyfy brings all your web notifications into one place as a browser extension.
Some users may remember the chrome extension “Chime for Chrome”, which I was a big fan of 5 years ago. Sadly it was abandoned and stopped working. Also we - as a user - have changed: We aren’t okay anymore to grant permission to let a chrome extension read all our cookies.
Notyfy wants to pick up where “Chime for Chrome” left off, while make it better and more current.
There’s a technical reason behind: If it wasn’t for the browser extension, Notyfy wouldn’t be able to make requests to the platforms as the authenticated user. While doing that, the cookies and access data is never exposed to Notyfy - it doesn’t even have the “cookies” permission!
I wanted to make it for the user as seamless as possible. If Notyfy were a website or mobile app the user would need to authenticate every single platform they wish to get notifications for. Plus some platforms don’t even support this.
Extension development is small compared to web or mobile apps. You can see that in the amount of tutorials or starter projects available. Especially if you want to use more cutting edge technologies, you end up investing a lot of time in researching and learning.
I hope to have my React + Ionic Chrome Extension Starter up soon to give back to the community!
Due to market share and developer experience I developed Notyfy for Chrome first. Here’s is what you’d have to do with your project, that you developed on Chrome: - Microsoft Edge: 👌 - no changes required, even makes it possible to install extensions from other web stores. - Firefox: I had a live firefox version live prior to v1.0 and it didn’t need any changes. Just meta and properties related things. - Safari: The background script needs to be written in Swift.
If you’re developing an extension that persists data, then I think the biggest difference is in state.
In browser extension development you have the static (background) and non-static (popup and options) parts.
As soon as the background and the popup need to access and modify the same state, you need to run your state management’s dispatches in async over the chrome messaging API.
First I was looking for users that also searched for a “Chime for Chrome” alternatives and tried to get early feedback from there.
I haven’t made a growth plan yet. With Notyfy’s recent 1.0 release I think that should change! Maybe there are great ideas and suggestions from the Frenl community!?
These are the classic extension business models: - In-app payments. - One-time charge. - Subscription. - Offering a limited trial version of your item.
In my prototype I decided on serving ads. But you can’t have ads showing in your browser extensions popup. I made the user open a tab on the Notyfy domain and injected the actual app there, along with an ad at the bottom. Later I decided against it because it didn’t feel snappy. I ended up dropping the ads and put Notyfy completely into the extension’s popup.
That being said, I haven’t found or decided on a business model yet.
As a bonus let me show you some of the shady business models of browser extensions I encountered while I was researching this. You can still see some of them nowadays but they get eventually shut down: - Adding or replacing buttons with your own affiliate link (against most affiliate network’s policies). - Changing google search results (provided by lots of ad partners). - Generally injecting ads into ANY page.
It might have been a technical one: About a year ago I started prototyping the extension.
I was using the tools that were available back then and took shortcuts to validate the idea technically and get feedback as soon as possible. This resulted in a outdated development stack that would slow me down in the long run.
For the recent 1.0 release I went back to square one and brought the build tools that I needed and wanted.
Deciding on a growth plan: Hope to start insightful discussions with growth hackers out there in the Frenl community!
Launch and validate your idea fast.
I think it’s the technical one: where I started using the latest tech (React, Redux, Typescript, Ionic 4) I wanted and make it all come together.
It boosted my productivity and kept me sane.