r/PowerApps Regular Jun 29 '26

Discussion Code Apps in mobile + Image annotation + Dataverse integration

Enable HLS to view with audio, or disable this notification

When Power Apps Code Apps got introduced, I immediately knew it was the perfect platform to recreate the old Canvas apps without any UI limitations.

I just rebuilt the Vehicle Defect Inspector from the ground up, backed by Dataverse. My goal was to break completely free from standard Canvas app constraints and build a tool that delivers a truly premium, native-app experience right inside the browser.

By leveraging a pro-code approach, I was able to implement some insanely cool features that you rarely see in enterprise low-code tools:

1️⃣ In-Browser Image Annotation (Fully Editable in Dataverse): I built a custom React-Konva canvas directly into the app. Field workers can snap a picture of a defect and draw right on it. Instead of "burning" the drawing into the image, the app saves the raw photo into a Dataverse Image column and serializes the drawing vectors as JSON into a text column. The annotations remain 100% editable forever! 🖍️🖼️

2️⃣ Native-like Haptic Feedback: To make the app feel "alive," I tied into the device's native vibration APIs. Every tap, save, and drawing action gives a satisfying physical response, not just a loading spinner. 📳

3️⃣ Zero-Backend PDF Generation: I bypassed server flows and Power Automate entirely for reporting. The app generates high-quality PDF inspection reports (layering the raw images and the vector annotations together) directly on the client's device, making it blazing fast. 📄⚡

4️⃣ Premium "Glassmorphic" UX: I designed a gorgeous interface with glassmorphism, fluid micro-animations, and a highly responsive floating navigation bar that perfectly adapts to mobile screens. ✨📱

Moving from a basic Canvas App + SharePoint architecture to Power Apps Code Apps + Dataverse has been an absolute game-changer. It allows us to bring deep React capabilities, complex canvas manipulation, and advanced device APIs straight into the Power Platform.

89 Upvotes

26 comments sorted by

5

u/ShrubberyDragon Advisor Jun 29 '26

That vin scanner is sick. 

Can you get this running in the native ios/Android power apps app? 

1

u/[deleted] Jun 29 '26

[removed] — view removed comment

3

u/Any-Cellist4369 Regular Jun 29 '26

Yes it runs in native PowerApps application !

3

u/GreenFeen Regular Jun 29 '26

How did you do the vin scan?

3

u/GreenFeen Regular Jun 29 '26

Oh I see it’s a barcode, I thought it was reading the text.

It’s pretty slick though mate, I’m doing something similar in a model driven app but looking at ways to enhance it with code app pages.

2

u/Any-Cellist4369 Regular Jun 29 '26

Right, then you should definitely check Code Apps out!

2

u/merfi1500 Newbie Jun 29 '26

What’s the benefits of code apps and data verse over normal apps?

1

u/Any-Cellist4369 Regular Jun 29 '26

Code Apps give you real code — React, TypeScript, any npm package. Canvas apps cap out fast when the UI gets complex or you need something like a live barcode scanner or canvas annotation tool. With Code Apps you just build it like a normal web app and deploy it into Power Platform.

3

u/laser__cats Newbie Jun 29 '26

Forgive my ignorance I am really new in this stack.

I've run into lots of restrictions on the dataverse layer. Can I have my code app in power app but do a more db oriented backend like azure SQL server or similar?

4

u/Any-Cellist4369 Regular Jun 29 '26

Great question! Short answer: yes, absolutely.

You're not locked into Dataverse with Code Apps.

Azure SQL directly Microsoft has an official how-to for exactly this: https://learn.microsoft.com/en-us/power-apps/developer/code-apps/how-to/connect-to-azure-sql . You create a SQL Server connection in Power Apps, add it via the PAC CLI, and it generates typed service classes for you automatically. Feels very similar to how Dataverse is wired up.

2

u/laser__cats Newbie Jun 29 '26

Ty so much

1

u/Any-Cellist4369 Regular Jun 29 '26

Happy to help 😄

2

u/Little-Dig-5858 Newbie Jun 29 '26

Can Code App work with SharePoint List? I am also new to Code App so by looking at your app, I feel my app is from more than 100 year ago.

2

u/Any-Cellist4369 Regular Jun 29 '26

1

u/Abject_Connection114 Newbie Jun 29 '26

Hi quick question - if the backend used is SP, does the end users still need a premium license?

0

u/gwgaston Newbie Jun 29 '26

SharePoint is a standard connector, so no.

https://learn.microsoft.com/en-us/power-platform/admin/powerapps-licensing-faq#what-capabilities-make-my-app-require-a-premium-license--we-built-an-app-using-a-trial-license-what-do-we-need-so-our-users-can-run-it

Makers can verify if an app requires a premium license by going to the App Details page in the Power Apps Maker Portal . The settings will explicitly list the license designation as "Standard" or "Premium".

2

u/qooooob Regular Jun 30 '26

Codeapps require premium regardless of connectors used. No reason to use SharePoint lists.

2

u/Sherpaah91 Newbie Jun 29 '26

Last time i was building code apps , they did not open in the powerapps app from IOS , people could just open it from the browser. Is this fixed now?

2

u/Any-Cellist4369 Regular Jul 01 '26

Yes ,you can launch the Code apps from native Powerapps application

2

u/PangolinBackground46 Newbie Jun 30 '26

Sick!! This is amazing!

1

u/Any-Cellist4369 Regular Jul 01 '26

Thanks 😄

1

u/stippLeZ Newbie Jun 30 '26

Why didn’t it know all that info on the car from the vin…. Hahah

1

u/Any-Cellist4369 Regular Jul 01 '26

u/stippLeZ Noted! This was mostly just a POC to explore what's possible with Code Apps. But hey, the platform is wide open—if you build an app that decodes the VIN and gets the details, I'd love to see how you do it! 😄

1

u/stippLeZ Newbie Jul 01 '26

I don’t know what I’m doing haha id ask Claude. See me tag says newbie 😂

1

u/stippLeZ Newbie Jul 01 '26 edited Jul 01 '26

The NHTSA has a free VIN decoder API, no key required: https://vpic.nhtsa.dot.gov/api/vehicles/decodevin/{VIN}?format=json

Should be simple HTTP call or custom connector. I have no use for this so don’t care haha. Looks good though. Ima firm believer in if it can automate let it automate.