Installation

Getting started with BoxLang is easy! Choose your path wisely!

PLEASE NOTE THAT WE ARE STILL IN OPEN BETA. ANYTHING CAN CHANGE

Requirements

You should be able to grab the Java 21 JRE for your OS and CPU arch here: Download Java 21 JRE

  • JRE 21+

If you want to use our BoxLang/CFML to Java transpiler, you must have the JDK installed, not the JRE.

We recommend using homebrew to get started on a Mac with the BoxLang requirements. If not, you must download the requirements separately from the link above.

brew install curl zip unzip jq openjdk@21

Quick Installer

To get started quickly with BoxLang, use our BoxLang Quick Installer for Mac/Linux/*Nix/Windows

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

If your system requires admin privileges (Like Chromebooks), make sure you use sudo or make sure the /usr/local folder is yours as the owner.

The quick installer requires the following:

  • JRE21+

  • Permission to copy files to /usr/local/bin and /usr/local/lib

The quick installer will install the latest stable OS binary and the MiniServer in the above directories. It will also install the following scripts for you.

  • boxlang - Our BoxLang binary runner, learn more

  • boxlang-miniserver - Our BoxLang MiniServer binary runner, learn more

  • install-boxlang - The quick installer so you can reuse it to upgrade your installations

  • install-bx-module - A module installer. Just pass in the slug of the module and watch it install

  • install-bx-modules - A way to install multiple modules asynchronously. Just pass a space-delimited list

# Install a single module
install-bx-module bx-compat-cfml

# Install multiple async modules
install-bx-modules bx-compat-cfml bx-esapi bx-pdf

Upgrading Your Install

The install-boxlang script will allow you to upgrade your OS installation easily. If you call it without arguments, it will install the latest stable release and override the local install. You can also pass a specific version to install as the second argument or the word snapshotto install the bleeding edge release.

# Upgrade to the latest stable version
install-boxlang

# Upgrade or Downgrade to a specific version
install-boxlang 1.0.0

# Use the latest snapshot
install-boxlang snapshot

You can get the version of the current BoxLang Runtime by running boxlang --version

Installing Core OS Modules

You can use the install-bx-module binary to install modules into your boxlang home. Just pass in the name of the slug you want. You can use the install bx-modulesto install multiple modules at once as well.

All our modules are available in the cloud software directory FORGEBOX. You can also register and collaborate with modules of your own 🙋.

# install individual modules
install-bx-module bx-compat-cfml
install-bx-module bx-esapi

# install multiple modules
install-bx-modules bx-compat-cfml bx-esapi

R.E.P.L.

Read Evaluate Print Loop

A REPL, or Read-Evaluate-Print Loop, is an interactive programming environment that takes single user inputs, executes them, and returns the result to the user. This is particularly useful for testing code snippets and debugging in real time. In the context of BoxLang, running boxlang will start the REPL, allowing you to write and test code quickly within the BoxLang environment.

The REPL will also remember state, so you can define variables and use them in your testing and explorations. Code away 🚀

Binaries

The quick installer is the best and easiest way to get installed on Mac or *Nix. However, below, you can find a collection of all our installers and binaries for running BoxLang and each Runtime.

Operating System Binaries

Here, you can find the installers and binaries for all Operating Systems:

MiniServer Binaries

The BoxLang MiniServer includes the BoxLang OS runtime with the addition of our super fast and lightweight web server.

AWS Lambda Binaries

BoxLang can also run on AWS Lambdas. It even powers our entry playground at https://try.boxlang.io.

CommandBox BoxLang Server

BoxLang can also be deployed using CommandBox. This is our preferred way to deploy web applications using BoxLang. BoxLang +/++ Subscribers even get access to CommandBox Pro. Note: This installation method is typically localized for a particular web application and is not typically accessed generally by other applications.

box install commandbox-boxlang
box server start cfengine=boxlang javaVersion=openjdk21_jdk

Learn more in our CommandBox guide.

Servlet EE Binaries

This is the servlet edition of BoxLang that you can deploy on any servlet container (Jetty, Tomcat, JBoss, etc)

Docker

We have a full Docker guide you can follow here.

BoxLang IDE

The BoxLang IDE is a collection of modules for VSCode that will give you a line debugger, LSP (Language Server Protocol), highlighting, introspection, generation, and much more. You can find it here:

Install Now

Core Modules

The BoxLang core is lightweight and fast. Everything that extends the core comes as modules or individual runtimes. We have a collection of core modules that the BoxLang team maintains and curates. We also have several enterprise modules for our BoxLang +, ++ subscribers, and the community can create and share modules in our cloud package manager FORGEBOX.

We recommend you use CommandBox, Our CLI and Package Manager, to interact, install, and work with any package in BoxLang.

Modules

BoxLang+, ++ Modules

Our BoxLang+, and ++ subscribers not only get professional/customized support but also new features, and modules. You can find out more about our subscriptions here: https://boxlang.io/plans. Here is the collection of modules that you will get with your subscription which are not part of the open source edition.

Module
Description
Status

bx-redis

Native Redis integration for caching, session distribution, and publish-subcribe events.

In Development

bx-mongo

Native MongoDB integration for caching, session distribution and advanced MongoDB operations.

In Development

bx-couchbase

Native Couchbase integration for caching, NoSQL, session distribution and advanced Couchbase usage.

In Development

bx-pdftools

Our collection of enhanced PDF tooling. Includes the ability to extract PDF forms, fill out PDF forms, squash, merge and more.

In Development

Last updated

Logo

Copyright & Register Trademark by Ortus Solutions, Corp & Ortus Software, LLC