Salesforce DX Schemas
JSON Schemas help with validation and code completion of json files. Below are the schemas that are available in this repository.
Using the Schemas
If you are using the Salesforce Extensions for Visual Studio Code these schemas are already included for you.
For most other editors, you can use the schemas by adding the $schema
property to the top of your JSON file with the link to the schema document as shown below.
{
"$schema": "https://raw.githubusercontent.com/forcedotcom/schemas/main/sfdx-project.schema.json"
}
You can also use these schemas programatically. For example, Salesforce CLI uses these schema to do certain validation.
const schemas = require('@salesforce/schemas');
const projectJsonSchema = require(schemas['sfdx-project']);
const projectJsonSchema = require('@salesforce/schema/sfdx-project-schema.json']);
Updating project-scratch-def.schema.json
Run the features-update
and settings-update
scripts on every major release and open a PR with the new changes against the main
branch to keep the schema files up to date
Generating Schema from TS files
the /src folder contains the TS type used to generate the replacements
project property.
You can define (or import and re-export) TS types and then use this extension. It adds a "Generate JSON Schema from type" action to your palette.
The results go into /compiled
, which can be used to copy-paste into the project.
Bugs and Feedback
To report issues or feedback with the schemas, open a bug on GitHub.