Languages Platforms IDEs | Download Pricing |

Development for the web is one of many areas where Elements excels, and it gives you a variety of tools to choose from (and combine), for both server-side and client/browser-side web technologies.


ASP.NET (including its latest successor, ASP.NET Core) is a great way for server-side web development, both for web sites (such as this very site, which is implemented in Classic ASP.NET and Oxygene) and web applications.

Elements provides access to the full range of the ASP.NET and ASP.NET Core development stack, from classic WebForms (.aspx) to modern web technologies such as Razor for building reactive sites and single-page-applications. All five object oriented Elements languages (Oxygene, C#, Swift, Java and Mercury) can be used for ASP.NET and ASP.NET Core development, with RemObjects C# being used for Razor (.cshtml) support.

ASP.NET builds on top of the .NET and/or .NET Core runtime, and can be hosted on Windows, Linux and macOS servers. Projects can be developed in Visual Studio, Water, and in Fire on the Mac and tested and debugged locally. Visual designer support is available in Visual Studio.


By contrast, WebAssembly is a great technology for building client-side web applications. With WebAssembly, you can write modules in Oxygene, C#, Swift, Java, Go or Mercury that run right inside the web browser, on the end-users system. WebAssembly modules have full access to the Browser's HTML and JavaScript page, so they can interact with and extend what the user sees and experiences on your page – all without server roundtrips.

You can read a lot more about WebAssembly int our WebAssembly: A Primer blog post, as well as in the WebAssembly section of our Documentation Site.

Java Server Pages

Java Server pages (JSP) are the Java world's equivalent of ASP, and a great way to build server-side web sites and applications in the Java ecosystem. Just as with ASP, Elements let you use any of the five object-oriented Elements languages – not just Java – to build JSP sites.

You can read more about Java development in the Java Platform section of our Documentation Site.

Roll Your Own

Elements also lets you create lower-level web servers not build on a large and existing web framework. Out of the box, there are two great options for building quick and flexible HTTP(S) Servers, using the Elements-native open source Internet Pack framework, or the HTTPS/TLS stack that comes as part of the Go Base Library (but is usable from all six elements languages, of course).

Both options make it easy to build your own web serving needs on top of an existing and reliable HTTPS and network stack.

Such custom servers could be build on .NET/.NET Core/Mono or as native executables form Linux, Windows and macOS.

Develop on Windows or Mac

Elements also comes with its own lightweight yet powerful IDEs, Water (for Windows) and Fire (for Mac). Fire and Water are very similar, following the same basic design philosophy, while still fitting in natively on Mac and Windows, respectively. On Windows, you can also choose to work in Visual Studio.

With all three IDEs, you can develop and test your web applications, no matter which of the above technologies you choose, on Mac or Windows. Google's Chrome browser is used for WebAssembly debugging.

All Languages

Remember, with Elements you can use (and mix!) any of the six languages understood by the compiler in your .NET Projects: Oxygene (Object Pascal), C#, Swift, Java, Go and Mercury.

| | | | | |