Porting Xojo WebApp 1.0 to ... what?

Did a project 7 years ago for a vocational school. It’s a monitoring system for a heat-pump lab-rig where students measure temperature and pressures while doing their assignment. Based on RPi 3 with 1Wire probes and two ADC or I2C running Raspbian OS and a Xojo web-app presenting the values to the students over a web interface so they can use their school-provided laptops to connect to the lab equipment’s wifi. (This project is covered in a xdev-mag article in issue 15.1 and I also presented at a MBS Xojo conference in Berlin).


Recently I got a question for two additional installations on two new rigs they are planning and dusted off the project. Been many years since actively developing in Xojo I found that the WebApp framework has moved on, leaving WebApp “1.0” behind. I couldn’t even open the old project in Xojo 2022r4.1 without major loss of code and UI.
Looking at options to mimic the setup (web-based UI) I now consider a a RPi 4/5 running apache, php and a JavaScript UI.
Any thoughts?

If you don’t need a rewrite (original code still working fine), you can use older Xojo (we use 2019r1.1 for some legacy projects).

If you want to rewrite, it looks like you know enough PHP/JavaScript to use that to rewrite your app.

As alberto says, you dont need the latest release of xojo, My last pro licence is 2018r3 and I use that to mantaine some old web proyects. Last release to suport web1: 2019r3.2, they shoud still work for ARM 32Bits.

If you want to thinker with another Basic like languaje that can create its own server you can check B4J.

But if you already use PHP, maybe is the easiest path

Had to go back to 2018r4 but now I have it open.

1 Like

I had to port an application like that (means measuring Data from devices to cloud to desktop and to mobile. My only chance was rewriting, I wrote the Webapp to Java, the mobile Apps to codenameone / Java and the Server application I wrote entirely in Java. So far no problem. You also could write your Webapp in Java with vaadin.

One Raspberry Pi 3B with 1-Wire controller could easily handle multiple installations of heatpump rigs.

I would write a simple WebSocket based Pub/Sub server to act as a message transport between the Raspberry Pi and user interface programs. Raspberry Pi would get periodical data from the 1-Wire controller on every 5 or 10 seconds or when event happens. It would publish topics about every data item it gets from the 1-Wire controller. UI program simply subscribes into topics and can be written in any programming language or can be a simple html page with JavaScript.

Simple (not secure html page) demo about the idea, sorry about the Finnish language.

1 Like