Skip to content

Feedback for “Overview” #9

Open

Description

@john-storey-devops

Hi Luke.

Love you work on presenting the FFLIB; impressive.

Just curious if you've had a look at the AT4DX framework that John Daniel and I worked on - also available at AEP. Basically it's an extension of FFLIB and ForceDI tuned for Custom Metadata configuration and dependency injection, which better facilitates modular development.

Let either of us know if you're interested or have any questions.

-- @john-storey-devops

Activity

  1. lukethacoder commented on Jul 16, 2025

    @lukethacoder
    Owner

    Hi @john-storey-devops,

    This repo/site does advocate for the ForceDI approach using Custom Metadata/DI. The introduction page outlines the 4 main repos that comprise of fflib/at4dx (ref - fflib-apex-common, fflib-apex-mocks, force-di & at4dx).

    The examples of each of the different layers have Custom Metadata steps too as required to get things working (example for Selector Layer.

    Maybe the language doesn't 100% align? Happy to adjust if you think it is better presented another way.

  2. john-storey-devops commented on Jul 16, 2025

    @john-storey-devops
    Author

    Fantastic!! I happily stand corrected. I'll look over things some time, but noticed something. The Service CMDT now has a Priority field designed for implementing mock or substitute services in non-production orgs that may not have access to a real service -- think a cheapo credit card service that doesn't have a dev instance for you to play in. 😄

    Consider this diagram as a use case ...
    Image

    Also the Application Factory pattern is very important to the overall scheme of things by enabling test-context mocks. Have you thought about adding some information about that?

    Good job!!
    John Storey

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions