Fabric Apps & Rayfin Deep Dive: A Conversation with Sachin Patney | Fabric Insider Ep. 11

I have written and recorded about Rayfin before, what it is, how the Data App template works, and the cost story that makes it genuinely significant. But this conversation goes much deeper. I sat down with Sachin Patney, who leads Fabric App Development at Microsoft, and by extension the team that builds Rayfin, for a full technical deep dive into the architecture, the licensing model, the file structure, templates, and what is coming next.

In my opinion, this is one of the biggest announcements Microsoft Fabric has had in a while. Let’s get into the conversation.

Fabric Insider Series | Episode 11 | Interview with Sachin Patney, PM lead for Fabric App Development at Microsoft


๐Ÿ“บ Watch the full episode on YouTube: Fabric Insider Ep. 11: Fabric Apps & Rayfin Deep Dive | Sachin Patney

๐ŸŽง Listen on Spotify: Fabric Insider Podcast

๐Ÿ“š Full Fabric Insider Blog Series: radacad.com/category/fabric-insider-2026

๐ŸŽฌ Full Fabric Insider Playlist: YouTube Playlist



Who Is Sachin Patney? (Video: 1:06)

Reza: I love the presentation that you did at Microsoft Build with the team. This announcement was outside of your usual FabCon, when we make an announcement at FabCon, everyone is tuned in and hears about it. But when it happens at Build or Ignite, some might miss it. And this specific feature, Fabric App, or Rayfin, is quite exciting. It’s such a big improvement, it needs special attention. So thank you for your time on this. Before we go and talk about it, can you introduce yourself? What do you do, who are you, what part of the product do you work with?

Sachin: Yeah, so I’m part of the Azure Data org, which is the Fabric organisation, and I run app development for Fabric, and by proxy also the team that builds Rayfin.


What Is Rayfin, in Plain Terms? (Video: 1:37)

Reza: Talking about this Rayfin fabric app, what is it? If you want to explain it to someone who has no idea about Fabric App, a total beginner, what is it?

Sachin: I’ll also help disambiguate why Fabric Apps, why Rayfin, that’s a common question, the difference between the two. So Rayfin is a backend as a service, primarily. The idea is that you go and define your backend in your application code, and then when you deploy it, it materialises the backend into different resources in Fabric. So if you have a database, it shows up as a database. In future we’ll also have things like functions and storage, which will show up as Lakehouses and UDFs in Fabric. And the thing that gets deployed into Fabric is called the Fabric App.

As part of the Fabric App, you can also put your frontend code, so you get some hosting along with it. But Rayfin itself can be targeted for other things too, one of the things we’ll soon be releasing is we’ll be open sourcing parts of the code, so you’ll be able to self-host Rayfin. It doesn’t have to be in Fabric. Of course you want the Fabric aspect, because you inherit a lot of the compliance, governance, and security models of Fabric, which you would have to rebuild if you were trying to self-host Rayfin.

Reza: So am I saying that right, that Rayfin creates our data objects, like the Lakehouse or notebook, whatever it creates behind the scenes, the semantic model, all our Fabric data objects, and the backend of that Fabric App also includes the actual web app, which is hosted in that Fabric environment?

Sachin: Correct. Yes, that’s correct.


What Makes Fabric Apps Unique, Compared to Building It Yourself? (Video: 3:34)

Reza: Now talking about this Fabric App, obviously it’s a way of creating web applications that work with data, and that data lives in Fabric. Now what makes Fabric App special? Because we could have created this web application ourselves in VS Code and deployed it in the Azure portal. What makes this unique?

Sachin: There’s a few things about it. Let me step back, a bit of context. When we started to create Power BI, at the start you could build reports in a different way, but you often needed somebody from IT, a data engineer, to work with you. What Power BI did was give you the right tools so you could build your own reports, self-serve, and deploy that into your organisation and distribute it. Now with AI, it’s kind of the new world, anyone can go, using a vibe-coding tool, start building applications. But it gets really challenging when you want to go and deploy these applications for your organisation.

