Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How costly is it to make AccessLocator work as a progressive web application? #168

Open
joshi1983 opened this issue Jan 7, 2017 · 4 comments

Comments

@joshi1983
Copy link
Collaborator

joshi1983 commented Jan 7, 2017

We don't want to invest the effort to make a native Android application for AccessLocator any time soon because they are costly to develop and maintain and they only serve a fraction of our potential users. A progressive web application could serve the same users but might be much less costly to develop and maintain so a progressive web application might be worth us trying in coming months. How easy is it to make AccessLocator work as a progressive web application? Research enough to confidently answer that question with a brief description of the work required.

A couple pages to get us started include:
https://developers.google.com/web/progressive-web-apps/
https://developers.google.com/web/fundamentals/getting-started/codelabs/your-first-pwapp/

"Instant Loading: Building offline-first Progressive Web Apps - Google I/O 2016":
https://www.youtube.com/watch?v=cmGr0RszHc8

There are some related issues.

  • Getting more user ratings #638 involves some optimizations for when users save AccessLocator to home screen so we notify them when they entered an unrated location.
@joshi1983
Copy link
Collaborator Author

I watched the complete video at https://www.youtube.com/watch?v=cmGr0RszHc8 and it seems like a lot of work still.

The first couple steps would be:

  1. Add a JavaScript file responsible for managing the application's cache with probably AppCache and a service worker to intercept HTTP requests for the home page and eventually others
  2. Take advantage of the cache to store images that we want regardless of database state.

The above steps are probably doable within 12 hours of focused work. Those steps would prove that we could expand on them to make an application that partly works without Internet service or with poor internet service. After those steps, we would still require Internet service for any practical use such as finding locations, looking at ratings, rating a location, signing in...

Other steps involving rewriting logic for building location reports, a local-only search... won't be worth doing for many months to come because it would be like almost rewriting the PHP-portion of the application in JavaScript. It would be easier than a completely native Android application but not worth doing when there are big gaps in our main web application.

I'm closing this issue as the main question I was asking was answered by myself. @Blandine-AA if you have questions about this work, let me know.

@joshi1983 joshi1983 reopened this Jul 20, 2018
@joshi1983
Copy link
Collaborator Author

I reopened this because it may help with #638.

@joshi1983
Copy link
Collaborator Author

I deployed the manifest.json file change to https://app.accesslocator.com so anyone can add AccessLocator to their home screen on their phone.

@M4ttoF what would the next step be for implementing those push notifications regarding #638?

@M4ttoF
Copy link
Collaborator

M4ttoF commented Jul 30, 2018

@joshi1983 Next we would have to add a service worker into our project. I can start working on this

joshi1983 added a commit that referenced this issue Aug 9, 2018
This should pass an item found in Chrome's audit feature for PWA.

Related to #168
joshi1983 added a commit that referenced this issue Aug 9, 2018
A message about the theme-color not being specified was mentioned in a Chrome audit of PWA functionality.

Related to #168
joshi1983 added a commit that referenced this issue Aug 17, 2018
…inates

This new API could be useful for the PWA application when it needs to know if a current GPS location should get rated.

Related to #168
joshi1983 added a commit that referenced this issue Aug 17, 2018
…inates

This new API could be useful for the PWA application when it needs to know if a current GPS location should get rated.

Related to #168
joshi1983 added a commit that referenced this issue Aug 17, 2018
…inates

This new API could be useful for the PWA application when it needs to know if a current GPS location should get rated.

Related to #168
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants