Microsoft has published the code for its new Fluid Framework on GitHub, offering developers a TypeScript library for building "distributed, real-time collaborative web applications".
The Fluid Framework repository has arrived on GitHub following Microsoft's announcement at Build 2020 in May that the technology would be open-sourced and would first arrive as Fluid 'components' in the Outlook web app and Office.com. The Fluid Framework was announced at Build 2019.
Microsoft open-sourced Fluid Framework to encourage developers to use it to build new web-based distributed apps for low-latency real-time collaboration.
SEE: 10 ways to prevent developer burnout (free PDF) (TechRepublic)
Via Fluid components, Microsoft lets Outlook for the Web users embed components in email such as tables, charts, and task lists, which automatically stay up to date. Microsoft wants developers to use the Fluid Framework to explore new ways of collaborating in applications, email and documents.
Microsoft describes Fluid Framework as a "collection of client libraries for distributing and synchronizing shared state".
The company's aim is to help developers build collaboration tools without requiring application-specific server-side logic.
"What if you didn't have to invest in server code at all? Imagine if you could use a general-purpose server that was designed to be light-weight and low cost. Imagine if all your development was focused on the client experience and data sync was handled for you. That is the promise of Fluid," Microsoft says in Fluid Framework documentation.
Microsoft notes that Fluid Framework isn't yet ready for building production-quality solutions but it says the core technology behind it is "mature and stable". However, it still needs to develop APIs, new features, and simplify using the framework.
One example of a Fluid Framework application from Microsoft is called Brainstorm, which lets users of a line-of-business application create their own sticky notes. Another example takes Facebook's open-source Draft.js rich text editor for React to enable real-time coauthoring.