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.
Quick Installer
To get started quickly with BoxLang, use our BoxLang Quick Installer for Mac/Linux/*Nix/Windows
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 moreboxlang-miniserver
- Our BoxLang MiniServer binary runner, learn moreinstall-boxlang
- The quick installer so you can reuse it to upgrade your installationsinstall-bx-module
- A module installer. Just pass in the slug of the module and watch it installinstall-bx-modules
- A way to install multiple modules asynchronously. Just pass a space-delimited list
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 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-modules
to 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 🙋.
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.
We recommend you use CommandBox, Our CLI and Package Manager, to interact, install, and work with any package in BoxLang.
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 for caching, session distribution, and publish-subcribe events.
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