GithubHelp home page GithubHelp logo

kennethvikse / fast Goto Github PK

View Code? Open in Web Editor NEW

This project forked from microsoft/fast

1.0 0.0 0.0 244.09 MB

The adaptive interface system for modern web experiences.

Home Page: https://www.fast.design

License: Other

JavaScript 1.37% TypeScript 97.86% CSS 0.18% HTML 0.45% EJS 0.14%

fast's Introduction

fast_banner_github_914.png

FAST

License: MIT lerna TypeScript code style: prettier

Maintainability Test Coverage Validate PRs Validate Platforms/Browsers

Deploy Documentation Deploy CDN

Discord Twitter

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.

⭐ We appreciate your star, it helps!

Introduction

FAST is a collection of technologies built on Web Components and modern Web Standards, designed to help you efficiently tackle some of the most common challenges in website and application design and development.

TL;DR

  • Create reusable UI components with @microsoft/fast-element, all based on W3C Web Component standards.
  • Use our @microsoft/fast-foundation library to rapidly build W3C OpenUI-based design systems without re-implementing component logic.
  • Leverage modern, W3C standards-based SSR for Web Components by plugging in @microsoft/fast-ssr.
  • Bring all the pieces together to build SPAs and rich experiences with our Web Components router by installing @microsoft/fast-router.
  • React users can drop in @microsoft/fast-react-wrapper to turn any Web Component into a native React component.
  • Integrate FAST Web Components with any library, framework, or build system. You can adopt incrementally without re-writing your existing systems.

For an in-depth explanation of FAST see our docs introduction.

Packages

@microsoft/fast-element

License: MIT npm version

The @microsoft/fast-element library is a lightweight means to easily build 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 @microsoft/fast-element see the Getting Started guide.

@microsoft/fast-foundation

License: MIT npm version

The @microsoft/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.

This package does not export Web Components registered as custom elements - it exports parts and pieces intended to be composed into Web Components, allowing you to implement your own design language by simply applying CSS styles and behaviors without having to write all the JavaScript that's involved in building production-quality component implementations.

@microsoft/fast-ssr

License: MIT npm version

The @microsoft/fast-ssr package contains a NodeJS solution for rendering FAST templates and components. While primarily intended for supporting server-side rendering (SSR) scenarios, it also allows FAST to be used as a general purpose HTML templating solution.

@microsoft/fast-router

License: MIT npm version

The @microsoft/fast-router package contains a history-based navigation and routing solution designed around Web Components. By using fast-router, you can create multi-page and full application experiences. The router works with any Web Components, but has special support for Web Components built on FAST.

@fluentui/web-components

License: MIT npm version

@fluentui/web-components is a library of Web Components that composes @microsoft/fast-foundation. @fluentui/web-components makes use of different stylesheets and may include components that specifically support Microsoft's Fluent design language.

The Fluent UI Web Components are built on @microsoft/fast-element and @microsoft/fast-foundation. The source for @fluentui/web-components is hosted in the Fluent UI monorepo.

Getting Started

We hope you're excited by the possibilities that FAST presents. But, you may be wondering where to start. Here are a few statements that describe various members of our community. We recommend that you pick the statement you most identify with and follow the links where they lead. You can always come back and explore another topic at any time.

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.

Get started here with the Contributor Guide.

We look forward to building an amazing open source community with you!

Features & benefits

Unopinionated

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. Just use one package or leverage our entire suite of packages to build your next project from the ground up; it's your call.

Tooling

Leverage our (upcoming!) FAST CLI to accelerate your design or development workflow. You can create new projects from scratch, create design systems, and add or customize from dozens of components in our foundation library.

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.

Contact

  • 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.

fast's People

Contributors

awentzel avatar ben-girardet avatar bheston avatar chrisdholt avatar claviska avatar dependabot[bot] avatar eisenbergeffect avatar eljefe223 avatar falkicon avatar fcollonval avatar fmamic avatar freefaller69 avatar huynhicode avatar ibrahimmaga avatar jamesburnside avatar janechu avatar jkmdev avatar khamudom avatar litteredwitherrors avatar m4thieulavoie avatar marjonlynch avatar nalogiudice avatar nicholasrice avatar prudepixie avatar radium-v avatar robarbms avatar samanthaao avatar scomea avatar sethdonohue avatar williamw2 avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.