pyscript / pyscript-cli

A CLI for PyScript
Apache License 2.0
160 stars 25 forks source link

Add an option for SPA #132

Open eruvanos opened 11 months ago

eruvanos commented 11 months ago

For single page applications it would be great to have a spa modus, which serves a default (often just index.html) page in case there is no matching file within the folder.

Example (old Python): https://gist.github.com/jtangelder/e445e9a7f5e31c220be6

FabioRosado commented 6 months ago

Hello I am going through the open issues and triaging them before we do another release of the CLI.

Currently (in main) we have a pyscript run which runs a web server in a folder and serves whatever is there, even if index.html isn't available.

Does this do what you expect or you mean something else?

eruvanos commented 6 months ago

Hi, to serve some SPA setups, it is required, to always serve index.html for any route, except for those which actually refer to an existing file to serve.

This way the routing can use path based routing ("/") instead of "#/".

FabioRosado commented 6 months ago

What exactly would you propose we change in the CLI for this?

eruvanos commented 6 months ago

Maybe a --default <file>.html parameter would be a good option, which always returns the given file if the requested path does not exist.

So it would be flexible and would not be tied down to the SPA use case.

FabioRosado commented 6 months ago

Ah I understand now 😄

You can pass a path to pyscript run so for example assume you have a main.html you can do pyscript run main.html and it will serve that file as soon as the server starts. Will this address your use case? 🤔

eruvanos commented 5 months ago

No, it requires to always answer with the index file, if the path does not exist.