Hi,
I am looking for a way or another to move an existing windows app to the web.
I think we will all agree that Lazarus+FPC is really a great solution to build desktop applications, no doubt, but not so easy to use when it comes to mobile or web development.
I am currently using windows server in TS mode when I need multi-user access to my desktop application.
To avoid having to rewrite a large part of the application, I have been looking to cloud virtualization solutions:
https://cameyo.com/A nice service using windows servers but rather slow and too expensive for my needs
https://www.rollapp.com/Another great service. I think they run your app on linux in a Wine container if needed. I am waiting for further information
https://www.cybelesoft.com/thinfinity/virtualui/Seems to work great with Lazarus but you need a windows server + CAL so this is also too expensive for my needs
https://guacamole.apache.org/Was not able to have it running properly...
https://developer.gnome.org/gtk3/stable/gtk-broadway.htmlAs I was not fully satisfied with what I had found, I started to have a look at other solutions (the main goal is to keep as much as possible of the pascal code used by the application and libraries):
http://www.unigui.com/Seems great but for Delphi and IIS only ?
https://www.elevatesoft.comhttps://smartmobilestudio.comhttps://www.tmssoftware.comOfficially, despite the use of Pas2JS, it is Delphi only for the moment
After having a look at what is ready at the moment, I don't think I would be able to use one of them and get the same functionalities I can achieve in a few clicks with Lazarus beacause they offer:
Only limited or very basic reporting capabilities (I use Fast Report Master/Detail, drill-down events in preview, custom components...etc),
Only Basic charting that doesn't match what you can do on desktop (complex layers and drill-down),
Only Basic grids or components,
etc...
I hope not to be the only one beeing an old school desktop programmer in need to move to the web, and whishing to keep the simplicity of app development he knows and appreciates...
I know there are a lot of efforts done with Pas2JS (it is moving really fast and looks very promising). Just for the ones who don't already know it, you can find some demos on the wiki and in the Pas2JS mailing list:
https://www.freepascal.org/~michael/pas2js/chartjs/index.htmlPas2JS clearly could be the winner but it needs to be connected to a backend service or app.
I wish I could be able to find a good tutorial, a real use case example with all the basic code one needs to implement a first application, including:
- Best tool/editor to design the client UI. Does anybody could recommend a good UI editor we could use until the Lazarus one is ready?
- Easiest way to deploy the app on the server (embedded, cgi, fast cgi) pro and cons?
- Easiest way to debug the app
- How to handle user session and security
- How to exchange data from UI to/from backend
- Recommanded backend frameworks : Mormot, Brook, fpWeb
- How to secure the code if most of the application code is avaliable in the browser via JS
- Some help on how to wrap an UI library
To summarize, some complete tutorials and examples to help building a first app with Pas2JS with an embeded or cgi backend would
I know there are top noch experts here who could create all this in a couple of hours, but I am not... so I can help testing and writing docs under the experts reviews...
This is just my feeling for now.
Some will say I am mixing things up and I surely do, this is why some help will be welcome.
Believe me, I would really hope to find a good solution to develop web apps with Lazarus.