When I search this in Google, I'm getting more results regarding progressive web apps with angular, than react. Why is this the case?
I'm in the beginning stages of learning ReactJS, but I eventually want to understand PWA as well. Are these two completely different? Is it possible to build an entire scalable application using these two? I'm learning that the popular stack is Node + React + MongoDB. Does adding PWA benefit this or is there no point?
Is progressive web app still a thing? Is it here to stay for a long time or is it already a thing in the past? Just looking at the tags in stackoverflow, its not being talked much.
The concept of progressive web app is not limited to any javascript front end framework.
A Progressive Web App (PWA) is a web app that uses modern web
capabilities to deliver an app-like experience to users. These apps
meet certain requirements, are deployed to servers,
accessible through URLs, and indexed by search engines.
So it can be web application made using simple vanilla javascript / angular / react / vue or any other.
To consider your application be PWA it should meet following requirements :
Progressive - Work for every user, regardless of browser choice,
because they are built with progressive enhancement as a core tenet.
Responsive - Fit any form factor, desktop, mobile, tablet, or whatever
is next.
Connectivity independent - Enhanced with service workers to work
offline or on low quality networks.
App-like - Use the app-shell model to provide app-style navigation and
interactions.
Fresh - Always up-to-date thanks to the service worker update process.
Safe - Served via HTTPS to prevent snooping and ensure content has not
been tampered with.
Discoverable - Are identifiable as “applications” thanks to W3C
manifests and service worker registration scope allowing search
engines to find them.
Re-engageable - Make re-engagement easy through features like push
notifications.
Installable - Allow users to “keep” apps they find most useful on
their home screen without the hassle of an app store.
Linkable - Easily share via URL and not require complex installation.
For more information visit the Google developer guideline for PWA
Related
Company needs to decide about future frontend technology and I was asked by the big man to determine if Blazor (using Webassembly) is for us.
I fully agree with Blazor / Webassembly because it's so easy to use that even backend developers can develop frontend stuff quickly enough (as opposed to things like react.js and angular, which are based around Javascript or the very similar Typescript).
But...
We need to create a mobile application from our web frontend as well, because people will want to use our frontend on the go (a lot, actually... our product is meant for people to enhance their "outdoor experience" about their home).
Any chance to run a Blazor / Webassembly app in the browser on mobile devices?
To give more information about this: there is a complication - we need to run a tiny bit of native code, too, when indoors, because of a specific requirement regarding "offline operation". Thats actually why I ask - if it was only about "show website X in browser" I wouldn't need to ask, but we need to actually implement some "local only" functionality.
Here is a question on how to structure a web app based on react.
We are planning on deploying the front-end of an app that will contain several parts like main part, a customer account part and say a backoffice part for the company staff to track customer's data etc...
The plan is to deploy this app on Netlify and use subdomains like example.com, backoffice.example.com and clients.example.com.
My question is: shall we use a single React app to handle these 3 parts or use 3 different React apps ?
Initially we thought using 3 different apps would be better in terms of maintenance and evolution but any professional feedback with pros and cons would be appreciated.
Thx a lot.
We do something similar (but with Angular). It works well as each of the teams is responsible for their own app as far as maintenance and release cycles is concerned. It is pretty scalable as well - no problems to just keep adding new apps (as we are doing).
We have the whole lot behind NGINX, and so in the code we can just refer to simple paths like /client-services, /marketing and /sales - i.e. no server/protocol configurations.
You need to keep the following in mind :
How the apps interact with each other i.e. a standard data object, or cookies/localStorage
Authentication
You will be using app/internal routing for modules within your app, and external routing to redirect to other apps
We've been burnt before with one monolithic app...
Context
Our project has a Java back-end that accesses a Neo4j database. The back-end is nearly finished. Previously we intended to build a Java desktop client with a JavaFX UI. Now we are considering building a web application instead. I will be building the front-end. My previous experience was mostly using Java. I will have to learn a new language. The thing I'm having some trouble with is determining which one is best suited for this project. Before we begin front-end development we also want to ensure that the web app will be able to handle all features we had planned for the desktop client.
Requirements
Connection
Send HTTPS requests (not expecting any problems here)
Keep a persistent HTTPS connection open to receive server-sent events
Data
Store and handle considerable amounts of information received through server-sent events (potentially millions of events)
UI
Create a beautiful and highly reactive UI
Create complex custom components
Drag and drop support (also not expecting any problems here)
Integrate a view of an external site into the UI
Platform
Platform independence
No need for browser plugins
Candidates
These are some candidates I have identified during my research:
JavaScript with React
ASP.NET
Python with Flask
React js for the front end. Most anything for the backend. We use Python/Flask for routing and inserting into templates. But, you will really appreciate React for its "reactive" UI. It's incredible what it can do. I see no problems with the task list you've given.
I have been trying to understand PWA and the difference between it and web & native apps. Though found many interesting things about the same, I am clueless on what exactly are the benefits of PWA if you are an app development company. Will it help you get better customers? Or it will have no such impact.
You can check this site: Can Your Company Benefit from a Progressive Web App?.
Progressive web apps (PWA) is a new concept that bridges the gap between websites and mobile apps. They promise offline capabilities as well as improved speed and performance.
Benefits of progressive web apps:
Offline mode
Feels like an app, works like a website
Improved performance
Fast install on devices
Push Notifications
No app store submission
Will it help you get better customers?
I can say yes because increased speed leads to improved user experience and retention rates.
You can also check this related SO post: What features do Progressive Web Apps have vs. native apps and vice-versa, on Android
Progressive Web Apps actually offer more hardware access than commonly thought.
You can check the link above for more information. Hope this helps!
I joined Google Chrome dev summit in SF last year. Lyft try to implement PWA version because it help user make a first call easier. At the first time people not want to download any application because it take time at least 1 mins. In this case PWA will help to solve it and after user try PWA Lyft can push msg to ask user to install native app version later.
I'm in the process of making an app for my assessment at uni using cordova/phonegap and was just wondering if its possible for me to use data from a my unis ecom website for my app without having any back-end access to it, so like images/prices/descriptions...synced to my app?
yes it is certainly possible, because Cordova means working via Javascript and a HTML5 Rendering Engine. It is with some reservations entirely possible to load data from an webserver and use it in an App.
The only thing is to ask, whether it is also a smart-choice. If you want your app not to break when the data from the website gets changed (see https://en.wikipedia.org/wiki/Link_rot )
Also the server can somewhat prevent access of data from contextes outside of the webpage, especially if TSL/HTTPS connection is offered and content is only available after authentication.
Yet anyway its the magic of Javascript to be very good in doing things with web/online resources and displaying HTML5. Cordova and PHonegap is hence imo much better than the very challenging JAVA-Dalvik and IOs native programming that one would have to use else
Likely not,
Google and Apple frowns on using apps as wrappers for websites.
Quote Google Developer Program Policies - Spam and Placement in the Store
Do not post an app where the primary functionality is to:
Drive affiliate traffic to a website or
Provide a webview of a website not owned or administered by you (unless you have permission from the website owner/administrator to do so)
And
Quote Apple iTunes Guidelines - 2.12
Apps that are not very useful, unique, are simply web sites bundled as Apps, or do not provide any lasting entertainment value may be rejected