Now you have to start thinking: how do I get the resources for it? My thing works locally, but I have a local database working, how do I get it to work on the cloud? And then: does this meet my enterprise data standards? From a security perspective, am I using the right authentication? Because usually you have to build your own Entra app for that. All of those things slow you down, you built the app really quickly, but now you don’t know how to distribute it in your enterprise environment. These are the things that Rayfin helps solve.

One, you define your backend in code, and it’s the same backend that you ship into your applications. You don’t really have to think about authentication, it comes out of the box as you’re building the app. The Fabric App is part of it. There’s no separate Entra app for you to go build.

Also, all of the data is a Fabric artifact, within your Fabric tenant. You can go monitor it, govern it, assign policies on it. All of the data the app produces also lands in the Lake. So you can go build a Dataflow from that data, you can go build a Data Agent. All of those things are within your Fabric ecosystem, that’s the simplicity that it enables. And one other thing, all of this is defined together with the application code. You’re not provisioning separate scripts. When you go deploy this application, it’s all in one package.

Reza: I like that explanation, because when we build our web applications, there is no application these days that doesn’t work with data. So we have to come up with some sort of data, when we are local, it’s a local database, but now we want to publish it somewhere. This web application has to have a host, a place we can host it, and our database, we have to find a way to create it, Azure SQL Database, or now we are talking about Fabric, better to keep everything in the Fabric environment. Fabric database, and probably later on Power BI semantic model. Instead of having each of these separately in different parts, Rayfin, or Fabric App, streamlines this process together, and gives us the ability to build this as a whole project, so everything is connected to each other and we build it entirely together.

For a deeper look at how the Data App template and its cost model work in practice, I have a dedicated video: Rayfin Data App, The Future of Power BI Reporting.


Why TypeScript, Not PBIR? (Video: 7:47)

Reza: Now, with this Fabric App, of course the backend are Fabric objects, but the frontend is TypeScript, right? It’s not a PBIR project. Is there any particular reason for that?

Sachin: So it’s mostly a web frontend, right? In terms of what you use, whether you use raw JavaScript, or you want to use WebAssembly, it’s up to you. And the reason also comes to, I think we created the reporting format because it was hard for people to write code, and so we needed to give them UI tools so they could build amazing looking dashboards and reports. And people have taken it to extreme extents. But now I think, coding is still hard, but I think that barrier has kind of been dropped, because now you have agents that can help you write code, so you can do even more.

We wanted to allow you to express yourself even more creatively and freely. And for that, we needed to ensure that it was just a web app, not focused on any particular technology or framework.

Reza: Nice. And how does the pricing of this work? Is it using the same CU compute units that we have, or does it have a special usage?

Sachin: Yes, so it uses Fabric CUs, and that was all very intentional. That ties back into the value proposition of Fabric, not just the security aspect, but the compute aspect too. Everything in Fabric can run on the same compute, and this will be the same with Rayfin apps or Fabric apps. If it provisions a database and you consume the database, that’s the compute that gets charged. You’re querying a semantic model, that’s compute that gets charged. The app is hosted, it consumes a very small amount of storage, and then obviously when you’re issuing queries because your web application is getting translated through an API, there’s some processing charge for that, but those are relatively small. But yes, everything is on a Fabric capacity, and that’s not going to change.


Getting Started, CLI or Portal (Video: 10:14)

Reza: Right, so now if someone wants to actually go and get started with Rayfin or Fabric App, what is their starting point? How easy is it to create the first project?

Sachin: I’ve seen a video that you’ve done on this, so I would encourage folks to go watch it. But yes, you can get started either in a CLI, so you have a Rayfin CLI you can download and get started with. You can also get started inside the portal, it allows you to go create an app inside the portal, and it kind of already does a little bit of deploy and register, and then gives you the CLI commands to go run. But primarily you build your application in code, you build it in VS Code, or your favourite code editor.

The Project Structure, Live Demo

