Skip to main content
rule official · GitHub

pcf-overview — GitHub Copilot rule: what it does, how to install

Guides GitHub Copilot on Power Apps Component Framework architecture. Helps generate code components for canvas and model-driven applications.

Install into GitHub Copilot · Manually: put the files in place All methods and platforms ↓
.github/instructions/pcf-overview.instructions.md
Open on GitHub

What pcf-overview does

This instruction configures GitHub Copilot for Power Apps Component Framework (PCF) development. It applies to TypeScript, CSS, and project files like .pcfproj or .csproj. The rule explains how to swap standard text columns for custom controls like dials or transform record sets into maps.

Framework code runs inside the Unified Interface only. It will fail on the legacy web client, and Microsoft does not support it for on-premises deployments. Direct browser calls to third-party endpoints trigger premium licensing, which requires an <external-service-usage> declaration in the manifest.

What it helps with

  • replace numeric form columns with custom sliders or dials
  • render dataset views as maps or calendar controls
  • declare external domains in the component manifest
  • bundle TypeScript, markup, and styling into a single solution

Example prompts for the agent

  • Generate a PCF manifest for a slider control that binds to a numeric field
  • Configure external-service-usage in the manifest for an external REST endpoint
  • Write a dataset component structure to display records in a calendar view

How to install pcf-overview

Manually: put the files in place

.github/instructions/pcf-overview.instructions.md

The applyTo field sets which files it applies to

Step by step, with commands for each platform: AGENTS.md vs CLAUDE.md: what they are and which one to use

Questions about pcf-overview

How to install pcf-overview in GitHub Copilot?

Place the file at .github/instructions/pcf-overview.instructions.md in your repository. GitHub Copilot will use it whenever you work on files matching .ts, .tsx, .pcfproj, or .csproj.

What does the pcf-overview rule do?

It provides GitHub Copilot with architectural guidelines for Power Apps code components. This helps the assistant adhere to manifest schemas, licensing rules, and framework API limitations.

Does PCF work with on-premises deployments?

No, the framework is not supported for on-premises environments. It only runs in cloud deployments using the Unified Interface.

Source text

pcf-overview.instructions.md · MIT
---
description: 'Power Apps Component Framework overview and fundamentals'
applyTo: '**/*.{ts,tsx,js,json,xml,pcfproj,csproj}'
---

# Power Apps Component Framework Overview

Power Apps component framework empowers professional developers and app makers to create code components for model-driven and canvas apps. These code components can be used to enhance the user experience for users working with data on forms, views, dashboards, and canvas app screens.

## Key Capabilities

You can use PCF to:
- Replace a column on a form that displays a numeric text value with a `dial` or `slider` code component
- Transform a list into an entirely different visual experience bound to the dataset, like a `Calendar` or `Map`

## Important Limitations

- Power Apps component framework works only on Unified Interface and not on the legacy web client
- Power Apps component framework is currently not supported for on-premises environments

## How PCF Differs from Web Resources

Unlike HTML web resources, code components are:
- Rendered as part of the same context
- Loaded at the same time as any other components
- Provide a seamless experience for the user

Code components can be:
- Used across the full breadth of Power Apps capabilities
- Reused many times across different tables and forms
- Bundled with all HTML, CSS, and TypeScript files into a single solution package
- Moved across environments
- Made available via AppSource

## Key Advantages

### Rich Framework APIs
- Component lifecycle management
- Contextual data and metadata access
- Seamless server access via Web API
- Utility and data formatting methods
- Device features: camera, location, microphone
- User experience elements: dialogs, lookups, full-page rendering

### Development Benefits
- Support for modern web practices
- Optimized for performance
- High reusability
- Bundle all files into a single solution file
- Handle being destroyed and reloaded for performance reasons while preserving state

## Licensing Requirements

Power Apps component framework licensing is based on the type of data and connections used:

### Premium Code Components
Code components that connect to external services or data directly via the user's browser client (not through connectors):
- Considered premium components
- Apps using these become premium
- End-users require Power Apps licenses

Declare as premium by adding to manifest:
```xml
<external-service-usage enabled="true">
  <domain>www.microsoft.com</domain>
</external-service-usage>
```

### Standard Code Components
Code components that don't connect to external services or data:
- Apps using these with standard features remain standard
- End-users require minimum Office 365 license

**Note**: If using code components in model-driven apps connected to Microsoft Dataverse, end users will require Power Apps licenses.

## Related Resources

- [What are code components?](https://learn.microsoft.com/en-us/power-apps/developer/component-framework/custom-controls-overview)
- [Code components for canvas apps](https://learn.microsoft.com/en-us/power-apps/developer/component-framework/component-framework-for-canvas-apps)
- [Create and build a code component](https://learn.microsoft.com/en-us/power-apps/developer/component-framework/create-custom-controls-using-pcf)
- [Learn Power Apps component framework](https://learn.microsoft.com/en-us/training/paths/use-power-apps-component-framework)
- [Use code components in Power Pages](https://learn.microsoft.com/en-us/power-apps/maker/portals/component-framework)

## Training Resources

- [Create components with Power Apps Component Framework - Training](https://learn.microsoft.com/en-us/training/paths/create-components-power-apps-component-framework/)
- [Microsoft Certified: Power Platform Developer Associate](https://learn.microsoft.com/en-us/credentials/certifications/power-platform-developer-associate/)

© github · MIT · github/awesome-copilot

Topics and platforms

All IDE rules for Frontend and UI →

From the same set861

The whole set →
performance-optimization This rule helps spot web performance issues tied to Core Web Vitals and review possible fixes. Use it when working on page loading, rendering, or layout stability. ★ 40,418repo stars pcf-tooling A rule that tells Copilot to use Microsoft Power Platform CLI for building, debugging and deploying Power Apps code components. ★ 40,418repo stars pcf-sample-components Guides GitHub Copilot through preparing, building, and bundling Power Apps Component Framework samples into deployable solution archives. ★ 40,418repo stars pcf-react-platform-libraries This rule guides GitHub Copilot through building React-based PCF controls with Power Apps platform libraries. Use it when setting up virtual controls for canvas or model-driven apps. ★ 40,418repo stars pcf-model-driven-apps Teaches GitHub Copilot how to build and update code components for model-driven apps. Applies to ts, tsx, js, json, xml, pcfproj and csproj files. ★ 40,418repo stars pcf-manifest-schema A rule that feeds Copilot the structure of ControlManifest.Input.xml: which elements and attributes exist and what they do. Useful when editing a PCF component manifest. ★ 40,418repo stars pcf-limitations Instructs GitHub Copilot on Power Apps Component Framework restrictions. It prevents unsupported API calls and insecure storage patterns in PCF projects. ★ 40,418repo stars pcf-fluent-modern-theming This rule shows how to style PCF components with an app’s modern theme. Use it with Fluent UI controls or custom elements that read theme tokens. ★ 40,418repo stars

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor