Your canvas apps, as real code.
Fixed-price conversion to React and TypeScript. 3,631 formulas on the last one.
What actually happens
Real formulas from a real conversion — a five-screen expenses app on Dataverse, not a mock-up.
Power Fx, locked in a formula bar. No source control, no tests, no review.
// Employees screen · gallery items Search([@Employees], SearchInput1.Text, cr6bf_employeename, cr6bf_email, cr6bf_phone) // the save button SubmitForm(Form1)
Deterministic translation. Rules, not a model guessing at your logic.
3,631
formulas read — every one accounted for
3,542
translated automatically, by rule
89
handed to a developer, itemised and costed
TypeScript that compiles clean, in a repo you own.
pfx.Search(Employees, SearchInput1?.Text, (row) => row.cr6bf_employeename, (row) => row.cr6bf_email, (row) => row.cr6bf_phone) // SubmitForm, made explicit bx.submitForm("Form1", { dataSource: "Employees", item: RecordsGallery1?.Selected, values: { … } }, { onSuccess, onFailure })
And the 89 it wouldn't translate
Every one is listed, with the reason, in the report you get. Nothing is silently dropped — a stub goes into the source so the app still compiles and the gap sits where a developer will actually look.
// Employees screen · SidebarContainer1 · Visible If(And('Employees screen'.Size = ScreenSize.Small, Or(newMode, editMode)), false, true) → TODO(manual): canvas responsive breakpoints (ScreenSize) have no code-app equivalent — needs a CSS media query. Est. 7.5–16.5 h across 42 items.
You don't have to take my word for any of it
The demo and the deliverable are both on this page. No form, no call first.
Pricing
Published, fixed. You'll know what this costs before you speak to me.
- Every formula in your app, read and classified
- An itemised list of what needs a developer, with effort bands
- A fixed price for the migration itself
- Your app as a React and TypeScript code app
- Delivered into your own repository, yours outright
- 50% deposit, balance on go-live, 30-day fixes window
- Includes the £495 assessment
- Several apps converted together, sequenced
- Shared components done once, not per app
- Handover so your developers can carry it on
£2,950 covers a typical app — up to around ten screens. Bigger or stranger than that and the assessment says so, with a price, before either of us commits to anything.
Afterwards, if you want it
£195/month for two hours of changes and fixes, or £395 for five. Monthly in advance, cancel whenever. Ask about aftercare →
A licence for consultancies — not yet
People keep asking whether they can run the converter themselves. Eventually, yes. Not today, and I'd rather say so than take your money for something half-ready.
It ships when two things are true: the converter has been run across a large corpus of apps I did not write, with the results published — and enough consultancies have asked to make supporting it worth doing properly. Join the waitlist →
All prices are final — no VAT is charged, as Cairn Automation is not VAT registered.
The questions people actually ask
What happens when I email you?
You get a reply from me, not a sales sequence. I'll ask for an export of your app (.msapp) and confirm the £495 before anything runs. If your app turns out to be a poor fit, I'll say so and you won't be invoiced.
Who owns the code?
You do, outright, including the generated source. It lands in your repository under your source control. There's no runtime licence and nothing to keep paying me for.
What happens to our data?
The converter reads your app's formulas and structure — not the records inside it. The generated app runs on seeded sample data until it's wired to your real environment.
Is this AI writing our app?
No. The translation is rule-based and deterministic. Anything the rules can't handle is reported as needing a developer rather than being guessed at — that's the 89 above.
Why would we move off canvas at all?
Code apps went generally available in February 2026. If you're hitting performance ceilings, want real source control and code review, or your licensing changed under you, that's the move. If none of those bite, stay where you are — it's a legitimate answer.
How long does a migration take?
The assessment is ten working days. The migration depends on what the assessment finds, and you'll have a fixed price and a duration before you commit to it.
Can we just buy the converter?
Not yet. A licence for consultancies is coming, but only once the converter has been run across a large corpus of apps I didn't write and the results are published. Until then I'd be selling you a number I can only prove on my own app. There's a waitlist.
Why this exists, and who you're dealing with
Power Apps code apps went generally available in February 2026, and Microsoft ships no path from canvas to code. You either rewrite by hand — quoted in months — or you stay where you are. I built the converter doing this work for a client, and it now translates the mechanical majority by rule.
I'm Ali Reynolds. I've spent my career in Microsoft 365 and the Power Platform, I do this work myself, and there's no account manager between us. If you want to talk it through before spending anything, say so and we'll get twenty minutes in the diary.