Sachin walked through spinning up a new Rayfin project live, using PowerShell and the Rayfin CLI. He built out a To-Do app template, which comes with a data model and RLS already declared.

Reza: One thing I’d like to clarify, because I also got this as a comment under my video, some people said “well, I don’t want my AI tokens to be spent, so I’m not going to use Rayfin or Fabric App.” What you’re showing right now, you’re building it from PowerShell, you are not using any prompting at the moment, just the command line interface.

Sachin: That’s right. Even without it, we can still build it.

Reza: Right. And I think that is absolutely right.

Sachin: And it’s another reason why I think Rayfin is great, because yes, it’s designed to be agent-friendly, but it’s also developer-friendly. Everything you can do with Rayfin, you can just write yourself, you don’t need an agent to code. And the nice thing about Rayfin is that because it is simple, everything is in code, you’re not talking about specific technologies, your data model, for example, saying “I want this to be an entity, and I want it to have this RLS policy applied”, you can do all of this by hand. You can write this code, and it’s easy to understand and simple.

It also makes it very token efficient, because it’s very opinionated in how you go build an app. There’s not a lot of exploration agents have to do, thinking through different technologies, weighing pros and cons, which also helps save tokens if you’re using an agent.

Reza: So you can be token conservative if you want, otherwise you can use AI and LLMs to work on it.

The File Structure

Reza: So that project is now created. Can you explain a little bit about the structure, what are those file folders?

Sachin: The most important things, you have node modules, which are just the node dependencies. Under source, you see essentially the To-Do app, which is a React app, but you could replace that with whatever is your favourite frontend framework. The interesting thing is in the Rayfin folder, it has a schema object which shows your application schema. You have a To-Do, and you declare a class just like any other TypeScript class you would use in your code. You can annotate it with a role and entity. When you do rayfin up, it goes and deploys it into production and creates a database for you, but you’re not deciding on the database technology, you’re not writing scripts and tables.

The other interesting file is the rayfin.yaml. Right now, the only dialect we offer is MySQL, but in future you’ll also be able to provision a Postgres database in Fabric, and you can swap out this dialect. I’m also enabling static hosting, so you don’t have to only host the backend with the API and host the application somewhere else; we also allow you to host your frontend for simplicity in Fabric as well.

And then there’s the authentication piece, it’s telling you Fabric Auth is enabled, which gives you Fabric SSO for logging into your app. You don’t have to build your own authentication solution, and in future we will offer other authentication providers, so you don’t have to only use a Fabric account.

Reza: Because that was my other question, is it only single sign-on, we always log in with our Office 365 accounts, or are other methods supported?

Sachin: Correct. In the future we plan to add support for any sort of OIDC provider, which allows you to sign in with a Gmail account, for example, into your application. It also enables things like building a storefront app where you want your users to log in with a different identity, but you still want all the data from that application to end up inside Fabric, so you can go do post-analytics on that data. This closes the loop, because in the past you’d develop an application and then have the problem of how do I go ingest this data for downstream analytics.

Reza: And what you mentioned in that YAML file, if in the future I change it from MySQL to Postgres, that means it could provision a Postgres database in Fabric for me?

Sachin: Yes, like a database.


A More Comprehensive Demo, The Lead Tracker App (Video: 19:13)

Sachin showed a second, more comprehensive application, a lead tracking Rayfin app with a multi-table data model, relationships, and RLS across multiple tables.

He demonstrated uploading a document to a lead record, and explained an interesting current limitation: because Rayfin doesn’t yet have dedicated storage support, the AI cleverly stored the uploaded document as a binary blob directly in the lead table. In future, when storage support is added, documents like this will be hosted properly in OneLake.


Fabric App vs. Power Apps, What’s the Difference? (Video: 21:22)

Reza: This also brings me to a conversation I’ve heard in the community, especially after the announcement of Fabric App, that we also have Power Apps, and there are some areas where these two might look similar. What is your take on this? Which situation is good for Fabric App versus Power Apps?

