Skip to content

Web utilities for progressive web applications (PWA). No-ops on non-web platforms. Works with WASM.

License

Notifications You must be signed in to change notification settings

dev-cetera/df_pwa_utils

Repository files navigation

banner

pub tag buymeacoffee sponsor patreon discord instagram license


Summary

Web utilities for progressive web applications (PWA). No-ops on non-web platforms. Works with WASM.

You can use this package to set the URL path strategy for your web application to use the standard URL path instead of the hash-based routing.

import 'package:df_web_utils/df_web_utils.dart';

setToUrlPathStrategy();

You can also use the platformNavigator to manage the browser history and listen for changes in the URL path.

import 'package:df_web_utils/df_web_utils.dart';
import 'package:flutter/foundation.dart' show kDebugMode;

final path = platformNavigator.getCurrentPath(); // e.g. '/home'

platformNavigator.pushState('/welcome'); // push '/welcome'

platformNavigator.replaceState('/home'); // replace current state with '/home'

platformNavigator.addStateCallback((path) {
  if (kDebugMode) {
    print('Pop state: $path');
  } // e.g. '/home'
});

Getting Started

Add the package to your `pubspec.yaml:

dependencies:
  df_pwa_utils: ^0.1.0

You can also use the latest version from the Git repository:

dependencies:
  df_pwa_utils:
    git:
      url: https://github.com/dev-cetera/df_pwa_utils
      ref: main

🔍 For more information, refer to the API reference.


💬 Contributing and Discussions

This is an open-source project, and we warmly welcome contributions from everyone, regardless of experience level. Whether you're a seasoned developer or just starting out, contributing to this project is a fantastic way to learn, share your knowledge, and make a meaningful impact on the community.

☝️ Ways you can contribute

  • Find us on Discord: Feel free to ask questions and engage with the community here: https://discord.gg/gEQ8y2nfyX.
  • Share your ideas: Every perspective matters, and your ideas can spark innovation.
  • Help others: Engage with other users by offering advice, solutions, or troubleshooting assistance.
  • Report bugs: Help us identify and fix issues to make the project more robust.
  • Suggest improvements or new features: Your ideas can help shape the future of the project.
  • Help clarify documentation: Good documentation is key to accessibility. You can make it easier for others to get started by improving or expanding our documentation.
  • Write articles: Share your knowledge by writing tutorials, guides, or blog posts about your experiences with the project. It's a great way to contribute and help others learn.

No matter how you choose to contribute, your involvement is greatly appreciated and valued!

☕ We drink a lot of coffee...

If you're enjoying this package and find it valuable, consider showing your appreciation with a small donation. Every bit helps in supporting future development. You can donate here: https://www.buymeacoffee.com/dev_cetera

LICENSE

This project is released under the MIT License. See LICENSE for more information.

About

Web utilities for progressive web applications (PWA). No-ops on non-web platforms. Works with WASM.

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages