Skip to content

wtaxco/force-di

 
 

Repository files navigation

Force DI

Generic dependency injection (DI) library with support for injecting Apex, Visualforce, Lightning, and Flows at runtime.

Documentation

Project Folders

The "core" framework is found in this project. This includes the following:

Folder Description
force-di Core library, contains Injector Apex API and <c:di_injector> VF and Lightning Components
Note: this contains an auto-launched flow called HelloWorld required for the unit tests to pass. If you do not want this flow to be deployed to your org, remove it before deploying; however, unit test coverage will suffer

The "samples" of how to use the framework can be found in the Force-DI Samples project.

Folder Description
force-app-1 Sample application using the API and Components to inject Apex, VF and Lightning at runtime
force-app-2 Sample package providing impls for various bindings above
force-app-3 Sample package providing impls for various bindings above
force-di-trigger-demo Sample basic trigger framework leveraging the API

Force DI Example

Other Resources on Dependency Injection Design Pattern

Some of these blogs and videos are not necessarily Salesforce-specific but give good insights on use cases and purpose behind this design pattern.

Videos

Blogs


Fork-Specific Notes

Syncing with Upstream Updates

The upstream repository uses force-di, while this fork has renamed it to force-app. To sync with upstream updates:

  1. Fetch changes from the upstream master branch:
       git fetch upstream master
       git merge upstream/master
  2. If force-di is reintroduced, rename it directly to force-app:
       mv force-di force-app
    This ensures that all workflows relying on the force-app directory continue to function seamlessly.

About

Generic DI library with support for Apex, Triggers, Visualforce and Lightning

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Apex 90.4%
  • JavaScript 6.0%
  • Shell 3.6%