Sachin: Power Apps is a little different, in that it’s an end-to-end app builder. Fabric Apps isn’t an app builder, it’s a backend as a service. If you want to build an application, what app builder you use is up to you, and this is why, when we announced this at Build, we partnered with Replit. If you build apps with Replit, you can also build Fabric Apps with Replit. You can obviously use Copilot, which I’ve been using to build my Rayfin apps. I want to separate the app builder from the backend as a service.

What Rayfin offers is: if your data estate is in Fabric, and you now want to build your applications, and also put your analytical data and your application data in the same place, because you want it easily available bidirectionally, you want to build your data gravity in Fabric, I think Rayfin is a great way to go do it. If you’re building an application and you want a backend that is enterprise-ready, and you don’t want to manage the infrastructure, Rayfin is the right approach.

Reza: That was a good example, especially the backend point, with Rayfin we can just have the backend, provide the API for other applications to come and use it. Whereas if we’re talking about it as an app, it mainly means we’re using it in that app, but Rayfin is more than that, it can provide it as a backend.


Templates, What They Are and How to Build Your Own (Video: 23:35)

Reza: We talked about different templates, a To-Do template, a Data App template. First, what is a template? Second, what are these templates?

Sachin: A template is essentially a good way for you to get started, a quick start. But it can also just be a full app. A template is nothing other than a Rayfin app that’s in some stage of development. It could be a starter. It could be a completely fully finished app. For example, I could take the lead tracker I showed you and just package it as a template, if you instantiated that, you could just use it, you wouldn’t even have to write any code.

You saw in the CLI it had a built-in option or from a URL. You can create your own templates, today you can host it in a GitHub repo. We have a repo for community templates called Awesome Rayfin, where folks can contribute their templates. We’ve already had a few contributions there. For your organisation, you might want a specific way of building a dashboard, and you don’t want to burn tokens every time passing the same instructions. Because even if you captured everything in a skills or instructions file, you still spend a bunch of tokens processing those instructions and trying to create dashboards or apps that match your organisational themes. But with templates, you can go further, you just have the code, most of the scaffolding is in place, and the authors are just making delta changes for a new type of dashboard, a new type of app.

In future we will allow you to surface these templates within the Fabric portal. Today we show the built-in ones, but maybe we’ll also allow organisational templates or community templates, so users can easily get started.

Reza: Like a template gallery, if someone in the community or a partner goes and builds it, then it’s there for people to use, because the application you build probably has the same structure as what someone else wants to build, with some customisation.


Data App Licensing, No Power BI License Required (Video: 26:23)

This is the section I wanted to get absolute clarity on, the exact detail that makes the Data App template’s economics so compelling.

Reza: Now, one thing specifically about the Data App template, because when we talk about it, we’re talking about, let’s say, we have a Power BI semantic model, and we have the frontend visualisation TypeScript on top of that semantic model. How does the licensing of that work? Because the frontend is not a Power BI report anymore. So would any Fabric user, even if they don’t have a Power BI license, be able to see that frontend?

Sachin: The licensing works today as: your workspace needs to have an F SKU, F2 onwards. And then you can distribute it. It’s not any different from, say, you were to create a notebook in a workspace with an F SKU and distribute it, it will be exactly the same in terms of distribution.

Reza: So I wouldn’t really need Power BI licenses anymore for distribution of this, if I’m using Fabric App for my frontend?

Sachin: Correct. Yes.

Reza: That would be, I think, a huge advantage point, especially for customers whose users are not really doing the interactivity of a Power BI report, they just want to see the visuals. Fabric App can give them a really special viewing experience as a Data App. Do you also have a sample of a Data App you can show us?

Sachin then demoed his own internal Rayfin app, one built to explain Rayfin itself to colleagues at Microsoft, showing a delivery application that seeds data, an analytical application on top of it, with a semantic model attached, and cross-filtering and cross-highlighting interactivity very similar to a native Power BI report experience.

Reza: So you even have that cross-filtering capability and interactivity like a Power BI report.

