wheels generate app
Create a new Wheels application from templates.
Synopsis
wheels generate app [name] [template] [directory] [options]
wheels g app [name] [template] [directory] [options]
wheels new [name] [template] [directory] [options]
Description
The wheels generate app
command creates a new Wheels application with a complete directory structure, configuration files, and optionally sample code. It supports multiple templates for different starting points.
Arguments
name
Application name
MyApp
template
Template to use
wheels-base-template@BE
directory
Target directory
./{name}
Options
reloadPassword
Set reload password
''
(empty)
datasourceName
Database datasource name
App name
cfmlEngine
CFML engine (lucee/adobe)
lucee
--useBootstrap
Include Bootstrap CSS
false
--setupH2
Setup H2 embedded database
true
--init
Initialize as CommandBox package
false
--force
Overwrite existing directory
false
--help
Show help information
Available Templates
wheels-base-template@BE (Default)
wheels generate app myapp
Backend Edition template
Complete MVC structure
Sample code and configuration
H2 database setup by default
HelloWorld
wheels generate app myapp HelloWorld
Simple "Hello World" example
One controller and view
Great for learning
HelloDynamic
wheels generate app myapp HelloDynamic
Dynamic content example
Database interaction
Form handling
HelloPages
wheels generate app myapp HelloPages
Static pages example
Layout system
Navigation structure
Examples
Create basic application
wheels generate app blog
Create with custom template
wheels generate app api Base@BE
Create in specific directory
wheels generate app name=myapp directory=./projects/
Create with Bootstrap
wheels generate app portfolio --useBootstrap
Create with H2 database (default is true)
wheels generate app demo --setupH2
Create with all options
wheels generate app name=enterprise template=HelloDynamic directory=./apps/ \
reloadPassword=secret \
datasourceName=enterprise_db \
cfmlEngine=adobe \
--useBootstrap \
--setupH2
Generated Structure
myapp/
├── .wheels-cli.json # CLI configuration
├── box.json # Dependencies
├── server.json # Server configuration
├── Application.cfc # Application settings
├── config/
│ ├── app.cfm # App configuration
│ ├── routes.cfm # URL routes
│ └── settings.cfm # Framework settings
├── controllers/
│ └── Main.cfc # Default controller
├── models/
├── views/
│ ├── layout.cfm # Default layout
│ └── main/
│ └── index.cfm # Home page
├── public/
│ ├── stylesheets/
│ ├── javascripts/
│ └── images/
├── tests/
└── wheels/ # Framework files
Configuration Files
box.json
{
"name": "myapp",
"version": "1.0.0",
"dependencies": {
"wheels": "^2.5.0"
}
}
server.json
{
"web": {
"http": {
"port": 3000
}
},
"app": {
"cfengine": "lucee@5"
}
}
.wheels-cli.json
{
"name": "myapp",
"version": "1.0.0",
"framework": "wheels",
"reload": "wheels"
}
Database Setup
With H2 (Embedded)
wheels generate app myapp
H2 is setup by default (--setupH2=true)
No external database needed
Perfect for development
Auto-configured datasource
To disable:
--setupH2=false
With External Database
Create application:
wheels generate app myapp datasourceName=myapp_db --setupH2=false
Configure in CommandBox:
server set app.datasources.myapp_db={...}
Post-Generation Steps
Navigate to directory
cd myapp
Install dependencies
box install
Start server
box server start
Open browser
http://localhost:3000
Template Development
Create custom templates in ~/.commandbox/cfml/modules/wheels-cli/templates/apps/
:
mytemplate/
├── config/
├── controllers/
├── models/
├── views/
└── template.json
Best Practices
Use descriptive application names
Choose appropriate template for project type
Set secure reload password for production
Configure datasource before starting
Run tests after generation
Common Issues
Directory exists: Use
--force
or choose different nameTemplate not found: Check available templates with
wheels info
Datasource errors: Configure database connection
Port conflicts: Change port in
server.json
See Also
wheels init - Initialize existing application
wheels generate app-wizard - Interactive app creation
wheels scaffold - Generate CRUD scaffolding
Last updated
Was this helpful?