Giter VIP home page Giter VIP logo

Comments (21)

C0ffeeCode avatar C0ffeeCode commented on August 20, 2024 6

I had been working on implementing background notifications using service worker, but it requires changes to how Cinny saves the token since localstorage, where it lives today, is not available in serviceworkers, so it would have to be migrated to indexeddb.
If someone is interested to take it over:
https://github.com/c0ffeecode/cinny/tree/background-notifications

It takes advantage of push gateways and ntfy, so it can listen for notifications using WebSockets efficiently.

As for the Tauri build, it propably would be better implement background notifications in rust.

from cinny.

reesericci avatar reesericci commented on August 20, 2024 4

I would like to see PWA support, as then I could use Cinny on my phone like a native app.

from cinny.

RihanArfan avatar RihanArfan commented on August 20, 2024 3

PWA will allow Cinny to be installable on desktop or mobile and make it feel like a native app. Other things can be done like full offline support so it loads fully from the cache.

This might help. https://create-react-app.dev/docs/making-a-progressive-web-app/

from cinny.

RihanArfan avatar RihanArfan commented on August 20, 2024 3

Features like offline support & web push integration would be great, but yeah just getting the manifest and a dummy service worker in so installs are possible would be great. ( @filipesmedeiros simply adding the manifest isn't enough, browsers will refuse to install the PWA if there is no service worker present )

Now that we're using Vite, we can use Vite PWA. https://vite-pwa-org.netlify.app/frameworks/react.html

Vite PWA can take care of all of this for us. I'm not familiar with React, otherwise I'd submit a PR to implement it.

from cinny.

rltas avatar rltas commented on August 20, 2024 2

Looks like it'll become much more useful "soon":
https://webkit.org/blog/12945/meet-web-push/
https://firt.dev/ios-15.4b#web-push-notifications-on-ios%EF%BC%8Dwith-a-catch

from cinny.

MulverineX avatar MulverineX commented on August 20, 2024 2

Features like offline support & web push integration would be great, but yeah just getting the manifest and a dummy service worker in so installs are possible would be great. ( @filipesmedeiros simply adding the manifest isn't enough, browsers will refuse to install the PWA if there is no service worker present )

from cinny.

likeazir avatar likeazir commented on August 20, 2024 2

So, I really wanted to use cinny on mobile with true reliable background notification support, so i looked into fcm webpush and hacked some crude notifications into the app.
However, I have never touched javascript or anything web related before so it's really messy at the moment and very much work in progress.
Maybe I'll do a PR when I have the time to clean it up and do it properly.
Just putting it out there if someone else is working on this :)

from cinny.

filipesmedeiros avatar filipesmedeiros commented on August 20, 2024 1

This is a low hanging fruit if we just want to enable installation, basically just add a web manifest, right?

from cinny.

vwkd avatar vwkd commented on August 20, 2024

I think this issue confuses PWA with just being responsive.

from cinny.

frostedkitsune avatar frostedkitsune commented on August 20, 2024

I think this issue confuses PWA with just being responsive.

I think so PWA and responsive design are two different things....btw, what is the progress on any of this topic?

from cinny.

C0ffeeCode avatar C0ffeeCode commented on August 20, 2024

This might be interesting regarding this issue:
https://developer.mozilla.org/en-US/docs/Web/API/Badging_API

from cinny.

Iruwen avatar Iruwen commented on August 20, 2024

I assume we need a PWA service worker to get true push notification support on mobile besides caching, so this would be a killer feature.

from cinny.

genofire avatar genofire commented on August 20, 2024

@C0ffeeCode it sounds you do not use VAPID WebPush Notification for this insteat:
https://support.mozilla.org/en-US/kb/push-notifications-firefox

Like hydrogen-web it does: https://github.com/vector-im/hydrogen-web

from cinny.

Iruwen avatar Iruwen commented on August 20, 2024

By its description it doesn't sound like there's an "instead" due to its severe limitations.

from cinny.

genofire avatar genofire commented on August 20, 2024

See also #867 for non web

from cinny.

RihanArfan avatar RihanArfan commented on August 20, 2024

Now that we're using Vite, we can use Vite PWA. https://vite-pwa-org.netlify.app/frameworks/react.html

from cinny.

jasikpark avatar jasikpark commented on August 20, 2024

web notifs nearly work today on iOS Safari 16.4, except there seems to be a bug in the notif system, where it doesn't think it does have perms?

I have #1231 up to fix the rendering issue, though since there's not a service worker, that PR doesn't fix iOS notifications

from cinny.

jasikpark avatar jasikpark commented on August 20, 2024

https://elk.zone is a good example of a PWA w/ web push on iOS: https://github.com/elk-zone/elk/blob/e9740fe693cfec761cce69d47d25dc98825d0ce2/service-worker/web-push-notifications.ts#L4

from cinny.

jasikpark avatar jasikpark commented on August 20, 2024

https://developer.apple.com/documentation/usernotifications/sending_web_push_notifications_in_web_apps_safari_and_other_browsers

from cinny.

NovaAndrom3da avatar NovaAndrom3da commented on August 20, 2024

I would love to have proper iOS notification support, that seems to be the only thing I'm missing

from cinny.

filipesmedeiros avatar filipesmedeiros commented on August 20, 2024

@MulverineX that sounds right. Still easy just to enable installation, imo eheh

from cinny.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.