The Financial Desktop Connectivity and Collaboration Consortium (FDC3) defines a universal connectivity standard for apps in the finance industry. This open standard is gaining traction as a practical approach to desktop connectivity. As a result, many people want to learn it, but aren’t sure where to start. Finsemble is committed to FDC3, and want you to be successful. Here are some FDC3 resources and learnings that can help you get going.
Where to learn about FDC3?
Start with the FDC3 website. Clicking “Get started” takes you to the welcome page that contains the introduction and explains the FDC3 charter. More info is available in the left navigation panel. Follow the links to learn about API (with examples), intents, context data, and app directory. The same info is also available from the FDC3 landing page.
To see where the standard is applied in practice, take a look at the use cases. There are many real life examples, each containing multiple workflows. Many of these workflows will be familiar to you.
If you’re curious who is using the standard, you can see some logos at the bottom of the landing page. The list is not complete, and new logos are added periodically as companies self-identify as using the standard. If you want to add your logo, follow the instructions in Github.
FDC3 is a living standard, which means it changes as the desktop interoperability evolves. Because the standard is open, you can see the next version while it is being developed (note the word “next” in the URL). Be aware that, while the current version is stable, the next version might not be. For this reason, we recommend that you stick with the current version unless you’re absolutely certain the functionality you’re using is going to be available in the next version.
Our FDC3 Overview Section
Looking for a quick location with links to FDC3 content? We built this FDC3 section to help folks explain FDC3 to others and break down the standard in a way that everyone can understand. We’ve got it all covered, including our essential guide to FDC3, notes on different versions, digital roundtables, workbench demos, thought leadership and much more!
Our own Finsemble documentation also contains advice about implementing interop with FDC3. Although we obviously focus on Finsemble, there is some general info for you even if you use a different platform. We also have a tutorial that shows you how to use the FDC3 workbench. The workbench comes with Finsemble, but you can also use it with other platforms. More about it in a moment.
The new course, Interoperability for the Financial Desktop, is aimed at the financial professionals that are interested in learning the basics of integrated workflows between applications. This course can also introduce software developers to the technical concepts that form part of the FDC3 standard.
The course is offered through LinuxFoundationX.
FDC3 GitHub repo
Another excellent FDC3 resource is the FDC3 repo in GitHub. It is the authoritative source for all things FDC3. In fact, FDC3 is governed through its Github repo, and it is moving towards FINOS/Linux Foundation’s recommended governance model and license for standards projects. Our target to get to this model is version 2.0.
(If you are curious about how our target governance model works, you can read the community specification and a blog post from Linux foundation about how to accelerate open standard development. Also read about the currently adopted governance model and its contribution policy.)
If you are interested in recent activity, check out the meeting agendas and minutes as Github issues.
What tools can I use with FDC3?
Apply your learning
The resources we’ve looked at so far provide the theoretical foundation for your FDC3 learning. There are also some resources that will help you gain hands-on skills. These resources are available through the FDC3 website, and we expect they will have their own page soon. For now, you can access them via the website by searching or by following our links.
As you write FDC3-compatible code, you need to test it. So many developers created throwaway tools for testing their apps that we decided to formalize these helper tools and make them reusable. The workbench is the result of this approach, and it will save you a ton of time. You can use it to test how your app communicates with other FDC3-compliant apps by using the workbench as a stand-in for the other end of the communication process.
You can find the workbench tutorial in the Finsemble documentation but the workbench works with any provider. If you’re using anything else other than Finsemble, you need to install the app on your provider platform. You can download the workbench from the FDC3 website.
Note: If you open the workbench link in your browser, you will see this message: FDC3 API not detected. That’s because your browser doesn’t have an FDC3 API implementation. You can load the workbench normally as an app from Finsemble or from another FDC3 desktop agent.
This project explains the details of how to work with FDC3, how to create a PR in GitHub, the formats for commit messages, how to report a bug, how to request a feature, and other info you need so that you can follow the process effectively. At the time of writing, this isn’t live yet, but when available, it will be at this location.
The FDC3 NPM module
The next place for you to look at is the FDC3 NPM module. This module focuses primarily on web apps, and provides you with some good resources, including typescript types for all FDC3 defined objects and APIs.
Using this module you can import FDC3 API calls as es6 modules, which will automatically detect the FDC3 implementation and wait for it to be ready if necessary.
The module also offers backwards compatibility for some deprecated APIs, and utility functions for checking the FDC3 version available in your environment.
FDC3 Desktop Agent browser extension
Another tool you might find helpful is the FDC3 Desktop Agent Browser extension. It is an open source implementation of FDC3 as a Chrome extension. It supports features you would normally expect, including API, appD, intent resolution, channel linking, and search.
Note that this extension doesn’t run in the incognito mode.
How do I get involved with FDC3?
Everyone is welcome to participate, and every perspective is valuable. The standards working group is the main decision-making body. The FDC3 general meeting is held once a quarter with an overview of all recent activity.
Why you should get involved
You could use the FDC3 standard in several ways. You might plan to implement a desktop agent or app directory, you might want to add compliance support to apps to interoperate with others via FDC3, or you might simply decide to use apps, desktop agents or app directories written by others. Ultimately, it doesn’t matter how you use this standard. If you or your company wants to use it, consider getting involved.
Kris West, Finsemble Principal Engineer, has recently been appointed FDC3 Co Lead-maintainer. We’re proud to have Kris represent Finsemble in the FINOS working group.
There are important advantages to such participation. First, your participation in the governance, maintenance, and further development of the FDC3 standard will help protect and strengthen the ecosystem around FDC3. A strong ecosystem benefits all participants. Second, getting involved will also make it possible for you to guide the standard in directions that are helpful to you and your company or department. Finally, by participating in discussions and watching others solve their challenges you can strengthen your own understanding of ways other companies use the standard. This in turn might inspire you to improve your own solutions.
If you or your firm are new to contributing to open source projects, check out the variety of resources available from FINOS, (such as the Open Source readiness project, Linux Foundation Participating in Open Source communities, opensource.guide and others).
What FDC3 activities can I participate in?
If you want to be involved with FDC3 on a deeper level, join the meeting groups. Discussion groups currently running:
- Desktop Agent Bridging: connecting different FDC3 implementations to each other
- Contexts and intents: defining more actions and message formats
- App Directory: working on the next generation of the AppD standard
The FDC3 maintainers and editors are doing the work behind the scenes to keep FDC3 running and make sure all the resources are current.
If you want to have a say about the standard, check out the details of how to get involved with the FDC3 community and of how to contribute to FDC3.
Check out the embeddable FINOS community calendar for more details about the upcoming FDC3 events, or email FINOS to have them added to your calendar.