PhaserEditor2D / PhaserEditor2D-v3

A web-based IDE for HTML5 game development. Powered by Phaser.
https://phasereditor2d.com
MIT License
426 stars 57 forks source link

Is it possible to make the Editor as PWA? #70

Open NickChowDev opened 4 years ago

NickChowDev commented 4 years ago

As captioned, the editor is fully web-based now. It would get many benefits from the PWA way, such as more portable, open directly from Icon, and update easily. Will it? I am new to PWA and no idea how difficult to achieve this.

Does it need the native-file-system to be achieved? https://web.dev/native-file-system/

PhaserEditor2D commented 4 years ago

Hi @NickChowHK

I think the stronger feature of PWA is that the editor can work offline. But it is not possible right now, especially when you run the game for testing it. We can do offline stuff with the editor, but the game will run as a normal Phaser game, requesting files from the server. Right now I don't have in mind any solution about it, maybe it is possible, we should work on it.

However, in the meantime, to get a more desktop-like experience you can do the following:

image

image

PhaserEditor2D commented 4 years ago

What we have in mind is to create a version of the editor that runs inside Electron. But we should think more about it.

NickChowDev commented 4 years ago

What we have in mind is to create a version of the editor that runs inside Electron. But we should think more about it.

Thanks for your prompt reply. Your solution works fine for me already.

PhaserEditor2D commented 4 years ago

I was thinking more about this issue with PWA and I think we can have a fully PWA offline version of the editor. So users can download the project as a zip file or save it in something like dropbox or drive. It is another option to run the editor. Web technology is so flexible! I will keep this issue open. Thanks.

PhaserEditor2D commented 4 years ago

@NickChowHK I keep thinking on this and I am exciting about the Native Filesystem API.

I think I will create a complete PWA version of the editor that is hosted in our servers but can be used to build projects stored locally, in the user system.