Modules
The Officially supported BoxLang modules
Module Installation
The fastest way to install modules is with CommandBox for web runtimes and the install-bx-module
CLI command for OS runtimes.
You can also install to your local directory and when you run your application, BoxLang will load these modules first and then the BoxLang home ones:
The CommandBox CLI is used to install BoxLang modules into web runtimes, not the operating system home.
Operating System Home
Unzip the module .zip
file into the location .boxlang/modules/
located inside your user home directory (by default):
You can customize the boxlang module directory by changing the runtime.modulesDirectory
setting in your config/boxlang.json
file:
See Runtime Configuration for more info on using the boxlang.json
configuration file.
Core Modules
Here is the collection of modules built and supported by the BoxLang team that are completely open-source.
bx-ai
Category: ai
Welcome to the BoxLang AI Module. This module is a BoxLang module that provides AI capabilities to your BoxLang applications.
Download: https://forgebox.io/view/bx-ai
Instructions: https://github.com/ortus-boxlang/bx-ai
bx-compat-cfml
Category: cfml
This module allows your BoxLang engine to run as an Adobe CFML engine or a Lucee CFML engine. Please note that we will not offer every single feature of the Adobe engines in this single module. It can be spread out through a collection of modules.
Download: https://forgebox.io/view/bx-compat-cfml
Instructions: https://github.com/ortus-boxlang/bx-compat-cfml
bx-password-encrypt
Category: security
This module provides password encryption and hashing functionality to Boxlang.
ArgonHash
: Returns a secure input hash of the given string using the Argon2 hashing algorithm. ( Alias:GenerateArgon2Hash
)ArgonVerify
: Performs a Argon2 verification on the given string against the hashed value. ( Alias:Argon2CheckHash
)BCryptHash
: Returns a secure input hash of the given string using the BCrypt hashing algorithm.( Alias:GenerateBCryptHash
)BCryptVerify
: Performs a BCrypt verification on the given string against the hashed value. ( Alias:BCryptCheckHash
)SCryptHash
: Returns a secure input hash of the given string using the SCrypt hashing algorithm.( Alias:GenerateSCryptHash
)SCryptVerify
: Performs a SCrypt verification on the given string against the hashed value. ( Alias:SCryptCheckHash
)GeneratePBKDFKey
: Generates a PDFK key from the given password and salt.
Instructions: https://github.com/ortus-boxlang/bx-password-encrypt
bx-esapi
Category: security
Leverages ESAPI and AntiSamy to provide your BoxLang applications with security and cleaning concerns.
Download: https://forgebox.io/view/bx-esapi
Instructions: https://github.com/ortus-boxlang/bx-esapi
bx-ftp
Category: Communication
The FTP module allows you to perform various operations against an FTP or SFTP servers.
Download: https://forgebox.io/view/bx-ftp
Instructions: https://github.com/ortus-boxlang/bx-ftp
bx-image
Category: Image Processing
The image module gives you tons of components and BIFs that will provide you with a robust and extensive image manipulation library.
Download: https://forgebox.io/view/bx-image
Instructions: https://github.com/ortus-boxlang/bx-image
bx-jython
Category: Scripting
This module allows you to script in Python within BoxLang. It can also execute python scripts and modules.
Download: https://forgebox.io/view/bx-jython
Instructions: https://github.com/ortus-boxlang/bx-jython
bx-ini
Category: Operating System
This module allows you to interact with ini
files.
Download: https://forgebox.io/view/bx-ini
Instructions: https://github.com/ortus-boxlang/bx-ini
bx-mail
Category: Communication
The mail module for BoxLang gives you a robust component and a collection of bifs that you can use to send mail and interact with mail services.
Download: https://forgebox.io/view/bx-mail
Instructions: https://github.com/ortus-boxlang/bx-mail
bx-oshi
Category: Hardware
You can use this module to get information about the operating system and hardware of your machine. This is a great way to get sensor or embedded system information like batteries, Raspberry Pi, etc.
Download: https://forgebox.io/view/bx-oshi
Instructions: https://github.com/ortus-boxlang/bx-oshi
bx-pdf
Category: Document Services
The pdf module will give you the capabilities to create and stream PDF documents from your BoxLang server code. We also offer the enhanced version in our BoxLang +,++ subscriptions.
Download: https://forgebox.io/view/bx-pdf
Instructions: https://github.com/ortus-boxlang/bx-pdf
bx-ui-forms
Category: UI
This module contributes several semantic UI components using the BoxLang templating language.
Download: https://forgebox.io/view/bx-ui-forms
Instructions: https://github.com/ortus-boxlang/bx-ui-forms
bx-unsafe-evaluate
Category: Compiler
This module will allow you to install an evaluate()
function that can execute BoxLang and CFML expressions. Please note that this approach to coding is discouraged and unsafe.
Instructions: https://github.com/ortus-boxlang/bx-unsafe-evaluate
bx-wddx
Category: Conversion
The WDDX module provides the bridge between the WDDX exchange format and BoxLang. It involves reading and parsing XML, converting data types, handling errors, and ensuring performance and compatibility. The module enables the integration of legacy systems with new applications.
Download: https://forgebox.io/view/bx-wddx
Instructions: https://github.com/ortus-boxlang/bx-wddx
bx-web-support
Category: Testing
This module provides the CLI runtime with all the web server BIFS, components and utilities need for mocking, testing and feature auditing. It also provides with testing facilities to mock a web server and interact with it. This is great for doing CLI based testing on a web application or running the feature audit commands.
THIS MODULE IS NOT NEEDED FOR COMMANDBOX OR THE MINISERVER. IT'S PURELY FOR TESTING, MOCKING AND AUDITING.
Download: https://forgebox.io/view/bx-web-support
Instructions: https://github.com/ortus-boxlang/bx-web-support
bx-yaml
Category: Conversion
This module will serialize BoxLang native types to YAML and YAML to BoxLang Types.
Download: https://forgebox.io/view/bx-yaml
Instructions: https://github.com/ortus-boxlang/bx-yaml
+/++ Modules
These modules are available for our +/++ subscribers only. However, you can install them free of charge and try them out.
bx-redis
Category: Caching
This module will enhance your language by having the ability to connect to Redis instances, clusters, or sentinel instances. Here are some features:
Add native Redis functionality to the language
Connect to a Redis server or a Redis cluster or Redis Sentinel
Store session variables in a distributed Redis cluster
Leverage the Redis publish/subscribe features to create real-time messaging
Get rid of sticky session load balancers, come to the round-robin world!
Session variable persistence even after server restarts
Cache connection capabilities for providing distributed & highly scalable query, object, template, function caching
Much more
Download: https://forgebox.io/view/bx-redis
JDBC Modules
In addition, we offer a number of JDBC modules which package the appropriate JDBC driver for your database vendor of choice. You can find all of the modules in FORGEBOX as well as our GitHub organization: https://github.com/ortus-boxlang/bx-{modulename}
Last updated
Was this helpful?