Understand Power Apps component framework

Completed

Microsoft Power Apps component framework helps you create reusable components that can be used within your Power Apps applications. The component framework empowers developers and app makers to build code components when the out-of-the-box components don't fit an app maker's needs. Before the Power Apps component framework existed, makers had to rely on HTML web resources to provide any form of custom presentation to a model-driven form. Now, you can use a more modernized framework that allows an abundance of capabilities to be exposed to your app that would otherwise be impossible to access or, even worse, be unsupported by Microsoft.

For example, the existing screen might render similar to the following image.

Screenshot of an existing screen rendering without custom Power Apps components..

However, if you reconfigured your app to use custom Power Apps components, your app might look something like the following image.

Screenshot of a reconfigured screen with custom Power Apps components.

The Power Apps component framework (PCF) helps teams develop together by supporting the making and use of custom components. Both model-driven and canvas apps have PCF control options. While the making of a fully custom control requires a professional developer, makers of all skill levels can consume them and include them as part of an overall solution.

Canvas app PCF controls is currently in public preview. You can find samples for use in your nonproduction solution, or to inspire ideas, at the Power Apps Community gallery of canvas app components.

Model-driven PCF components allow makers to take a column such as a yes/no column and present it to users with a different visualization. You might present a different visualization to help users have a better mobile experience (think about ease of use for touchscreen controls instead of a radio button). You might also present a different visualization to break up the appearance of standard controls on a form.

Power Apps component framework advantages

Microsoft has significant investment in ensuring that Power Apps components are built on top of a robust framework that supports modern web practices. A few of the advantages that you are afforded as a result are:

  • Access to a rich set of framework APIs that expose capabilities like component lifecycle management, contextual data, and metadata
  • Support of client frameworks such as React and AngularJS
  • Seamless server access through Web API, utility and data formatting methods, device features like camera, location, and microphone, in addition to easy-to-invoke UX elements like dialogs, lookups, and full-page rendering
  • Optimization for performance
  • Reusability
  • Use of responsive web design principles to provide an optimal viewing and interaction experience for any screen size, device, or orientation
  • Ability to bundle all files into a single solution file

Model-driven apps have a full ecosystem of third-party offerings. Many of them can be found at Microsoft’s AppSource. AppSource offers not only products made, and maintained by independent software vendors (ISVs) but also add-ons built by Microsoft. AppSource has thousands of apps available for trial and evaluation.

Screenshot showing Microsoft AppSource page.

The Microsoft Power Platform and Dynamics 365 communities have a long history of providing tools to help makers. These tools are often free and open source and actively seek additional contributors. These community tools offer utilities to help ease the level of difficulty for common use cases within a solution. Remember, although these tools are respected in the community, they are independently maintained, so it’s a good idea to do your due diligence for the appropriateness of their inclusion in your overall strategy.