- This is the FAST monorepo, containing web component packages, tools, examples, and documentation. FAST tech can be used à la carte or as a suite to build enterprise-grade websites, applications, components, design systems, and more.
star: We appreciate your star, it helps!
Have you ever needed a reusable set of UI components that you could drop into your app and have an amazing experience? That's FAST.
Have you ever needed to create your own components, and share them across your company, including across groups that use different, incompatible front-end frameworks? That's FAST.
Have you ever needed to implement a branded experience or a design language like Microsoft's Fluent UI or Google's Material Design? That's FAST.
Have you ever wanted to improve your app's startup time, render speed, or memory consumption? That's FAST.
Let's take a look at what each of FAST's core packages gives us today.
fast-element library is a lightweight means to
easily building performant, memory-efficient, standards-compliant
Web Components. FAST Elements work in every major browser and can
be used in combination with any front-end framework or even without
a framework. To get up and running with
see the Getting Started guide.
fast-foundation package is a library of Web
Component classes, templates, and other utilities intended to be
composed into registered Web Components by design systems (e.g.
Fluent Design, Material Design, etc.). The exports of this package
can generally be thought of as un-styled base components that
implement semantic and accessible markup and behavior.
fast-components is a library of Web Components that
composes the exports of
stylesheets aligning to the FAST design language. This composition
step registers a custom element. See the quick start to get started using the components.
fast-components-msft is a library of Web Components
fast-components-msft uses the same custom element
fast-components, but makes use of different
stylesheets that support Microsoft's Fluent design language.
Launch our Component Explorer to experience our FAST Components and development tools.
If you're looking to get started using our components right
away, take a look at the components quick start. You'll also want to check
out our integrations if you're looking to add the
components into a Webpack build or incorporate them with another
front-end framework. For those interested in implementing their own
design system or customizing the styles of the components, after
you have a look at the components, you'll want to
read through our styling docs. Finally, if your goal is to
build your own components or apps with
you can learn all about that in our guide to building web components with FASTElement.
Joining the Community
Looking to get answers to questions or engage with us in realtime? Our community is most active on Discord. Submit requests and issues on Github, or join us by contributing on some good first issues via Github.
We look forward to building an amazing open source community with you!
Features & benefits
There are a million and one great ways to build your next website or application. To support the technologies you choose, creating unopinionated code is at the center of every decision we make in FAST.
This principle of being unopinionated manifests in several important ways including:
- A flat component architecture that lets you compose what you need without struggling with rigid patterns and complex objects.
- Separating base components from styles and design systems to support multiple implementations without re-writing or duplicating styles. Use the design system to customize existing styled components, or build your own styles, with your design system, without having to rebuild or duplicate the base components.
- Framework agnostic tooling that lets you use our development tools with any view framework.
- The ability to replace almost any FAST package with your package of choice. Get started with our animation package and add more as you need them. Alternatively, use our suite of packages to build your next project from the ground up; it's your call.
UI development and style guide tools
When developing components and views, excellent development tooling can make all the difference. FAST offers development and style guide tools that work with FAST components, components from other frameworks, or your components.
Try out component properties with an auto-generated property UI, get a live preview of the code based on any property’s configuration, preview localization (RTL/LTR) and themes, and preview component compositing with a transparency grid.
Also, we built FAST development tools from re-usable packages, so if you have special needs, you can build your tools from the same shared libraries.
Bring your design system
Widely available design systems from companies like Microsoft (Fluent), Google (Material), or Salesforce (Lightning) are useful when it is essential to align with a platform or take advantage of a polished system at low cost, but many companies have a design system of their own, and some may have multiple design systems or variations.
Because FAST has abstracted base components from their style, you get a head start on your design system by building on top of tried and true base components and style libraries like our offerings for color, animation, and elevation.
- Join the community and chat with us in real-time on Discord.
- Submit requests and issues on Github.
- Contribute by helping out on some of our recommended first issues on Github.
Experiencing problems with our site? Check our infrastructure health status and feel free to contact us through the channels listed above.