Microsoft Power Apps, which is part of the Power Platform stack, was launched to allow organisations to create custom apps quickly and easily, regardless of coding knowledge. Power Apps allows users to drag and drop components to create apps. Not only does this remove the need for manual code and programming knowledge, but it also makes app development much faster and more convenient.
There are two main types of apps that Power users can build - canvas and model-driven - and today, we’ll be explaining the differences between the two, benefits and more.
A canvas app is commonly seen in tablet or mobile apps when embedded in a Power BI dashboard. It’s exactly how it sounds - you get a blank canvas. From that, you can drag, drop, move, resize, and reformat the components where you need them to build your user interface.
Once you’re happy with your design, you can integrate it with one or more data sources using Excel-style formulas.
A model-driven app allows you to quickly add components (e.g. dashboards, charts, forms etc) to your apps. However, it takes on a more data-driven approach than the canvas app, which is where its alternative name is derived from (data-driven app).
What this means is most of the user interface components will be based on data that you choose. This data will be stored in Dataverse, the cloud-based storage space where you can store your business data.
To be honest, one isn’t really better than the other. Yes, a canvas app might be better suited to task or role-based solutions and a model-driven app might be more ideal for end-to-end solutions. But who’s to say you won’t need both types of solutions?
In other words, you should be looking to see where canvas apps and model-driven apps can complement different business processes.
When you create your data structure, your entity creation will likely be in Dataverse and you can reuse that and any connections you work on in either of the apps. In a model-driven app, once you’ve created and/or are adding new tables, designing a model-driven app interface from that is fairly quick and easy. It’s what it’s made for.
But in the canvas app, you need to put in more design effort. Soon, co-pilot, Microsoft’s end-user AI technology, will start to ease the design effort for canvas apps too, until then, it’s not as easy to convert into a model-driven app.
My top tip? If you’re doing something that needs rows and columns of data, or builds on data entered by other processes, you can start with model-driven. If you want to embed the application somewhere or you want something on your phone/tablet as you’re on-the-go, or for users that don’t commonly use enterprise applications, then a canvas app is a better fit.