This page is under construction!

Edit on GitHub

Frequently asked questions

Here are some questions people have asked.

Will not latency be a problem?

It depends. For a regular web page, users would probably not notice any more latency than with any other framework, but if you have a lot of interactive components, it might be annoying for the user if they are on a stable connection.

Many modern websites today require a connection to work at all. Mayu is designed to be deployed on servers near your users, that could be on Fly.ioor an on-premise Raspberry PI.

If the ping time is around 50-60ms, latency is barely noticable. 100ms is manageable, and if it's higher it can get annoying.

There are a few ways to make things seem faster, by preloading stuff while hiding them (such as the form example), and using other HTML/CSS-tricks.

In the future, it would be nice to have support for Custom elements, but no work has been done on this yet.

What happens to sessions during deploy?

Clients will be transferred automatically to a new server.

Before a server shuts down, it will pause all sessions, serialize and encrypt them, and send them to each client.

The client will then send the encrypted session to another server which will decrypt and verify the data before deserializing and resuming the session.

What if the user loses their connection?

Usually they will just reconnect and the session will be resumed. I don't know how this works if an app is deployed to different regions.

Sessions are cleared after a few seconds of disconnectivity, so if the session can't be found, the user will get an error dialog and the only option is to reload the page.

Issue #20 could remove the need to reload the page by serializing the current browser DOM and deserializing it on the server and then use that as a reference for patching.