Progressive Web Apps


#1

I wish to promote the idea of developing everything to the Browser, as opposed to platform-specific stuff, using Progressive Web App (PWA) technology.

My motive is that in Windows I like to use Chrome rather than the desktop app because using Chrome lets me integrate Powerpack and Stylish. But the downside is that if I have multiple Chrome windows open, they all have the chrome icon, and not the Dynalist icon.

As I understand it, if Dynalist was issued as a PWA, I could make one Chrome window be ∞. And on my phone I can make a homescreen icon for this same app. And the developers would no longer need to make a Windows version, a web version an Android version and an iPhone version. Though there are a few unique points of a touch interface vs. a mouse/keyboard interface that need to be adapted.


#2

Do you mean changing the icon for the Chrome tab that’s running Dynalist?

Not sure about that, there are still times when we want to do native integration that’s not provided by PWA. Thanks for the suggestion though! I take it that you don’t want us to spend too much time on delivering the apps and to focus on that core product instead :).


#3

Do you mean changing the icon for the Chrome tab that’s running Dynalist?

Yes.

Not sure about that, there are still times when we want to do native integration that’s not provided by PWA. Thanks for the suggestion though! I take it that you don’t want us to spend too much time on delivering the apps and to focus on that core product instead :).

Not 100% certain. If there’s features you need that aren’t possible via browser, they might be important to have. But, the browser itself provides many built-in features that get lost when you make your own apps, as I mentioned some above. However, as a supporting argument for the move, I read Google intends to stop making phone apps and use PWA instead.


#4

From my (limited) research, it looks like PWA will allow you to add a website to your home screen (on mobile) with its own icon and launch screen, and from my understanding that’s not what you refer to. You want to change the Chrome icon in the task bar, right?

Can you point me to something that says PWAs have such behaviors? Thanks in advance!


#5

You can make the Dynalist website be shown as a Chrome app right now! Open your Dynalist in new tab and from the menu select More tools > Add to desktop….

From now on, Dynalist will be shown with its own icon alongside your Chrome apps and you can even create a shortcut on your desktop/taskbar.

For further details see: Dedicated Taskbar icons for Dynalist.


#6

Thanks for the link Lukas. That is exactly what I was referring to. Now I can have Dynalist as its own Window and it won’t resemble a chrome window. AND it gets all the extensions added. Only thing I’m doubting is whether it will take in additional tweaks or if I need to repeat the process if anything else changes.


#7

What are some specific examples of “anything else changes”? :thinking:


#8

I add a new CSS hack.


#9

If you’re using Stylish and all Chrome instances have it active, you shouldn’t need to repeat it. You can try it out of course.


#10

As I understand it, Progressive Web Apps also add better offline functionality. If dynalist was a PWA, then on my chromebook for example I could start it without network connectivity and it would load from cached data. Not something that really works at the moment.


#11

That offline thing would require a more robust synchronization model as well. Currently the system operates on a last-changed wins, but if you edit stuff without synchronizing you could overwrite changes that were made elsewhere when you do sync. Or those changes could delete your work here if someone else deleted a thing.


#12

Why couldn’t it continue with the same sync model as today (not that I’m objecting to any improvements)? How would a PWA differ from the Electron app as regards to synchronization?


#13

The synchronization model currently in operation is bugged. Mostly it doesn’t matter because it syncs before another instance needs to get the stuff. But as soon as you introduce offline mode, you’re going to encounter major problems when a late sync overwrites the data you created offline.