Installation
Getting started with BoxLang is easy! Choose your path wisely!
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.
Once the requirements are installed, then move down to the quick installer.
Quick Installer
Once the requirements above are installed, to get started quickly with BoxLang, use our BoxLang Quick Installer for Mac/Linux/*Nix/Windows. This will allow you to execute the script in your favorite terminal application. Please note that some OS will require you to run it as an administrator
or with sudo
capabilities.
Just copy the following into your terminal to install be default for your user.
If you want a system-wide installation then prefix it with sudo
:
Please make sure you use the --help
on our scripts to see everything you can do with them.
If your system requires admin privileges (Like Chromebooks, or Linux distros), make sure you use sudo
or make sure the /usr/local
folder is yours as the owner.
The quick installer will install the latest stable BoxLang OS binary and the MiniServer in the above directories. It will also install the following scripts for you:
boxlang
- Our BoxLang binary runner, learn moreboxlang-miniserver
- Our BoxLang MiniServer binary runner, learn moreinstall-boxlang
- The quick installer so you can reuse it to upgrade your installations or install thesnapshot
version of BoxLang. Runinstall-boxlang --help
for more commands.install-bx-module
- A module installer. Just pass in the slug of the module, an optional version or a list of modules. Runinstall-bx-module
for more commands.
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 snapshot
to install the bleeding edge release. You can find all the latest artifacts here: https://downloads.ortussolutions.com/#/ortussolutions/boxlang/
You can get the version of the current BoxLang Runtime by running boxlang --version
Installing 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-modules
to install multiple modules at once as well.
Install to BoxLang Home
Install Locally
You can also install modules to the running application (CLI, web) by using the --local
option in the command. This will create a boxlang_modules
folder from where you ran the command and install the modules locally.
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:
Quick Installer (Mac/*nix) https://downloads.ortussolutions.com/ortussolutions/boxlang/install-boxlang.sh
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.
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:
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.
ModulesBoxLang+, ++ 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.
bx-redis
Native Redis integration is used for caching, session distribution, and publish-subscribe events.
install-bx-module bx-redis
bx-mongo
Native MongoDB integration for caching, session distribution and advanced MongoDB operations.
bx-couchbase
Native Couchbase integration for caching, NoSQL, session distribution and advanced Couchbase usage.
bx-pdftools
Our collection of enhanced PDF tooling. Includes the ability to extract PDF forms, fill out PDF forms, squash, merge and more.
Last updated
Was this helpful?