Sachin: Not exactly like that, but it is kind of similar to that experience. That’s one of the most common types of applications, building dashboards on your data, and you can make it hyper-custom to your feature set.


Custom Domains and Future Hosting Flexibility (Video: 29:25)

Reza: One other thing, right now when we deploy using npx rayfin up, it comes with a built-in URL. Is there a future option for having a custom domain?

Sachin: You can just deploy the backend and take your static web app and deploy it separately on Azure, and if you deployed it on Azure, you could put a CDN in front of it, custom domains, traffic manager, the full gambit of things you can do with your frontend. If you need custom domain support or something more sophisticated for front-end routing or traffic management, I would encourage going that route.

Whether we enable custom domain support inside Fabric will depend on feedback, go to Fabric Ideas and give that feedback. If there’s enough demand, we’ll add that support. The main idea with hosting was to give you something usable out of the box without needing anything outside Fabric, so you can see it end to end, and for internal applications it’s easy to distribute them without a separate frontend deployment. But if that becomes an ask that everyone wants, we will absolutely consider adding it.


What Does It Look Like in the Fabric Workspace? (Video: 31:20)

Sachin walked through the Fabric workspace view of a deployed Rayfin app, showing it comes with a database and a Lake item, ready for you to build a Dataflow or a Data Agent on top of it.

He created a new semantic model live on top of the lead tracking app’s data, showed the SQL database and its tables directly, and pointed out an important forward-looking detail: as more capabilities are added to Rayfin, more Fabric artifacts will show up as part of a project. For example, functions already show up as Fabric artifacts when you create them in your app code. In future, if you build a real-time application, Rayfin will automatically provision an Event Hub and the relevant real-time artifacts behind the scenes, and your billing model stays exactly the same: Fabric CUs.

Reza: And those advancements in adding more artifacts, plus the fact that we can use AI and agentic development together, can actually save us a lot of time building these applications. We can say “I’m building a real-time application,” and it will go and create the real-time artifacts for it and all of that.


When Is GA? (Video: 35:05)

Reza: When is this becoming Generally Available? It’s Preview now, right?

Sachin: Yeah, we’re aiming to have a GA by the end of the year. This year.


What Is Coming (Video: 35:38)

Sachin: There’s a few exciting things. One, because you’re like “is this only internal apps?”, no. OIDC is something we’ll be adding, so you can enable these applications and distribute them externally. We will also support anonymous applications, if you just want to build an application you want to host with public data, you can have your data in Fabric and host it so anyone can go access it. It’s very similar to Publish to Web today, where organisations can have some publicly available data and distribute it with anyone on the internet.

Storage is coming, it’s not great to have everything, especially big files, uploaded into your database. We will allow you to leverage the application’s OneLake to save blobs of data.

Functions is really exciting. If you want to write custom code, obviously you can build apps that access data, but sometimes you want to kick off an email notification, contact an external service, or run some proprietary logic on the backend that you don’t want to leak on the frontend. You can encapsulate that as a TypeScript function in your frontend code, and it gets deployed as a UDF, we do the whole RPC connection for you, so your application can call in through it.

We will also have observability, your app will want to emit telemetry, and you’ll be able to see that telemetry flowing. And with functions, we’ll add secret management, so if your function is contacting an external service, you can inject secrets safely.

Reza: Would we also have monitoring on app usage? At the moment it’s single sign-on, so it’s easier, but in future when it becomes available for someone to log in using a Gmail account, what monitoring would we have?

Sachin: You’ll get some basic stats out of the box, but as I said, we’ll give you observability, comprehensive application telemetry within Fabric, with a way for you to go query it. It’s not only good for you to observe how your app is being used and by whom, but if you’re building with agents, they can get access to that data too, maybe there’s a hot spot, a failure point in your application code, having all of that data in the same place helps you complete that loop.

A Live, Unplanned Demo, Functions in Action

