BoxLang is a powerful, multi-runtime dynamic programming language built for the JVM. π Productive, β 100% Java Interoperable, ποΈ Modern & Expressive.
Because of God's grace, this project exists. If you don't like this, then don't read it, it's not for you.
"Therefore being justified by faith, we have peace with God through our Lord Jesus Christ: By whom also we have access by faith into this grace wherein we stand, and rejoice in hope of the glory of God. And not only so, but we glory in tribulations also: knowing that tribulation worketh patience; And patience, experience; and experience, hope: And hope maketh not ashamed; because the love of God is shed abroad in our hearts by the Holy Ghost which is given unto us. ." Romans 5:5
Β
BoxLang is a modern dynamic JVM language that can be deployed on multiple runtimes: operating system (Windows/Mac/*nix/Embedded), web server, lambda, iOS, android, web assembly, and more. BoxLang combines many features from different programming languages, including Java, CFML, Python, Ruby, Go, and PHP, to provide developers with a modern and expressive syntax.
- ποΈ Rapid Application Development (RAD)
- π Dynamic, modular, and lightweight
- β 100% Java & JVM-friendly
- π― Multi-runtime: CLI, Web, Lambda, Mobile, and more
- π₯ Not only a language but a framework
Β
Β
BoxLang has been designed to be a highly adaptable and dynamic language to take advantage of all the modern features of the JVM and was designed with several goals in mind:
- Be a rapid application development (RAD) scripting language and middleware.
- Unstagnate the dynamic language ecosystem in Java.
- Be dynamic, modular, lightweight, and fast.
- Be 100% interoperable with Java.
- Be modern, functional, and fluent (Think mixing CFML, Node, Kotlin, Java, and Clojure)
- Be able to support multiple runtimes and deployment targets:
- Native OS Binaries (CLI Tooling, compilers, etc.)
- MiniServer
- Servlet Containers - CommandBox/Tomcat/Jetty/JBoss
- JSR223 Scripting Engines
- AWS Lambda
- Microsoft Azure Functions (Coming Soon)
- Android/iOS Devices (Coming Soon)
- Web assembly (Coming Soon)
- Compile down to Java ByteCode
- Allow backward compatibility with the existing ColdFusion/CFML language.
- Great IDE, Debugger and Tooling: https://boxlang.ortusbooks.com/getting-started/ide-tooling
- Scripting (Any OS and Shebang) and REPL capabilities
You can find our docs here: https://boxlang.ortusbooks.com/
Apache License, Version 2.0.
This project is a professional open source project and is available as FREE and open source to use. However, we also offer a BoxLang +/++ version that is commercially supported and with extra features. Here are some of the features you can get with our commercial plans:
- Professional Support and Priority Queuing
- Remote Assistance and Troubleshooting
- New Feature Requests and Custom Development
- Custom SLAs
- Application Modernization and Migration Services
- Performance Audits
- Enterprise Modules and Integrations
- Much More
Visit us at BoxLang.io Plans for more information about our commercial plans.
JRE 21 is our compiled code JDK Baseline.
Visit our full guide here: https://boxlang.ortusbooks.com/getting-started/installation. You can also use our quick installers below and get started with BoxLang in seconds.
/bin/bash -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/install-boxlang.ps1'))
Once installed you will have the following binaries available:
boxlang
- The BoxLang language binaryboxlang-miniserver
- The BoxLang MiniServer binaryinstall-boxlang
- The BoxLang installer scriptsinstall-bx-module
- The BoxLang module installer script
https://boxlang.ortusbooks.com/getting-started/running-boxlang
# Startup the REPL
boxlang
# Execute a script
boxlang myscript.bxs
# Execute a class main() method
boxlang MyClass.bx
# Start the MiniServer
boxlang-miniserver
# Install a single module
install-bx-module bx-pdf
# Install a specific version of a module
install-bx-module [email protected]
# Install multiple modules
install-bx-module bx-compat-cfml bx-esapi bx-pdf
Β
BoxLang has its own IDE based on VSCode that you can use to write, test, and debug your BoxLang code. You can download it from the following link: https://marketplace.visualstudio.com/items?itemName=ortus-solutions.vscode-boxlang
- Syntax Highlighting
- Code Completion
- Code Formatting
- Code Folding
- Code Linting
- Code Navigation
- Code Snippets
- Language Server (LSP)
- Built-in Debugger
- MiniServer Management
- OS Management
- Much More.
Learn more about the BoxLang IDE here: https://boxlang.ortusbooks.com/getting-started/ide-tooling
- π Website
- πΌ Professional Version
- π Documentation
- π¬ Slack
- π Community
- π° Latest News
- πΈοΈ Modules
Suport this project by becoming a sponsor or buying a BoxLang +/++ Subscription. Your logo will show up here with a link to your website. Become a sponsor
π Reporting a Bug
- BoxLang: https://ortussolutions.atlassian.net/browse/BL
- BoxLang IDE: https://ortussolutions.atlassian.net/browse/BLIDE
- BoxLang Modules: https://ortussolutions.atlassian.net/browse/BLMODULES
π± Follow us on Social Media:
- π¦ X (Twitter)
- π Facebook
- π LinkedIn
- π₯ YouTube
Made with