Help Getting Started With Xojo

We need to re-develop our Windows desktop vertical market business application to be web and multi-platform based. We like what we see in Xojo from a high level, but we have some questions about technical details that we have not been able to get help with from Xojo customer or technical support. I’m glad to see there is an active forum community, and I would really appreciate any help with these (and possible other) questions:

  • When you create a web application with Xojo, what is the underlying technology of the web application? For example, is it a server side application that renders all of the HTML on the server? In particular, what runs in the server, and what runs in the client?

  • Is it possible to use Xojo to develop a REST API? And then write front end apps in Xojo that will access data on the server through the REST API?

  • Can you create “responsive” web applications with Xojo? In other words, can you design and develop a single web application that will be able to dynamically re-position and size screen elements to run on different sized screens - from desktop, to mobile phone screens?

  • Also, when you create a MacOS application, does Xojo generate Swift (or Objective C) source code that then must be compiled in Xcode on a Mac?

  • And, when you create a Windows and MacOS application, does Xojo generate source code that must compiled (in which language) on a Windows computer? Or does it generate a Windows executable file?

One more thing: since we are just getting started with Xojo, I would like to ask if there is anyone out there who would be available to consult on a paid basis for us, to help us get started, and assists us with system infrastructure design and best practices.

Thank you!

I’m not using doing web development so I’ll let the others answer that part.

As for the desktop apps either in Mac or Windows, once compiled in Xojo, they are native compiled executable which are ready to run or deploy. You wouldn’t need to recompile them on xcode or anything else to get them working.

[quote=410304:@Dan Fellman]- Also, when you create a MacOS application, does Xojo generate Swift (or Objective C) source code that then must be compiled in Xcode on a Mac?

  • And, when you create a Windows and MacOS application, does Xojo generate source code that must compiled (in which language) on a Windows computer? Or does it generate a Windows executable file?[/quote]
    No, as Edwin said… it is compiled directly (LLVM?)
    However, for iOS applications, an Xcode installation IS required, but neither ObjC nor Swift are involved

If you would like to discuss a consulting gig (for Desktop (using Xojo) and/or iOS (using Swift and NOT Xojo), please contact me via Private message … I have 12 years experience with Xojo, 5 years with Swift, and 30+ years of IT experience in general, recently retired, so I have a lot of “spare time” :slight_smile:

Currently, a Xojo web application is a server application mostly with rather a desktop kind of approach. This will change soon – you can find some details when you search this forum or the blog for Web 2.0 framework.

A REST API can be created easily with a Xojo web or console app even. You might want to have a look at https://aloe.zone for a free example of a Xojo based server.

Responsiveness is not a strength of Xojo web apps. This will change possibly with the web framework 2.0 soon.

There is no Swift, Objective C or C# intermediate code. Xojo uses (in 64 bit) LLVM to create native code using (mostly) the native API controls of the respective target platform directly. There is an excellent series of articles about the compiler on the Xojo blog: https://blog.xojo.com/2017/12/04/llvm-everywhere/

EDIT: On Windows, what you get is an executable file bundled with a library and a resources folder. You can use some tools to turn that into a Windows installer or a (visibly) simple executable file.

[quote=410304:@Dan Fellman]- When you create a web application with Xojo, what is the underlying technology of the web application? For example, is it a server side application that renders all of the HTML on the server? In particular, what runs in the server, and what runs in the client
[/quote]

The server is running a binary console application either via cgi or standalone executable. It receives most applications from the client and then pushes the HTML down to the browser. The browser runs as little as possible though there are some things that run in it. Xojo Web app sessions need an always on connection which means they run quite a bit different than most web tech. There is a finite limit to the number of sessions that any single Xojo web app can run. After that you end up having to have load balancing with multiple applications.

The strength of Xojo is that can compile for Mac, Windows, and Linux on any of those platforms. I’m a Mac user but build for Windows and Linux all the time with no issues. Likewise a Windows user would have no problem compiling for Mac and Linux. iOS is the only exception in that it requires a Mac. Each target executable is built in native binary code.

[quote=410304:@Dan Fellman]One more thing: since we are just getting started with Xojo, I would like to ask if there is anyone out there who would be available to consult on a paid basis for us, to help us get started, and assists us with system infrastructure design and best practices.
[/quote]

To find developers that can help you I’d suggest posting to Xojo: Find a Developer. That broadcasts it to a wider audience. Full disclosure: we respond to most requests. We’ve got 16 years of Xojo experience and currently have 3 full-time Xojo developers. We offer a full range of consulting services, developer products, and Xojo training. Others on the forum will respond to. Our website is www.bkeeney.com