Sachin then showed an early, experimental capability, a chat application built with Rayfin functions connecting to a model deployed in Microsoft Foundry, with a memory store and OneLake data attachment. He asked the chat about “the easy hikes” from an attached hiking trails dataset, and the AI combined a memory function (recalling that he loves hiking) with a data query function (filtering easy hikes from the dataset), all powered by Fabric compute, even though the LLM itself was hosted outside Fabric.

Reza: This is really cool, that was an amazing demo. You can build the next version of Anthropic, Sachin! [laughter]


How to Reach Sachin and the Team (Video: 42:44)

Sachin: We monitor the GitHub issues for sure. We have a Reddit for Rayfin specifically, where we’re trying to build out that community. Of course you can also ask Rayfin questions on the general Fabric community. We recently held an AMA, and we plan to do a few more. We also monitor all the Fabric blogs we publish about Rayfin, any comments on those, we try to get in touch. It’s early days, and a lot of it we wanted to get the product out to build it with everyone, so we really want to hear the feedback, and it will help us shape the product from now until GA and beyond.

Reza: In my opinion, this is one of the biggest major announcements we’ve had in Microsoft Fabric for a while. Really looking forward to seeing how the community and users are going to use it.


My Takeaway from This Conversation

Sachin gave the deepest and most technical look at Rayfin I have seen anywhere. A few things stood out for me:

  • Rayfin is a backend as a service, not an app builder. That distinction matters, it means you can use Replit, GitHub Copilot, Claude, or any other app-building tool of your choice on top of it. Rayfin handles the Fabric-native backend; you choose the frontend tooling.
  • The licensing story is confirmed directly from the source. F2 and above, no Power BI license required for consumers, billed entirely on Fabric CUs, exactly the same compute model as the rest of Fabric.
  • Templates are more powerful than they first appear. A template can be a fully finished app, and organisations will eventually be able to publish their own, turning Rayfin into a genuine internal app ecosystem, not just a scaffold tool.
  • The roadmap is substantial: OIDC for external identity providers, anonymous public applications, OneLake-backed storage, TypeScript functions with secret management, and full observability, all targeted before GA, which is planned for the end of this year.
  • This is agent-friendly AND developer-friendly by design. You can build a complete Rayfin app entirely by hand, with zero AI tokens spent, or lean fully into agentic development, the architecture supports both without compromise.


Other Episodes in the Fabric Insider Series


Reza Rad is a Microsoft Regional Director, Data Platform MVP (16 consecutive years), Author, and Trainer. He is the co-founder of RADACAD and the author of multiple books on Power BI, Power Query, and Microsoft Fabric. You can follow him on LinkedIn and subscribe to the RADACAD YouTube channel.

Reza Rad on FacebookReza Rad on LinkedinReza Rad on TwitterReza Rad on Youtube
Reza Rad
Trainer, Consultant, Mentor
Reza Rad is a Microsoft Regional Director, an Author, Trainer, Speaker and Consultant. He has a BSc in Computer engineering; he has more than 20 yearsโ€™ experience in data analysis, BI, databases, programming, and development mostly on Microsoft technologies. He is a Microsoft Data Platform MVP for 12 continuous years (from 2011 till now) for his dedication in Microsoft BI. Reza is an active blogger and co-founder of RADACAD. Reza is also co-founder and co-organizer of Difinity conference in New Zealand, Power BI Summit, and Data Insight Summit.
Reza is author of more than 14 books on Microsoft Business Intelligence, most of these books are published under Power BI category. Among these are books such as Power BI DAX Simplified, Pro Power BI Architecture, Power BI from Rookie to Rock Star, Power Query books series, Row-Level Security in Power BI and etc.
He is an International Speaker in Microsoft Ignite, Microsoft Business Applications Summit, Data Insight Summit, PASS Summit, SQL Saturday and SQL user groups. And He is a Microsoft Certified Trainer.
Rezaโ€™s passion is to help you find the best data solution, he is Data enthusiast.
His articles on different aspects of technologies, especially on MS BI, can be found on his blog: https://radacad.com/blog.

Leave a Reply

Your email address will not be published. Required fields are marked *