Lucee

Lucee Server (or simply Lucee) is a dynamic, Java based, tag and scripting language used for rapid web application development.
Lucee simplifies technologies like webservices (REST, SOAP, HTTP), ORM (Hibernate), searching (Lucene), datasources (MSSQL, Oracle, MySQL and others), caching (infinispan, ehcache, and memcached) and many more.
Lucee provides a compatibility layer for Adobe ColdFusion © CFML using less resources and delivering better performance.
What's New
- Lucee 7.1
- Lucee 7
- Lucee 6.2
- Lucee 5.3 "Kabang"
- Lucee 5
- Lucee 8.0 (coming soon)
Changelogs
Breaking Changes
See all breaking changes documentation at docs.lucee.org/recipes:
- Breaking Changes Between Lucee 6.2 and 7.0
- Breaking Changes Between Lucee 7.0 and 7.1
- Breaking Changes Between Lucee 7.1 and 8.0 (coming soon)
Installation
You can build Lucee from source or download a distribution from download.lucee.org. We also provide official Docker images and Dockerfiles.
LuCLI
LuCLI is a command-line interface for Lucee development and deployment. It provides server lifecycle management, CFML script execution, module system, dependency management, and AI integration — all from the terminal.
Quick Start:
curl -LsSf https://lucli.dev/install.sh | sh
# Windows:
powershell -ExecutionPolicy Bypass -NoProfile -Command "irm https://lucli.dev/install.ps1 | iex"
Requires Java 17+.
Core Features:
- Server Management — Start, stop, restart, and monitor Lucee servers with
lucli servercommands - CFML Execution — Run
.cfsscripts,.cfmtemplates, or.cfccomponents directly from the CLI - Project Configuration —
lucee.jsonfor per-project server settings (port, Lucee version, JVM memory, environment variables) - Module System — Create and install reusable CLI modules in
~/.lucli/modules/ - Dependency Management — Manage CFML libraries and Lucee extensions with automatic git/Maven resolution
- Secrets Management — Store and inject encrypted secrets into your Lucee servers
- AI Integration — Configure LLM endpoints and run AI prompts with skill support
- Daemon Mode — Run LuCLI as a background service for programmatic access
- Batch Scripts — Execute sequences of commands with
.luclibatch files
Example lucee.json:
{
"name": "my-project",
"lucee": { "version": "6.2.2" },
"port": 8080,
"webroot": "./",
"jvm": { "maxMemory": "512m" },
"dependencies": {
"cfwheels": { "type": "cfml", "source": "git", "url": "https://github.com/cfwheels/cfwheels" }
}
}
Documentation: lucli.dev/docs | GitHub: cybersonic/LuCLI
AI Assistants & Developer Tools
Lucee Skill for AI Assistants
A machine-readable skill so your AI assistant knows modern Lucee. Drop-in context for Cursor, Copilot, Warp, Claude, ChatGPT, and more. Always aligned with the latest docs.
Lucee MCP Server
Hosted by Lucee, gives your AI callable tools for Lucee documentation and CFML code analysis.
Tools:
search_lucee_docs— search functions, tags, and recipes in the Lucee docsget_lucee_function— full descriptor for a built-in function (arguments, types, examples)get_lucee_tag— full descriptor for a tag (attributes, types, examples)parse_cfml_ast— parse CFML source into an AST (tags, calls, control flow)query_cfml_ast— query an AST by node type, name, or line number
Building Lucee from Source
You can find detailed instructions on how to build Lucee from source.
Lucee has a lot of testcases, there are a number of handy build flags which can be used to avoid running the entire Lucee test suite (which takes a while) when you are working on a specific feature (Lucee 6.+ only).
Lucee uses TestBox as our test framework, we have a customised CFML wrapper around TestBox which can be found in the root directory under /test.
The test suites use a range of Test Services, like s3, database, ftp, etc. You can see how they are configured in _setupTestServices.cfc via the source code.
Getting Help
- Lucee Documentation Project
- Lucee Mailing List / Forum ; General app developer support, hacking on Lucee itself
- Lucee Bug Tracker
If you are looking for commercial support, you might try one of the LAS Members.
System Requirements
Lucee is a JVM language running as a servlet on just about any servlet container; including Apache Tomcat, Eclipse Jetty, JBoss AS, and GlassFish.
We standardise on Apache Tomcat for installers and Docker containers as there is only so much time in the day.
Philosophy
The Lucee team “treats slowness as a bug". Many performance tests have shown Lucee to perform faster than other CFML engines.
Lucee attempts to resolve many inconsistencies found in traditional CFML; either forcing changes in language behavior, or providing configurable options in the Lucee Administrator.
For more peruse the Lucee Manifesto.
The Lucee team is always open to feedback and active at CFML community events, and is keen to remind people that Lucee is a community project.
Our Release approach follows the The Tip & Tail Model of Library Development approach as used by the Java JDK
Contributors
This project exists thanks to all the people who contribute. [Contribute].
Backers
Thank you to all our backers! 🙏 [Become a backer]
Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]
Copyright / License
Copyright 2006-2014 Various contributing authors Copyright 2015-2021 Lucee Association Switzerland
The Lucee code base was forked from the Railo Server Project (Version 4.2) in January 2015. The Lucee Association Switzerland (LAS) is the legal custodian of the code base, and contributors are required accept the LAS Contributor License Agreement (CLA).
Lucee Server is licensed under the Lesser GNU General Public License Version 2.1 (or later); you may not use this work except in compliance with the License. You may obtain a copy of the License in the LICENSE file, or at: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Lucee logo and related marks belong to Lucee Association Switzerland.
