-
Notifications
You must be signed in to change notification settings - Fork 2
Home
Dataverse PowerTools is a Visual Studio Code extension that streamlines Dataverse / Dynamics 365 / Power Platform development. It scaffolds projects, manages your Dataverse connection, and runs the whole build/deploy loop — solutions, web resources, plugins, and portals — without leaving the editor.
Everything runs on the cross-platform Power Platform CLI (pac)
and the .NET SDK, so it works on Windows, macOS, and Linux.
| Project type | Highlights |
|---|---|
| Solutions | Export, unpack, pack and import Dataverse solutions with pac, ready for source control and CI/CD. |
| Web Resources | Write TypeScript, bundle with webpack, deploy straight to Dataverse, generate strongly-typed Xrm typings, and unit test with Jest + xrm-mock. |
| Plugins | Create plugin/workflow classes, register steps with CodeLens decorations, generate early-bound types, build with dotnet, deploy as a plugin package, and unit test with DataverseUnitTest. |
| Portals / Power Pages | Download and edit Power Pages site content with pac pages. |
- Install the prerequisites (.NET SDK, Node.js, Power Platform CLI) — the Actions panel shows a live ✓/✗ check of all three.
- Open an empty folder in VS Code and click Initialise Project in the Actions panel (or run Dataverse PowerTools: Initialise Project from the Command Palette).
- Pick a project type, then sign in interactively or with a service principal and choose your environment and solution.
New to the extension? The built-in Getting Started walkthrough
(Help → Get Started, or Open Walkthrough in the panel) guides you through all of
this with self-completing steps.
See Getting Started for the full guide, and Connecting & Authentication for the sign-in options.
Everything lives in the Dataverse PowerTools activity-bar panel (all commands are also in the Command Palette). The panel shows your project as cards, with live state:
-
Environment card — the connected org, auth type, a connection indicator, and an
optional DEV/TEST/PROD badge (set
environmentLabelindataverse-powertools.json). Switch environment or update authentication from here. - Project card — one primary action (e.g. Deploy to <org>), a short row of everyday actions, and the rest behind ⋯ (including Restore dependencies). A status line shows the last operation (running / succeeded / failed).
-
Form Registrations (web resources) — every
RegisterEventdecoration found in your source; click a row to jump to the file. Registrations are applied automatically on every deploy. - Recent — the last few builds/deploys/typings runs with their outcome, so failures don't hide in the output channel.
| Plugins | Web Resources | Solutions | Empty workspace |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
- Getting Started — install, requirements, initialise a project.
- Connecting & Authentication — interactive vs service principal, secret storage, switching environments.
- Solutions · Web Resources · Plugins · Portals / Power Pages
- Troubleshooting — common issues and fixes.



