Type object
Schema URL https://catalog.lintel.tools/schemas/schemastore/commandbox-box-json/latest.json
Source https://raw.githubusercontent.com/Ortus-Solutions/vscode-commandbox/master/resources/schemas/box.schema.json

Validate with Lintel

npx @lintel/lintel check
Type: object

Configuration file for a CFML package

Properties

name string

The name of the package

Default: ""
slug string

ForgeBox unique slug

Default: ""
maxLength=250pattern=^[\w@-]*$
version string

Semantic version of your package

Default: ""
author string

Author of this package

Default: ""
location string

Location of where to download the package. Overrides ForgeBox location

Default: ""
directory string

Install directory where this package should be placed once installed. If not defined, it installs were the CommandBox command was executed.

Default: ""
createPackageDirectory boolean

This determines if the container directory will contain a sub-directory according to the package slug name. The default is true

Default: true
packageDirectory string

This name will be used for the package sub-directory instead of the slug name

Default: ""
homepage string

Project homepage URL

format=uri
documentation string

Documentation URL

format=uri
repository object

Source repository

2 nested properties
type string

The version control system. Popular examples are git, svn, or mercurial

Default: ""
url string

The URL at which the repository resides

format=uri
bugs string

Bug issue management URL

format=uri
shortDescription string

ForgeBox short description

Default: ""
description string

ForgeBox big description. If not set, it can be taken from a Readme.md, Readme, or Readme.txt

Default: ""
instructions string

Install instructions. If not set, it can be taken from a instructions.md, instructions, or instructions.txt

Default: ""
changelog string

Change log. If not set, it can be taken from a changelog.md, changelog, or changelog.txt

Default: ""
type string

ForgeBox contribution type

Values: "caching" "cf-engines" "cfbuilder-extensions" "cfwheels-plugins" "cms" "commandbox-commands" "commandbox-modules" "commandbox-recipes" "contentbox-modules" "contentbox-themes" "contentbox-widgets" "demos" "di" "interceptors" "logging" "lucee-extensions" "messaging-queues" "modules" "mvc" "nosql" "plugins" "preside-extensions" "preside-skeletons" "projects" "testing" "wirebox-aspects" "wirebox-listeners"
keywords array | string

ForgeBox keywords

Default:
[]
private boolean

Designates the package as a private ForgeBox package. Private packages are not publicly accessible, but still offer all the benefits of ForgeBox.

Default: false
engines engine[]

CFML engines the package supports

Default:
[]
defaultEngine string

The name of the default CFML engine for the start command to use.

defaultPort number

Deprecated. The HTTP port the server will be started on when you use the start command. Use port in server.json instead.

projectURL string

Default project URL if not using CommandBox start server commands

format=uri
license object[]

List of licenses the package can have

Default:
[]
contributors person[]

Contributors to the package

Default:
[]
dependencies Record<string, string>

Dependencies are specified with a package name/slug to version range, local file path, URL, or Git/SVN endpoint. The version range is a string which has one or more space-separated descriptors.

devDependencies Record<string, string>

Dependencies are specified with a package name/slug to version range, local file path, URL, or Git/SVN endpoint. The version range is a string which has one or more space-separated descriptors.

installPaths Record<string, string>

Tracks install locations so uninstall can work. The key is the package name/slug and the value is the path

Default:
{}
scripts Record<string, string>

Set of script commands that correspond to the interception points in CommandBox or arbitrary names that can be run with the run-script command

Default:
{}
10 nested properties
preInstall string

Run BEFORE the package is installed

onInstall string

Run WHILE the package is installed

postInstall string

Run AFTER the package is installed

preUninstall string

Run BEFORE the package is uninstalled

postUninstall string

Run AFTER the package is uninstalled

preVersion string

Run BEFORE bump the package version

postVersion string

Run AFTER bump the package version, but BEFORE Git repo is tagged

onRelease string

Run AFTER bump the package version and AFTER Git repo is tagged

prePublish string

Run BEFORE the package is published

postPublish string

Run AFTER the package is published

ignore string[]

List of file globs to ignore when installing the package similar to .gitignore patterns

Default:
[]
testbox object

TestBox integration

3 nested properties
runner string | array

The URI location of the test runner for an app or several with slug names

format=uri
labels string | array

A list of labels to only include when running the tests

excludes string | array

A list of labels to exclude when running the tests

cfmigrations object

Configuration object for CF Migration database settings.

4 nested properties
migrationsDirectory string

Location of generated migration files that migration commands will use.

schema string
connectionInfo object

Location of generated migration files that migration commands will use.

4 nested properties
password string
connectionString string
class string
username string
defaultGrammar string

Name of the qb service to use for grammar.

Values: "AutoDiscover@qb" "BaseGrammar@qb" "MySQLGrammar@qb" "OracleGrammar@qb" "PostgresGrammar@qb" "SqlServerGrammar@qb"

Definitions

engine object

CFML engine the package supports

type string

The name of the engine

Values: "railo" "lucee" "adobe"
version string

The semantic version of the engine that is supported

Default: ""
dependency Record<string, string>

Dependencies are specified with a package name/slug to version range, local file path, URL, or Git/SVN endpoint. The version range is a string which has one or more space-separated descriptors.

person object | string

A person who has been involved in creating or maintaining this package

name string required

Name of the person

url string

URL for the person

format=uri
email string

Email address of the person

format=email