Get moving with Microsoft’s FAST web components

It’s often hard to choose what web technology framework to use for application front ends. Do you build your own or start with technologies like Vue and React? Maybe you come in at a higher level with a web component framework like Twitter’s Bootstrap, Google’s Polymer or Salesforce’s Lightning. Their templating model is powerful, allowing you to use and customize existing components and create your own, working with custom elements and isolating functionality using the JavaScript shadow DOM.

Uptake of web components has been relatively slow compared to other HTML 5 technologies. That might be because browser support has lagged, or because familiar JavaScript libraries offer their own UI controls. Whatever the reason, the result is often complex page design that picks and chooses from many different control libraries, requiring hefty downloads and slowing sites down.

Introducing FAST

Microsoft has quietly been working on its own web component tools for a while now, launching its FAST component framework last summer. FAST is intended to provide a standards-based approach to delivering a templated, component-based, web-front-end toolkit, building on the principle of “strive to adopt open, web-standards-based approaches as much as possible.”

Back in the Internet Explorer days, Microsoft would have been most likely to build and deliver its own component model, hoping the rest of the web would follow. But when it came to technologies like dynamic HTML, Microsoft found itself stuck with supporting incompatible front-end development approaches and ended up sunsetting its own tools in favor of web standards. It’s not surprising that FAST is a standards-first approach, and its web components are built using the W3C’s Web Components standard. A page built using FAST should render the same way in Edge, Chrome, Firefox, and Safari.

The development team describes this approach as “unopinionated.” You can pick up Microsoft’s own Fluent UI components or work with the base components provided by FAST, customizing them to meet your needs and using templates to add your own styles. At the same time, you’re not limited by a choice of web development framework. There’s no need to learn anything new; if you use Vue you can continue using it with FAST, same with ASP.NET or React. You’re even able to swap out FAST packages for packages from other web component implementations, for example, using a Polymer control as part of a FAST-templated site design.

The FAST stack

FAST is built up from a set of JavaScript packages. They’re all managed in a GitHub monorepo, with links to the separate repositories for each section of the FAST stack. The four main packages are:

Copyright © 2021 IDG Communications, Inc.

Source link