web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Shazam - A boilerplate...
Power Apps
Unanswered

Shazam - A boilerplate for Power Apps projects

(0) ShareShare
ReportReport
Posted on by 7

Dear Community,

I have created a boilerplate/template MSBuild  solution to help developers use modern software development practices like distributed code versioning system (git), continuous integration and delivery etc. to build model driven applications in power platform. The idea is to provide a one stop shop when it comes to building all things power platform. There's a still a long way to go but I thought I would share what I've accomplished so far with the community so folks can provide early feedback and possibly benefit from it if needed.

Here's the link to the project  : âš¡ Shazam 

Features

- A Sample Power Platform Solution project which generates both managed and unmanaged solutions (.cdsproj)
- Sample Power Control Framework Components (.pcfproj)
- A Sample Web Resources project using typescript auto wired to the solution using packageMap file
- A Sample Plugins project which auto wired to the solution using packageMap file
- A Sample .net core 3.1 Azure Functions project
- A Sample CRM Package to install the Sample solution with pre and post deployment steps
- A Sample github action to publish crm pacakge, solutions and azure functions artifacts.

IDE Disclaimer:

1. Visual studio currently doesn't support .pcfproj and .cdsproj projects yet, although you can open the solution fine and work on rest of the projects you probably wouldn't be able to build the solution in VS. I would suggest using a powershell core terminal to compile the solution until Microsoft develops support for these project types.
2. Jetbrains Rider supports unknown *.*proj files and loads, cleans & builds both .pcfproj and .cdsproj projects. I am currently using this as my primary IDE

Considerations

1. Uses MSBuild as the primary build engine for all projects. You can build the solution using one single command `dotnet build`
2. Uses PowerApps MSBuild targets published as part of nuget packages  
3. Compatible with Power Apps CLI tools to for PCF controls and cds solutions 
4. The project is setup as a github template, meaning you can start a new project using this template as a baseline. Eventually the plan is to convert this to a dotnet template.

Roadmap:
- Add ILMerge to plugins project
- Add Stylecop
- Add Sample Console Apps
- Add Sample Test Projects
- Add Sample AzureDevops CI/CD pipelines using PowerApps AzureDevOps Extension
- Add Wiki
- Build and add CRM dotnet tool to perform common solution actions like import/export solutions/configuration data, import packages, code generators
- Convert the project to an interactive dotnet template such that a user can provide values for several variables while spinning up a new solution, for e.g. solution name, publisher prefix, publisher name. Also the ability to choose which projects you want to create as part of the solution, for e.g. controls, webresources, plugins, azure functions etc.
- Add frameworks for both server and client to provide a documented and structured way to add business logic in a test driven development fashion.

 

Please feel free to look around, take it for a test run. Your feedback/contribution would be highly appreciated

 

Cheers 🍻
Roshan

I have the same question (0)
  • Ben Thompson Profile Picture
    1,400 on at

    ILMerge shouldn't be used in plugins, if you need to use an outside dll, it's better to create an azure function to perform the task and use a webtrigger to call it.

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Ajay Kumar Gannamaneni – Community Spotlight

We are honored to recognize Ajay Kumar Gannamaneni as our Community Spotlight for December…

Leaderboard > Power Apps

#1
WarrenBelz Profile Picture

WarrenBelz 717 Most Valuable Professional

#2
Michael E. Gernaey Profile Picture

Michael E. Gernaey 329 Super User 2025 Season 2

#3
Power Platform 1919 Profile Picture

Power Platform 1919 268

Last 30 days Overall leaderboard