Aloe Express Frequently Asked Questions

Basic Questions

What is Aloe Express?
Aloe Express is a simple yet powerful Web server module that can be used in Xojo console and Web projects. It provides a foundation on which you can develop a number of different types of solutions, including Web apps, Web sites, Web APIs, and microservices.


Why would I want to develop Web sites with Xojo / Aloe Express?
If you're already familiar with Xojo and using it to develop apps, then one obvious reason is that you can put your skills and experience to use in creating Web sites. In many cases, you can use Aloe Express and Xojo code that you've written for other projects to quickly create powerful, dynamic Web sites and more.

If you're new to Xojo, then taking the time to learn it is time well spent. With a single language and IDE, you can create apps that run on macOS, Windows, Linux, the web, iOS and Raspberry Pi. And again, with Aloe, you can use Xojo to create Web sites as well.

Another reason to use Xojo for Web development is that Xojo apps can be compiled and run on Mac, Windows, and low-cost Linux servers. Because they're compiled, Xojo Web apps are typically faster, more reliable and more secure than Web apps created using other technologies.


What experience and skills do I need in order to use Aloe Express?
To use Aloe Express, you'll need a good grasp of Web development in general, as well as some experience developing with the Xojo programming language.


Do I need Xojo in order to develop with Aloe Express?
Yes, absolutely. You can download Xojo, develop apps, and test them for free. When you're ready to deploy your apps, you'll need to purchase a Xojo license.


How much does Aloe Express cost?
Aloe Express is being provided via an open source license, so there's absolutely no charge to use it. To view the license, click here.


Who developed Aloe Express?
Aloe Express was developed by Tim Dietrich. Tim develops custom software that helps businesses innovate and grow.


Technical Questions

Do long running requests block other requests?
Yes, and no.

Aloe Express processes each request in its own thread. So in theory, long running requests do not block other requests.

However, Xojo uses cooperative/non-preemptive threading. As a result, it is still possible for Aloe Express apps to block on I/O operations. While Aloe Express's threading model does not prevent blocking, it does help to reduce its frequency and severity.


Are SSL connections supported?
Yes! Starting in Aloe Express 2.0, SSL connections are supported. However, we still highly recommend running your apps behind something that acts as a proxy server, and that can handle SSL termination (such as nginx, HAProxy, etc).


Are sessions supported?
Yes. Aloe Express's SessionEngine class can be used to maintain state between requests.


Are WebSockets supported?
Yes. Starting with v4.0, Aloe Express supports WebSockets based on RFC 6455.


What happened to the original "Aloe?"
The original Aloe module (which was designed for use exclusively with Xojo Web projects) can still be downloaded here.