0 purchases
pwa
Progressive Web App (PWA) for Dart #
Progressive web apps (PWA) are a hybrid of regular web pages
(or websites) and a mobile application. This new application
model attempts to combine features offered by most modern
browsers with the benefits of mobile experience.
Warning: the API is experimental, and subject to change.
Background #
PWA is using ServiceWorkers:
https://pub.dartlang.org/packages/service_worker
Learn more about PWAs:
https://developers.google.com/web/progressive-web-apps/
https://pwa.rocks/
Articles about this packages:
Making a Dart web app offline-capable: 3 lines of code
Tutorial and Examples #
Getting started
NOTE: #
This library requires webdev installed locally. Install it using the command:
pub global activate webdev
Getting started: pwa_defaults
Shows you how to use the pwa package and what it does.
Enables offline asset caching for you web app out-of-the-box.
Additional offline urls: additional_offline_urls
Show you how to create the entry point for customization.
Gives you the ability to add additional URLs for the offline cache.
Customize caching
Custom routes: custom_routes
Familiarize yourself with caching and routes.
Customize cache behavior for different parts of your app.
Push notification
Push notification: push_notification
Check and/or request Push permission.
Trigger and handle push event, show notification.
Planned features #
Typed Window <-> Worker communication, both Streams
and request-reply patterns, something like:
typedef Future<S> AsyncFunction<R, S>(R request);
typedef S WireAdapter<R, S>(R input);
abstract class MessageHub {
AsyncFunction<R, S> getFunction<R, S>(String type,
{WireAdapter<R, dynamic> encoder, WireAdapter<dynamic, S> decoder});
void setHandler<R, S>(String type, AsyncFunction<R, S> handler,
{WireAdapter<dynamic, R> decoder, WireAdapter<S, dynamic> encoder});
Sink<T> getSink<T>(String type, {WireAdapter<T, dynamic> encoder});
Stream<T> getStream<T>(String type, {WireAdapter<dynamic, T> decoder});
}
copied to clipboard
Push Notification
notification for the client app
one-method registration and/or status request
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.