All Projects → microsoft → vscode-webview-ui-toolkit

microsoft / vscode-webview-ui-toolkit

Licence: MIT license
A component library for building webview-based extensions in Visual Studio Code.

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to vscode-webview-ui-toolkit

design-systems
A list of famous design systems, design languages and guidelines
Stars: ✭ 403 (-66.5%)
Mutual labels:  component-library
cauldron
cauldron.dequelabs.com/
Stars: ✭ 50 (-95.84%)
Mutual labels:  component-library
chusho
A library of bare & accessible components and tools for Vue.js 3
Stars: ✭ 47 (-96.09%)
Mutual labels:  component-library
miter-design
Miter Design component library made with ♡ by Prefect
Stars: ✭ 14 (-98.84%)
Mutual labels:  component-library
react-transition-components
Easily configurable React components for animations / transitions 💃
Stars: ✭ 18 (-98.5%)
Mutual labels:  component-library
react-showroom
Document React components by declaring props definition and writing markdown.
Stars: ✭ 40 (-96.67%)
Mutual labels:  component-library
Psi
Platform for Situated Intelligence
Stars: ✭ 249 (-79.3%)
Mutual labels:  component-library
trunx
Super Saiyan React components, son of awesome Bulma, implemented in TypeScript
Stars: ✭ 60 (-95.01%)
Mutual labels:  component-library
mint-ui
The UI library of Mint
Stars: ✭ 56 (-95.34%)
Mutual labels:  component-library
MudBlazor
Blazor Component Library based on Material design with an emphasis on ease of use. Mainly written in C# with Javascript kept to a bare minimum it empowers .NET developers to easily debug it if needed.
Stars: ✭ 4,539 (+277.31%)
Mutual labels:  component-library
paragon
💎 An accessible, theme-ready design system built for learning applications and Open edX.
Stars: ✭ 85 (-92.93%)
Mutual labels:  component-library
vue-component-template
Vue.js template to build standalone components
Stars: ✭ 21 (-98.25%)
Mutual labels:  component-library
vue-gql
A small and fast GraphQL client for Vue.js
Stars: ✭ 32 (-97.34%)
Mutual labels:  component-library
vue-component-lib-starter
A bare-bones example of creating your own Vue component library.
Stars: ✭ 221 (-81.63%)
Mutual labels:  component-library
esl
Lightweight and flexible UI component library based on web components technology for creating basic UX modules
Stars: ✭ 53 (-95.59%)
Mutual labels:  component-library
bindable
A design system built in Aurelia JS that allows for faster and easier web development.
Stars: ✭ 20 (-98.34%)
Mutual labels:  component-library
vue-devui-early
Vue3版本的DevUI组件库。本仓库已迁移至:https://github.com/DevCloudFE/vue-devui
Stars: ✭ 39 (-96.76%)
Mutual labels:  component-library
dazzler
Python UI/Web Framework
Stars: ✭ 17 (-98.59%)
Mutual labels:  component-library
react-uswds
USWDS 3.0 components built in React
Stars: ✭ 108 (-91.02%)
Mutual labels:  component-library
react-library-template
Jumpstart your team's shared react library
Stars: ✭ 26 (-97.84%)
Mutual labels:  component-library

Webview UI Toolkit for Visual Studio Code

NPM Version License: MIT Toolkit CI Status Deploy Docs Status

Webview Toolkit for Visual Studio Code Artwork

Introduction

The Webview UI Toolkit is a component library for building webview-based extensions in Visual Studio Code.

Some of the library's features include:

  • Visual Studio Code design language: All components follow the design language of Visual Studio Code, which enables developers to create extensions that have a consistent look and feel with the rest of the editor.
  • Automatic support for color themes: All components are designed with theming in mind, and will automatically display the current editor theme.
  • Tech stacks: The library ships as a set of web components. This means developers can use the toolkit no matter which tech stack – React, Vue, Svelte, etc. – their extension is built with.
  • Immediate accessibility: All components ship with web-standard compliant ARIA labels and keyboard navigation.

Getting started

Follow the Getting Started Guide.

If you already have a webview-based extension, you can install the toolkit with the following command:

npm install --save @vscode/webview-ui-toolkit

Documentation

For more information, check out the following documentation:

A note on webview usage

Webviews are a powerful way to add custom functionality beyond what the Visual Studio Code API supports. They're fully customizable, which, historically, has meant that the responsibility of developing UI which aligns with the Visual Studio Code design language and follows our webview guidelines lies in the hands of extension authors.

The Webview UI Toolkit shifts some of this responsibility away from extension developers. It does this by providing core components that make it easier to build higher quality webview UIs in Visual Studio Code.

With all this said, we still strongly encourage you to carefully review whether or not your extension needs to use webviews before building. While webviews provide a great way to add custom functionality, oftentimes, they come at the cost of performance and accessibility.

The core Visual Studio Code API provides a vast array of building blocks for highly performant, accessible, and tightly integrated extension experiences. Generally, we encourage you to use them before webviews. If you haven't already, check out this overview of API capabilities to get an idea of what's possible.

Finally, if you're ever unsure if your extension should use webviews or not, you should open an issue and we'll give you some feedback and guidance.

Contributing

Read the contributing documentation.

Legal notices

Microsoft and any contributors grant you a license to any code in the repository under the MIT License, see the LICENSE file.

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft’s Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party’s policies.

Privacy information can be found here.

Microsoft and any contributors reserve all other rights, whether under their respective copyrights, patents, or trademarks, whether by implication, estoppel or otherwise.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].