|
1 | | -# Power Platform Extension |
| 1 | +# Power Platform Tools for VS Code |
2 | 2 |
|
3 | 3 | [](https://github.com/microsoft/powerplatform-vscode/actions?query=workflow%3APullRequest) |
4 | 4 | [](https://dev.azure.com/dynamicscrm/OneCRM/_build/latest?definitionId=12152) |
5 | 5 |
|
6 | | -The Power Platform extension makes it easy to manage Power Platform environments and allows the |
7 | | -developer to create, build and deploy Power Platform solutions, packages and portals. |
| 6 | +The **Power Platform Tools** extension brings the full Power Platform development experience into VS Code. Create, build, and deploy Power Platform solutions, packages, and Power Pages sites — with the Power Platform CLI (pac) integrated directly into your terminal. |
8 | 7 |
|
9 | | -Installing this extension will also make the latest Power Platform CLI (aka pac) available in your VSCode terminal. |
| 8 | +## Features |
| 9 | + |
| 10 | +### Power Platform CLI (pac) |
| 11 | + |
| 12 | +Installing this extension automatically provides the latest Power Platform CLI in your VS Code terminal. Use it to manage authentication, solutions, environments, PCF controls, packages, and more. |
10 | 13 |
|
11 | 14 |  |
12 | 15 |
|
13 | | -## "Power Platform CLI Exposed" Series |
| 16 | +### Authentication & Environment Management |
| 17 | + |
| 18 | +- **Auth Panel** — Create, select, and manage authentication profiles for your Power Platform environments directly from the Activity Bar. |
| 19 | +- **Environment & Solutions Panel** — Browse connected environments, view installed solutions, and quickly copy environment details (URL, IDs, version numbers). |
| 20 | + |
| 21 | +### Power Pages Development |
| 22 | + |
| 23 | +- **Actions Hub** — A centralized tree view for managing Power Pages sites: download, upload, preview, and open sites in Power Pages Studio. |
| 24 | +- **Site Comparison** — Compare local site files against the cloud environment with a full metadata diff view (tree or list), including HTML report generation and import/export. |
| 25 | +- **File Creation Wizards** — Scaffold new webpages, web templates, content snippets, page templates, and web files from the command palette. |
| 26 | +- **Bootstrap Diff** — Identify differences between your portal templates and the latest bootstrap updates. |
| 27 | +- **Server Logic Debugging** — Debug and run Power Pages server logic files with mock SDK and custom mock data support. |
| 28 | +- **CodeQL Security Screening** — Run CodeQL security analysis on your Power Pages sites directly from the Actions Hub. |
| 29 | + |
| 30 | +### Copilot for Power Pages |
| 31 | + |
| 32 | +An integrated VS Code chat participant (`@powerpages`) that helps you write code by describing your expected behavior in natural language. Generate JavaScript for form validation, Web API queries, Liquid templates, and more. |
| 33 | + |
| 34 | +### PCF Control Debugging |
| 35 | + |
| 36 | +Debug Power Apps component framework (PCF) controls with a built-in debugger that launches an Edge browser session connected to your Dataverse environment. Supports custom launch configurations, full-screen rendering mode, and browser profile management. |
14 | 37 |
|
15 | | -[Daniel Laskewitz](https://github.com/Laskewitz) talks with members of our team about PAC CLI, Solutions, Power Pages, Data & Tool, Pipelines, and PCF |
| 38 | +### Language Server Support |
16 | 39 |
|
17 | | -[](https://www.youtube.com/playlist?list=PLlrxD0HtieHhEdLHxQOU96ySSZpMCyAxf) |
| 40 | +- **HTML/Liquid Language Server** — IntelliSense, autocompletion, and diagnostics for Liquid template files used in Power Pages. |
| 41 | +- **YAML Language Server** — Schema validation and editing support for Power Platform YAML files. |
| 42 | +- **Liquid Snippets** — Code snippets for common Liquid template patterns. |
18 | 43 |
|
19 | | -[Power Platform CLI Exposed](https://www.youtube.com/playlist?list=PLlrxD0HtieHhEdLHxQOU96ySSZpMCyAxf) |
| 44 | +### VS Code for Web |
| 45 | + |
| 46 | +The extension supports VS Code for the Web with a tailored experience including a Power Pages file explorer, real-time collaboration view (see who's editing the site), and a getting-started walkthrough. |
20 | 47 |
|
21 | 48 | ## Requirements |
22 | 49 |
|
23 | | -- VSCode >= 1.73.0 |
24 | | -- Windows: .NET 4.8 |
25 | | -- macOS/Linux/WSL: [.NET 6.0+ SDK](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) |
| 50 | +- VS Code **1.91.0** or later |
| 51 | +- [.NET 6.0+ SDK](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) (used to install the pac CLI as a dotnet tool) |
26 | 52 |
|
27 | 53 | ## Getting Started |
28 | 54 |
|
29 | | -Open the VS Code Terminal (Terminal | New Terminal) and type in: |
30 | | - |
31 | | -```bash |
32 | | -> pac |
33 | | -Microsoft PowerPlatform CLI |
34 | | - |
35 | | -Usage: pac [admin] [application] [auth] [canvas] [help] [org] [package] [paportal] [pcf] [plugin] [solution] [telemetry] |
36 | | - |
37 | | - admin Work with your PowerPlatform Admin Account |
38 | | - application Commands for listing and installing available DataVerse applications from AppSource |
39 | | - auth Manage how you authenticate to various services |
40 | | - canvas Operating with Power Apps .msapp files |
41 | | - help Show help for the Microsoft PowerPlatform CLI |
42 | | - org Work with your Dataverse Organization |
43 | | - package Commands for working with Dataverse package projects |
44 | | - paportal Commands for working with PowerApps portal website |
45 | | - pcf Commands for working with PowerApps component framework projects |
46 | | - plugin Commands for working with Dataverse plugin class library |
47 | | - solution Commands for working with Dataverse solution projects |
48 | | - telemetry Manage telemetry settings |
| 55 | +1. Install the extension from the [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=microsoft-IsvExpTools.powerplatform-vscode). |
| 56 | +2. Open the **Power Platform** panel in the Activity Bar. |
| 57 | +3. Create an authentication profile to connect to your environment. |
| 58 | +4. Open the VS Code terminal and start using `pac`: |
| 59 | + |
49 | 60 | ``` |
| 61 | +pac help |
| 62 | +``` |
| 63 | + |
| 64 | +Use the built-in help for any command group: |
50 | 65 |
|
51 | | -The pac CLI will show you the available command nouns with a short description. To get detailed help for each noun, use the built-int help screens for each command, e.g.: |
52 | | - |
53 | | -```bash |
54 | | -> pac solution help |
55 | | -Microsoft PowerApps CLI |
56 | | - |
57 | | -Usage: pac solution [init] [add-reference] [list] [delete] [online-version] [version] [import] [export] [clone] [publish] [upgrade] [add-license] [check] [create-settings] [pack] [unpack] |
58 | | - |
59 | | - init Initializes a directory with a new Dataverse solution project |
60 | | - add-reference Adds a reference from the project in the current directory to the project at 'path' |
61 | | - list List all Solutions from the current Dataverse Organization |
62 | | - delete Delete Dataverse Solution from the current Dataverse Environment |
63 | | - online-version Sets version for solution loaded in Dataverse environment. |
64 | | - version Update build or revision version for solution |
65 | | - import Import the Dataverse Solution into the current Dataverse Environment |
66 | | - export Export a Dataverse Solution from the current Dataverse Environment |
67 | | - clone Create a solution project based on an existing solution in your Organization |
68 | | - publish Publishes all customizations |
69 | | - upgrade Option to stage the Dataverse solution for upgrade |
70 | | - add-license Add license and plan info to solution |
71 | | - check Upload a Dataverse Solution project to run against the PowerApps Checker Service |
72 | | - create-settings Create a settings file from solution zip or solution folder. |
73 | | - pack Package solution components on local filesystem into solution.zip (SolutionPackager) |
74 | | - unpack Extract solution components from solution.zip onto local filesystem (SolutionPackager) |
| 66 | +``` |
| 67 | +pac solution help |
| 68 | +pac power-pages help |
| 69 | +pac auth help |
75 | 70 | ``` |
76 | 71 |
|
77 | | -To then view all solutions installed in the selected environment: |
| 72 | +## Extension Pack |
78 | 73 |
|
79 | | -```bash |
80 | | -> pac solution list |
81 | | -Connected to...vscode-test |
82 | | -Listing all Solutions from the current Dataverse Organization... |
| 74 | +This extension bundles the following extensions: |
83 | 75 |
|
84 | | - Index Unique Name Friendly Name Version |
| 76 | +- [CodeQL](https://marketplace.visualstudio.com/items?itemName=github.vscode-codeql) — Security analysis for Power Pages sites |
| 77 | +- [SARIF Viewer](https://marketplace.visualstudio.com/items?itemName=ms-sarifvscode.sarif-viewer) — View CodeQL and other analysis results |
85 | 78 |
|
| 79 | +## Configuration |
86 | 80 |
|
87 | | - [1] Cr4323c Common Data Services Default Solution 1.0.0.0 |
88 | | -``` |
| 81 | +Key settings (available under `powerPlatform.*` in VS Code settings): |
| 82 | + |
| 83 | +| Setting | Description | |
| 84 | +|---|---| |
| 85 | +| `powerPlatform.auth.cloud` | Target cloud environment (Public, USGov, USGovHigh, USGovDoD, China) | |
| 86 | +| `powerPlatform.experimental.copilotEnabled` | Enable/disable Copilot for Power Pages (default: true) | |
| 87 | +| `powerPlatform.experimental.enablePcfDebuggingFeatures` | Enable PCF debugging capabilities | |
| 88 | +| `powerPlatform.experimental.defaultUrl` | Default PowerApps instance URL for debugging | |
| 89 | +| `powerPlatform.experimental.browserFlavor` | Edge browser version for PCF debugging (Stable, Beta, Dev, Canary) | |
89 | 90 |
|
90 | 91 | ## Feedback & Questions |
91 | 92 |
|
92 | | -Please use the issues tracker in the home repo: <https://github.com/microsoft/powerplatform-vscode/issues> |
| 93 | +Please file issues on the [GitHub issue tracker](https://github.com/microsoft/powerplatform-vscode/issues). |
93 | 94 |
|
94 | 95 | ## Contributing |
95 | 96 |
|
96 | | -This project will welcome contributions in the near future. At this stage, we're not ready for contributions, |
97 | | -but do welcome your suggestions via this repository's issue tracker. |
98 | | -
|
99 | | -See details in [CONTRIBUTING](CONTRIBUTING.md) |
| 97 | +Contributions and suggestions are welcome. Most contributions require you to agree to a Contributor License Agreement (CLA). See [CONTRIBUTING.md](CONTRIBUTING.md) for setup instructions and details. |
100 | 98 |
|
101 | 99 | ### Code of Conduct |
102 | 100 |
|
103 | | -See details in [CODE_OF_CONDUCT](CODE_OF_CONDUCT.md) |
| 101 | +See [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md). |
104 | 102 |
|
105 | | -### Security issues |
| 103 | +### Security |
106 | 104 |
|
107 | | -Please report any security concerns or issues as described in [SECURITY](SECURITY.md) document. |
| 105 | +Please report security concerns as described in [SECURITY.md](SECURITY.md). |
108 | 106 |
|
109 | 107 | ## Trademarks |
110 | 108 |
|
|
0 commit comments