30. What is CommandBox?
CLI Package
Manager
REPL
Read-Eval
Print-Loop
Integrated
Server
CFML
ForgeBox Scaffolding
ColdFusion Automation
31. Read - Eval - Pr int - Loop
REPL
• Executes code
• Support CFML or CFScript
• History
• Multi-line Statements
• Declare closures, functions, etc
• Keeps state
32. What is CommandBox?
CLI Package
Manager
REPL
Read-Eval
Print-Loop
Integrated
Server
CFML
ForgeBox Scaffolding
ColdFusion Automation
33. Integrated Server
• Lightweight servlet container: undertow
• Startup ad-hoc servers in any folder
• Keeps track of servers, no WEB-INF needed
• Server
• start
• stop
• status
• log
• open
• forget
34. What is CommandBox?
CLI Package
Manager
REPL
Read-Eval
Print-Loop
Integrated
Server
CFML
ForgeBox Scaffolding
ColdFusion Automation
35. Scaffolding
• ColdBox Applications
• ContentBox Applications
• TestBox Integration
• Custom For Any Framework or Flow
36. Scaffolding
init
coldbox create app “MyApp” —installColdBoxBE
coldbox create handler contacts index,save,delete
coldbox create module MyModule
install testbox-be
package set defaultPort=“90001”
package set testbox.runner=“localhost:90001/tests/runner”
start
testbox run
37. What is CommandBox?
CLI Package
Manager
REPL
Read-Eval
Print-Loop
Integrated
Server
CFML
ForgeBox Scaffolding
ColdFusion Automation
38. Automation
• run
• Any OS binary
• Link to grunt/gulp/ant
• execute
• Execute any CFML template
• recipe
• Like a “Batch” file
• Runs multiple commands
• Can accept parameters
• my-recipe.boxr
39. my-recipe.boxr
# Init a repository
mkdir $name
init $name
run git init
# Create ColdBox App
coldbox create app $1 —installColdBoxBE
coldbox create handler $2 index,save,delete
coldbox create module $3
# Prepare for Testing
install testbox-be
package set defaultPort=“$4”
package set testbox.runner=“localhost:$4/tests/runner”
$> recipe my-recipe.boxr myApp myHandler myModule 8081
40. What is CommandBox?
CLI Package
Manager
REPL
Read-Eval
Print-Loop
Integrated
Server
CFML
ForgeBox Scaffolding
ColdFusion Automation
43. Resources
• Official Site
• http://ortussolutions.com/products/commandbox
• Documentation
• http://apidocs.ortussolutions.com/commandbox/1.0.0/
• https://ortussolutions.com/products/commandbox/docs/current
• Google Group
• https://groups.google.com/a/ortussolutions.com/forum/#!forum/commandbox
• Training
• http://ortussolutions.com/services/training
• Professional Support
• http://ortussolutions.com/services/support