I am working on an sfdx project based on the sfdx-falcon template. I studied all available materials that I could find:

  1. SFDX-Falcon Project Template
  2. Salesforce DX 201 - Advanced Implementation for ISVs
  3. Two SFDX project folder structure questions

Generally it's clear how to work with a falcon project. However, when it comes to details, I am confused with the purpose of certain folders (modules), or where to put some components (e.g. pages, applications, flexipages etc.) To my bitter disappointment I couldn't find reasonable explanation so far.

Question 1

For example, in DX Custom Metadata Types are stored in the customMetadata folder, and it is confusing when I see customMetadata and customMetadataTypes folders in the Schema folder. So what purpose does each of these two folders serve in the Schema folder?

Question 2

I have a custom application (.app-meta.xml) in the applications folder. Where should I put my apps: somewhere in the main module or create a feature module for this?

1 Answer 1


Answer 1 CustomMetadataTypes and CustomMetadata are 2 different metadata representation that is why they are stored in 2 different directory. CustomMetadataTypes can be considered as a custom metadata shape like sObjects being shape of your records. However CustomMetadata is the input for that shape.

In other words CustomMetadataTypes are special object types and CustomMetadata is a special type of record.

Answer 2 That depends on how you manage your metadata structure if your application contains only a specific feature related items and no dependency to any other metadata apart from your default and the subjected feature then you can store the app in your feature directory.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .