Project Structure
SlightWork leverages the Source Format, which is the modern structure for SFDX projects.
This structure provides SlightWork with the greatest degree of flexibility to implement a completely modular design, resulting in a framework that makes it easy to leverage only what you need.
Source Code
The source code follows a monorepo structure containing a single SFDX project. The project is comprised of numerous modules and their respective submodules to make up framework. Each module is provided with its own directory structure to establish logical and technical boundaries.
The following represents a high-level overview of an example module structure that you can expect:
moduleName/
main/
default/
classes/
submodule1/
/tests
SubmoduleClass1.cls
SubmoduleClass2.cls
...
ModuleClass1.cls
...
customMetadata/
objects/
triggers/
...Modules
Within SlightWork, a module represents both logical and technical boundaries for the grouping of code, metadata, and other assets. These boundaries are set according to a specific problem domain that it addresses, such as the primitive module for working with primitive data types.
Additionally, each module can contain various submodules to further establish logical and technical boundaries, such as the integration module containing the callout and endpoint submodules.
While each module is designed to work independently, they can easily work in conjunction with other modules, making for a highly flexible and extensible framework.
