August 1st, 2022

Announcing general availability of Azure Fluid Relay service

The world has shifted to a hybrid model with a generational shift with how we work. Today, we’re delivering on this mission by announcing the general availability of Azure Fluid Relay and Fluid Framework azure-client v1.0 library for all web developers. Fluid Framework and Azure Fluid Relay service are now ready to power production-quality solutions.

What is it?

About Fluid Framework

Fluid is an open-source project that offers distributed data structures with familiar programming patterns to help developers build real-time, low latency collaborative applications. Built on the trusted, scalable, and highly secure Azure platform that will continue to adapt to a rapidly evolving collaborative future.

About Azure Fluid Relay service

Azure Fluid Relay is a managed cloud service built to support Fluid Framework clients. Backed by scalability and reliability of Azure, Microsoft’s Azure Relay Service is quickly gaining popularity and becoming the de facto choice. The service enables developers to build and deploy enterprise-ready collaborative applications that perform at industry-leading speed and scale. Azure Fluid Relay takes care of all details of Fluid collaboration while you as developers focus your attention on your app and end user experience.

  • Completely managed service​​ with $0 upfront cost​
  • Global presence with regional resilience​
  • Meets data residency & compliance requirements​

How does it work?

Check out our Build 2022 video to learn about Fluid powered experiences 👇

 

Get set up and running with Azure Fluid Relay in two simple steps

  • Begin with provisioning the Azure Fluid Relay service using your Azure account from the Azure portal
  • Configure the azure-client SDK package to connect your application to the Azure Fluid Relay instance

 

Image Azure Fluid relay blog august 1

 

Let’s go over the steps in detail

To connect your app to an Azure Fluid Relay, you must provision an Azure Fluid Relay server resource in your Azure account. If you don’t have an account, you can try Azure for free.

Provisioning of Azure Relay service can be completed from the Azure portal in 2 easy steps. Read more about it here.

Step 1: Create a resource group which is a logical collection of Azure resources. All resources are deployed and managed in a resource group.

Step 2: Create a Fluid Relay resource. Each Azure Relay server resource provides a tenant for you to use in your Fluid application. You can create many containers/sessions within that tenant.

Now you should see the Fluid Relay page (see example below)

 

Image Azure Fluid relay blog august 1 image2

 

After you create the resource group and Fluid Relay resource in steps 1 and 2, start connecting the Azure Fluid Relay Service in your app.

You can connect your Fluid application to an Azure Fluid Relay instance using the AzureClient in the fluidframework/azure-client package. The azure-client package provides a simple and powerful way to consume collaborative Fluid data with the Azure Fluid Relay. AzureClient handles the logic of connecting your Fluid container to the service.

The azure-client package has an AzureClient class that allows you to interact with Fluid.

import { AzureClient } from "@fluidframework/azure-client";

While completing the onboarding process for the Relay service, you will be provided with a tenant Id and key used to connect to a live Azure Fluid Relay instance.

To connect your application with the Azure Fluid Relay service, you need to update your app’s configuration to connect to your Azure service with the right configuration values.

import { AzureClient, AzureConnectionConfig } from "@fluidframework/azure-client";

const clientProps = {
    connection: {
        type: "remote",
        tenantId: "YOUR-TENANT-ID-HERE",
        tokenProvider: new AzureFunctionTokenProvider(
            "AZURE-FUNCTION-URL"+"/api/GetAzureToken",
            { userId: "test-user",userName: "Test User" }
        ),
        endpoint: "ENTER-SERVICE-DISCOVERY-URL-HERE",
    },
};
const azureClient = new AzureClient(clientProps);

Now you can build and run the client to see how the magic happens.

Congratulations! 🎉🥳 You have successfully taken the first step towards unlocking the world of Fluid collaboration.

We are excited to invite all developers to explore, learn, and build next-gen collaborative applications with Azure Fluid Relay. As we continue to embark on our journey to create breakthrough experiences, we would love your feedback.

Building a new class of collaborative apps

“Every organization requires a digital fabric that connects people, places, and processes” Satya Nadella, Microsoft CEO

 

 

Resources

Subscribe to our Microsoft 365 developer blog. Follow us on Twitter @Microsoft365Dev.

Happy Coding!

Author

Pranshu Kumar
Senior Product Manager

1 comment

Discussion is closed. Login to edit/delete existing comments.

  • Sam Sperling

    This looks fantastic.
    As most of it is focused on real time collaboration, whether this is also useable for apps that can handle bad internet connection / offline-first approaches, that syncs as soon as connection is restored?
    If so, are there any code examples out there?