Building SuperApp with Power Platform
Building SuperApp with Power Platform
According to our recent “Low Code Signals 2023” report, Low-code platforms help drive efficiency gains by
1) accelerating legacy application modernization and
2) expediting development efforts via prebuilt components
When it comes to modernizing legacy applications, typically there is an emphasis on modern architecture which is great, but it is also a great opportunity for our customers to provide an enriching user experience that will make them more efficient as they go about their daily jobs.
This is where SuperApps come into the picture.
What is SuperApp?
A SuperApp is an app that provides end users (customers, partners or employees) with a set of core features plus access to independently created mini apps. The SuperApp is built as a platform to deliver a mini apps ecosystem that users can choose from to activate consistent and personalized app experiences.
Gartner expects that by 2027, more than 50% of the global population will be daily active users of multiple SuperApps. The SuperApp concept will also expand to include enterprise mobile and desktop experiences, such as workflow, collaboration, and messaging platforms.
Source: What Is a SuperApp? (gartner.com)
How can we build SuperApp with Power Platform?
Since Low Code and SuperApp are the trends, these facts lead to the question of how we can build SuperApp with Power Platform?
This is not a brand-new concept. Partners and customers are already looking into this, and they have already built SuperApp solutions for years using Power Platform. However, we often hear that they run into performance issues because in the end, it ends up becoming one huge complex canvas app, especially in larger organizations.
We do expect performance issues and other surprises because Canvas Apps are not intended to support a single large app for multiple use cases and business scenarios, and for that reason, we need an architectural approach that extends the development process while ensuring a friendly and reasonable experience for end-users.
Canvas App Hub Suite Demo Solution
Overview
Canvas App Hub Suite Demo Solution is a sample solution curating good practices and recommended design patterns that partners and customers can take advantage of to build their SuperApp solution.
The Solution acts as a “Hub” SuperApp giving access to other important mini apps within one unified interface. This approach is applicable for both Enterprise Mobile and Desktop App development.
You can access the sample solution on
- AppSource at: https://aka.ms/canvasapphub
- GitHub at: https://aka.ms/canvasapphubgh
Features
This template solution will cover some common development practices.
- How to structure Component Library in your multi–App Solution
- How to design a Main Hub App and Child Apps effectively
- How to wrap multiple canvas apps together as a single mobile app package Overview of wrap - Power Apps | Microsoft Learn (Coming soon)
Solution Technical Component Details
Dataverse Key Table:
- App table holds app data for each tile in the Main Menu. To launch a canvas app from another canvas app, we need the App GUID. However, for Model Driven App or other locations, we can simply use the full URL.
Note: You can use Model Driven App Admin App to control the value of each row in App table.
Component Libraries:
- Contoso App Library is a library of reusable components that can be shared among multiple apps, such as headers, footers, app menus, footer menus, search boxes, and loading screens.
Canvas App:
- Contoso Main App Hub acts as a "home base" for users, allowing them to launch different apps/url(s), access data, and perform a range of tasks, all within the same interface.
- Contoso Product App is a sample child app that showcases Contoso's range of products in a mixed reality (MR) environment. The app provides users with a fully immersive and interactive experience, allowing them to view and interact with Contoso's products in a virtual space.
- Contoso Leave Request App is a sample child app that streamlines the leave request process for employees. Employees can submit leave requests, view their leave balance, and track the status of their requests.
- Contoso Feeds App is a sample child app that displays the latest and most important news from multiple RSS sources and presents them in an easy-to-read format.
- Contoso Document Management App: This is a sample child app that shows documents from a SharePoint site. The app makes it easy for users to view and manage documents, streamlining the document management process.
Power Automate Flow:
- Admin | Update Canvas App ID for App Menu Table in the current environment: If you move the solution from one environment to another, or if you deploy it for the first time, this flow will update the App GUID with the correct GUID for the current environment.
Conclusion
Ultimately, building SuperApps with the Power Platform offers exciting possibilities for enriching user experience and driving efficiency. The Canvas App Hub Suite Demo Solution helps overcome challenges and provides good practices for crafting your own SuperApp solutions. Embrace this trend and start creating innovative apps that streamline workflows and cater to diverse needs. Explore the Canvas App Hub Suite Demo Solution on AppSource and GitHub to empower your organization with efficient, user-friendly, and future-ready solutions. Happy app building!
References and other useful links
Low-code signals 2023 - Microsoft Power Platform Blog
What Is a SuperApp? (gartner.com)
Build large and complex canvas apps - Power Apps | Microsoft Learn
PowerApps canvas app coding standards and guidelines
Tips and best practices to improve performance of canvas apps - Power Apps | Microsoft Learn
*This post is locked for comments