boxlang title
BoxLang Dynamic Modular Productive

Open Beta

A modern, dynamically and loosely typed scripting language for multiple runtimes.

For the Java Virtual Machine (JVM) giving you tons of Object-Oriented (OO), Functional Programming (FP) Constructs, and dynamic Metadata Programming (MP)

Logo Ortus Solutions Ortus Solutions 18+ years delivering software
Logo Ortus Solutions Ortus Solutions 18+ years delivering software

Latest News

Quick Installer

You can also run this script to install BoxLang in your Mac or *nix.

/bin/bash -c "$(curl -fsSL https://downloads.ortussolutions.com/ortussolutions/boxlang/install-boxlang.sh)"

/bin/sh -c "$(curl -fsSL https://downloads.ortussolutions.com/ortussolutions/boxlang/install-boxlang.sh)"

iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/ortus-boxlang/boxlang-quick-installer/main/src/Run-InstallBoxLang.ps1'))

DOWNLOAD

Download BoxLang according to the target runtime.

Boxlang BoxLang by Ortus Solutions Ortus Solutions

BoxLang was created and is maintained by Ortus Solutions, Corp.

Read More

Contributors

Meet the creators who shaped BoxLang, revolutionizing coding with their dedication and expertise.

Frequently asked questions

BoxLang is a modern dynamic JVM language that can be deployed on multiple platforms: all operating systems, web servers, Java application servers, AWS lambda, iOS, android, web assembly, and more.

BoxLang combines many features from different programming languages, including Java, ColdFusion, Python, Ruby, Go, and PHP, to provide developers with a modern, fluent and expressive syntax. BoxLang has been designed to be a highly modular and dynamic language to take advantage of all the modern features of the JVM.

Yes, BoxLang is free open source software under the Apache 2.0 license. We encourage and support community contributions.

BoxLang is a professional open-source product. Different types of support channels depend on your level of support when you purchase a + subscription.

BoxLang supports a dual parser and compiler that can execute ColdFusion/CFML code natively (maybe more languages later). This means that you can run all your ColdFusion applications within BoxLang natively. We also provide tooling to automatically transpile your ColdFusion code to BoxLang as well.

There are cases where specific Adobe or Lucee functionality might not exist in BoxLang. However, BoxLang is built modularly and these missing features can be created and supported via our BoxLang+ subscriptions.

  • BoxLang is an open-source programming language licensed under the Apache 2.0 license, which means it is free for anyone to use, modify, and distribute.
  • BoxLang+ is our commercial version which offers support and enterprise features. Our licensing model is based on being fair and following the golden rule: Do to others as you want them to do to you.

    Every BoxLang+ subscription covers a single production server on a physical or virtual machine or cloud lambdas. Every development usage is included for FREE. Every non-production instance is included at 50% of the regular price. You can have as many instances of the language running on each machine. If you are using lambdas, we just require 1 license, and you can run as many lambdas as you want.

Every subscription is used to maintain and further extend the language. Your support matters to this project.

FREEDOM TO SCALE!

BoxLang is an open source platform that allows you to deploy an unlimited number of containers for free.

If you need support for your container deployments, you can use BoxLang+. It is licensed on a per-orchestrator-node basis, regardless of the orchestrator you use. You only need to license the nodes, no matter whether you want to deploy 1000000 containers on three or ten nodes. You have the freedom to decide how many containers you want to deploy on each orchestrator node.

Development nodes are always free, while non-production nodes are available at 50% of the regular price.

BoxLang supports 100% Java interop and natively executes Java code in the BoxLang runtime. You can also add ANY Java library to its established class paths, and those libraries will be available at runtime for you ( https://boxlang.ortusbooks.com/getting-started/configuration ).

Coding in BoxLang is fluent and less verbose than Java, apart from all the dynamic and functional aspects you will have available at your disposal. Please check out our quick style guide to see the differences between Java and BoxLang: https://boxlang.ortusbooks.com/getting-started/overview/syntax-style-guide .

There are many ways to support BoxLang. You can assist us in the following ways:

While the Community Edition of BoxLang benefits from the same security practices as the paid subscriptions, there are key distinctions in terms of support and prioritization:

  • Security Notifications: Paid subscribers receive immediate notifications of any security vulnerabilities through dedicated support channels (email, Slack, etc.). Community users may not receive these notifications as promptly.
  • Priority/Security Patches: Paid subscribers have priority access to critical patches for bugs, security vulnerabilities, and new features. This means they are more likely to receive these updates sooner than Community users.

No, all BoxLang users, including those on the Community Edition, benefit from the same security practices and regular updates. However, paid subscribers enjoy the added advantage of priority support and faster access to critical patches, ensuring their applications remain secure and up-to-date.

The timeframe for receiving security patches for community users can vary depending on the severity of the vulnerability and the availability of development resources. While we strive to address critical issues promptly, it's important to note that community users may experience some delays compared to paid subscribers.

In addition to priority support and security patches, paid subscriptions offer several other benefits, such as:

  • Dedicated support channels: Direct access to the BoxLang support team for personalized assistance and troubleshooting.
  • Customizable features: The ability to request specific features or customizations tailored to your needs.
  • Priority feature development: Your feature requests will be prioritized for development, ensuring that your specific requirements are addressed.
Contact form