Git Product home page Git Product logo

Comments (6)

mjackson avatar mjackson commented on May 5, 2024 1

That's definitely a related but (I think) slightly different issue, @dbanisimov. Even without doing any of this work, we could still ship a service worker to handle all /_remix/data requests and inline the data loaders that are able to be run client-side into that worker.

As you say, this would help with latency on data requests. But in order to get full offline mode we would need to handle /_remix/manifest requests too, which we use to dynamically load more pieces of the site manifest as you navigate around.

from remix.

dbanisimov avatar dbanisimov commented on May 5, 2024

Another use case for that would be running loaders both on the server and in the service worker if the data access could be securely isomorphic. One particular idea that I've been pondering around is to use Firebase JS client-side SDK in the loaders. Once the initial server-rendered response is received and the service worker is installed all the subsequent data requests could be served client-side, reducing the latency and enabling other goodies, like offline persistence.

from remix.

RoyalIcing avatar RoyalIcing commented on May 5, 2024

This would be an incredible match, I would use the hell out of this.

FYI, there’s ES Module support coming soon, not sure if they will support importing other JavaScript files though. The fetch handler will be exported instead of being attached as an event listener, and it will receive an additional env argument:

export default {
  async fetch(request, env) {
    
  }
}

from remix.

hsiaoa avatar hsiaoa commented on May 5, 2024

Without a server, how do we deal with SEO?
Wouldn't the Service-Worker run Remix be like a Progressive Web App?

from remix.

mjackson avatar mjackson commented on May 5, 2024

from remix.

FWeinb avatar FWeinb commented on May 5, 2024

I gave this a shot to get more family with the underling architecture of remix but I hit some roadblocks. Just documenting the issues here for someone else trying to get this working:

Having remix build around these platform features opens up so many possibility, very excited to look into this some more.

from remix.

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.