5 ms·
Is there a super simple tool for turning statically served websites into PWAs? Last time I looked all of the simple tools had been deprecated in favour of comp
by Lerc 2y ago
Is there a super simple tool for turning statically served websites into PWAs?
Last time I looked all of the simple tools had been deprecated in favour of complex tools that do way more than I need.
If I had a site in a directory that works fine from
>cd MyWebApp
>python3 -m http.server
I would like a command line tool That worked like
>becomepwa MyWebApp
Which produced a PWA that downloaded everything on install and could be run henceforth offline.
I thought this would be a common use case, but I failed to find anything that supported it without intruding on my workflow.
- giancarlostoro 2y agoThree things you need: * Manifest file * HTTPS - for localhost I dont remember the workaround, browsers have made this increasingly more complicated from recent experiences * Service Worker - This is where I said I had maybe 60 lines of JavaScript. If you have these three things, a browser should pick up that your sites a PWA and server running it should be irrelevant... So you MUST have a minimal amount of JavaScript, but I did it using pure vanilla JS, you dont need a fancy framework. On that same note, there might be a tool that could inject the bare JS necessary for this, but I dont think it exists, certainly could be built.
- Lerc 2y agoHTTPS isn't an issue, dropping whatever the command generates onto a HTTPS supporting server isn't an issue. I want the manifest to be automatically generated from whatever is in the directory. The service worker should download everything from the manifest at first launch. I'm ok with a download-on-demand build option, but by default it should grab everything needed. If a user installs something, it should be assumed that they can use it offline. I feel like the tool should already exist. If it does not yet exist, it seems like there must be a reason for that that I am not aware of.
- iforgot22 2y agoThe service worker thing is a weird amount of boilerplate. Every time I go back to making a PWA, I skip through 10 search results explaining what a service worker is (idc) until I just find whatever .js code I have to copy. And it's not some trivial one-liner. I get that in theory a PWA can do offline stuff and whatever, but 99% of the time someone is only making a PWA to make the app installable on a phone home screen.
- giancarlostoro 2y agoIt is not a trivial one liner no, but you need 3 events implemented in your service-worker file, then in your main.js file you register it. Service workers are just JavaScript that runs in the background in their own process in a browser. Could think of them as separate threads. Anyway, all of that can be done in less than 20 lines of JS? I consider it simple compared to people building React apps and making the process more complicated than it needs to be just to build a PWA. I was able to build a PWA out of a bootstrap HTML5 web app, with minimal JS for REST calls and ag-grid population.