open-index/open-npm huggingface dataset:
npm package: @mastalier1997/rollup-plugin-css-chunks
Description: Rollup plugin to extract CSS into chunks
Author: Fábio Domingues
Latest version: 2.0.7

# rollup-plugin-css-chunks

[Rollup](https://github.com/rollup/rollup) plugin to extract imported CSS files as chunks, allowing code split of CSS
stylesheets. Use [rollup-plugin-extract-bundle-tree](https://github.com/domingues/rollup-plugin-extract-bundle-tree) to
extract dependencies between JS and CSS chunks.

## Installation

```bash
npm install --save-dev rollup-plugin-css-chunks
```

## Features

- Split CSS in chunks;
- Load CSS map referenced or embedded on `sourceMappingURL`;
- Return CSS chunk public URL;

## Usage

```javascript
import css_chunk_url from './home.css';

const css_chunk_map_url = css_chunk_url + '.map';
console.log({css_chunk_url, css_chunk_map_url})
```

## Configuration

```js
// rollup.config.js
import css from 'rollup-plugin-css-chunks';

export default {
    input: 'src/main.js',
    output: {
        dir: 'public',
        format: 'esm'
    },
    plugins: [
        css({
            // inject a CSS `@import` directive for each chunk depended on
            injectImports: false,
            // name pattern for emitted secondary chunks
            chunkFileNames: '[name]-[hash].css',
            // name pattern for emitted entry chunks
            entryFileNames: '[name].css',
            // public base path of the files
            publicPath: '',
            // generate sourcemap
            sourcemap: false,
            // emit css/map files
            emitFiles: true,
        })
    ]
}
```

## License

MIT
npm package: @mastashake08/dash-transformer
Description: JavaScript TransformStream for sending video data over DASH protocol
Author: Jyrone Parker
Latest version: 1.0.3-alpha

# dash-transformer

[![NPM](https://nodei.co/npm/dash-transformer.png)](https://nodei.co/npm/dash-transformer/)

[![NPM version](https://img.shields.io/npm/v/dash-transformer.svg)](https://www.npmjs.com/package/dash-transformer)
[![Build Status](https://travis-ci.org/mastashake08/dash-transformer.svg?branch=master)](https://travis-ci.org/mastashake08/dash-transformer)
[![Coverage Status](https://coveralls.io/repos/github/mastashake08/dash-transformer/badge.svg?branch=master)](https://coveralls.io/github/mastashake08/dash-transformer?branch=master)

npm package template.

## Installation

Clone repository with Git:

```sh
git clone https://github.com/mastashake08/dash-transformer.git
cd dash-transformer
```

## Usage

```javascript
import { DashTransformer } from '@mastashake08/dash-transformer'
readable.pipeThrough(new DashTransformer(digestUrl)).pipeTo(writable)
```

## Testing

Run tests:

```sh
npm test
```

Run tests in watch mode:

```sh
npm run test:watch
```

Run tests with coverage:

```sh
npm run test:coverage
```

View coverage in browser:

```sh
npm run test:coverage:report
open coverage/index.html
```

Lint files:

```sh
npm run lint
```

Fix lint errors:

```sh
npm run lint:fix
```

## Release

Only collaborators with credentials can release and publish:

```sh
npm run release
git push --follow-tags && npm publish
```

To see what files are going to be published, run the command:

```sh
npm pack --dry-run
# tar tvf $(npm pack)
```


## License

[MIT](https://github.com/mastashake08/dash-transformer/blob/master/LICENSE)
npm package: @mastashake08/ocrtts
Description: OCR TTS with pure Javascript
Author: Jyrone Parker
Latest version: 1.0.4-alpha

# ocrtts

[![NPM](https://nodei.co/npm/@mastashake08/ocrtts.png)](https://nodei.co/npm/ocrtts/)

[![NPM version](https://img.shields.io/npm/v/@mastashake08/ocrtts.svg)](https://www.npmjs.com/package/ocrtts)


## Installation

```sh
npm install @mastashake08/ocrtts
```

## Usage

```javascript
import { OcrTTS } from '@mastashake08/ocrtts'

const ocrtts = new OcrTTS()

ocrtts.readText(image) //image can come from stream or uploaded file , etc

```

## Support

- [Patreon](https://patreon.com/mastashake08)

## License

[MIT](https://github.com/mastashake08/ocrtts/blob/master/LICENSE)

# API Reference

## Classes

<dl>
<dt><a href="#OcrTTS">OcrTTS</a></dt>
<dd></dd>
</dl>

## Functions

<dl>
<dt><a href="#readText">readText(image)</a> ⇒ <code>VoidFunction</code></dt>
<dd></dd>
</dl>

<a name="OcrTTS"></a>

## OcrTTS
**Kind**: global class  
<a name="readText"></a>

## readText(image) ⇒ <code>VoidFunction</code>
**Kind**: global function  

| Param | Type | Description |
| --- | --- | --- |
| image | <code>Blob</code> \| <code>ImageData</code> \| <code>HTMLElement</code> | ImageSource to perform OCR on. |
npm package: @mastashake08/quic-talk-client
Description: A P2P WebRTC calling library that uses WebTransport at the signaling server.
Author: Jyrone Parker
Latest version: 1.0.4-alpha

# QUIC Talk Client

[![NPM](https://nodei.co/npm/@mastashake08/quic-talk-client.png)](https://nodei.co/npm/@mastashake08/quic-talk-client/)

[![NPM version](https://img.shields.io/npm/v/@mastashake08/quic-talk-client.svg)](https://www.npmjs.com/package/@mastashake08/quic-talk-client)
[![Build Status](https://travis-ci.org/mastashake08/quic-talk-client.svg?branch=master)](https://travis-ci.org/mastashake08/quic-talk-client)
[![Coverage Status](https://coveralls.io/repos/github/mastashake08/quic-talk-client/badge.svg?branch=master)](https://coveralls.io/github/mastashake08/quic-talk-client?branch=master)

A WebRTC calling package that uses WebTransport as the signaling server. Powered by [PeerJS](https://github.com/peers/peerjs) and [QUIC Talk Server]()

## Installation

Clone repository with Git:

```sh
npm install @mastashake08/quic-talk-client
```

## Usage
Using QUIC Talk is very straight forward! Simply import and choose an ID if you desire else one will be assigned for you. You can optionally give the constructor a WebTransport URL by default it will use a free version I provide for the #HackerGang 

```javascript
import { QuckTalk } from '@mastashake08/quic-talk-client';

const qt = new QuicTalk()
// or
const qt = new QuicTalk({
    id: 'my-custom-id', 
    serverUrl: 'my-custom-quic-talk-server-url'
})
```

## Support

- [Patreon](https://patreon.com/mastashake08)

## License

[MIT](https://github.com/mastashake08/quic-talk-client/blob/master/LICENSE)
npm package: @mastashake08/remote-video-recorder
Description: WebRTC package for controlling remote video stream constraints. Intended for use with remote video production.
Author: Jyrone Parker
Latest version: 1.0.2-alpha

# remote-video-recorder

[![NPM](https://nodei.co/npm/remote-video-recorder.png)](https://nodei.co/npm/remote-video-recorder/)

[![NPM version](https://img.shields.io/npm/v/remote-video-recorder.svg)](https://www.npmjs.com/package/remote-video-recorder)
[![Build Status](https://travis-ci.org/mastashake08/remote-video-recorder.svg?branch=master)](https://travis-ci.org/mastashake08/remote-video-recorder)
[![Coverage Status](https://coveralls.io/repos/github/mastashake08/remote-video-recorder/badge.svg?branch=master)](https://coveralls.io/github/mastashake08/remote-video-recorder?branch=master)

npm package template.

## Installation

Clone repository with Git:

```sh
git clone https://github.com/mastashake08/remote-video-recorder.git
cd remote-video-recorder
```

## Usage

Rename package (use [npm-package-name-checker](https://mastashake08.org/npm-package-name-checker/) to check for name availability):

```sh
# replace $NAME with your package name
git grep -l remote-video-recorder | xargs sed -i '' -e "s/remote-video-recorder/$NAME/g"
```

Manually update the files:

- [ ] LICENSE
- [ ] README.md
- [ ] package.json

Reinitialize Git repository:

```sh
rm -rf .git
git init
```

Install package dependencies:

```sh
npm install
```

Make first commit:

```sh
git commit -am "feat: initial commit"
```

## Testing

Run tests:

```sh
npm test
```

Run tests in watch mode:

```sh
npm run test:watch
```

Run tests with coverage:

```sh
npm run test:coverage
```

View coverage in browser:

```sh
npm run test:coverage:report
open coverage/index.html
```

Lint files:

```sh
npm run lint
```

Fix lint errors:

```sh
npm run lint:fix
```

## Release

Only collaborators with credentials can release and publish:

```sh
npm run release
git push --follow-tags && npm publish
```

To see what files are going to be published, run the command:

```sh
npm pack --dry-run
# tar tvf $(npm pack)
```

## Support

- [Patreon](https://b.remarkabl.org/patreon)
- [Ko-fi](https://b.remarkabl.org/ko-fi)
- [Liberapay](https://b.remarkabl.org/liberapay)
- [Teepsring](https://b.remarkabl.org/teespring)

## License

[MIT](https://github.com/mastashake08/remote-video-recorder/blob/master/LICENSE)
npm package: @mastashake08/shake-canvas
Description: npm package template.
Author: Jyrone Parker
Latest version: 0.0.3

# shake-canvas

[![NPM](https://nodei.co/npm/shake-canvas.png)](https://nodei.co/npm/shake-canvas/)

[![NPM version](https://img.shields.io/npm/v/shake-canvas.svg)](https://www.npmjs.com/package/shake-canvas)
[![Build Status](https://travis-ci.org/mastashake08/shake-canvas.svg?branch=master)](https://travis-ci.org/mastashake08/shake-canvas)
[![Coverage Status](https://coveralls.io/repos/github/mastashake08/shake-canvas/badge.svg?branch=master)](https://coveralls.io/github/mastashake08/shake-canvas?branch=master)

npm package template.

## Installation

Clone repository with Git:

```sh
git clone https://github.com/mastashake08/shake-canvas.git
cd shake-canvas
```

## Usage

Rename package (use [npm-package-name-checker](https://mastashake08.org/npm-package-name-checker/) to check for name availability):

```sh
# replace $NAME with your package name
git grep -l shake-canvas | xargs sed -i '' -e "s/shake-canvas/$NAME/g"
```

Manually update the files:

- [ ] LICENSE
- [ ] README.md
- [ ] package.json

Reinitialize Git repository:

```sh
rm -rf .git
git init
```

Install package dependencies:

```sh
npm install
```

Make first commit:

```sh
git commit -am "feat: initial commit"
```

## Testing

Run tests:

```sh
npm test
```

Run tests in watch mode:

```sh
npm run test:watch
```

Run tests with coverage:

```sh
npm run test:coverage
```

View coverage in browser:

```sh
npm run test:coverage:report
open coverage/index.html
```

Lint files:

```sh
npm run lint
```

Fix lint errors:

```sh
npm run lint:fix
```

## Release

Only collaborators with credentials can release and publish:

```sh
npm run release
git push --follow-tags && npm publish
```

To see what files are going to be published, run the command:

```sh
npm pack --dry-run
# tar tvf $(npm pack)
```

## Support

- [Patreon](https://b.remarkabl.org/patreon)
- [Ko-fi](https://b.remarkabl.org/ko-fi)
- [Liberapay](https://b.remarkabl.org/liberapay)
- [Teepsring](https://b.remarkabl.org/teespring)

## License

[MIT](https://github.com/mastashake08/shake-canvas/blob/master/LICENSE)
npm package: @mastashake08/shake-video-editor
Description: Edit videos in the web!
Author: Jyrone Parker
Latest version: 1.2.0-alpha

# shake-video-editor

[![NPM](https://nodei.co/npm/@mastashake08/shake-video-editor.png)](https://nodei.co/npm/shake-video-editor/)

[![NPM version](https://img.shields.io/npm/v/@mastashake08/shake-video-editor.svg)](https://www.npmjs.com/package/shake-video-editor)
[![Build Status](https://travis-ci.org/mastashake08/shake-video-editor.svg?branch=master)](https://travis-ci.org/mastashake08/shake-video-editor)
[![Coverage Status](https://coveralls.io/repos/github/mastashake08/shake-video-editor/badge.svg?branch=master)](https://coveralls.io/github/mastashake08/shake-video-editor?branch=master)

npm package template.

## Installation

Clone repository with Git:

```sh
git clone https://github.com/mastashake08/shake-video-editor.git
cd shake-video-editor
```

## Usage

Rename package (use [shake-video-editor](https://npmjs.com/package/shake-video-editor/) to check for name availability):

```sh
# replace $NAME with your package name
git grep -l shake-video-editor | xargs sed -i '' -e "s/shake-video-editor/$NAME/g"
```

Manually update the files:

- [ ] LICENSE
- [ ] README.md
- [ ] package.json

Reinitialize Git repository:

```sh
rm -rf .git
git init
```

Install package dependencies:

```sh
npm install
```

Make first commit:

```sh
git commit -am "feat: initial commit"
```

## Testing

Run tests:

```sh
npm test
```

Run tests in watch mode:

```sh
npm run test:watch
```

Run tests with coverage:

```sh
npm run test:coverage
```

View coverage in browser:

```sh
npm run test:coverage:report
open coverage/index.html
```

Lint files:

```sh
npm run lint
```

Fix lint errors:

```sh
npm run lint:fix
```

## Release

Only collaborators with credentials can release and publish:

```sh
npm run release
git push --follow-tags && npm publish
```

To see what files are going to be published, run the command:

```sh
npm pack --dry-run
# tar tvf $(npm pack)
```

## Support

- [Patreon](https://b.remarkabl.org/patreon)
- [Ko-fi](https://b.remarkabl.org/ko-fi)
- [Liberapay](https://b.remarkabl.org/liberapay)
- [Teepsring](https://b.remarkabl.org/teespring)

## License

[MIT](https://github.com/mastashake08/shake-video-editor/blob/master/LICENSE)
npm package: @mastashake08/shake-video-element
Description: Custom Javascript Web Component for an enhanced Video element inherits from HTMLVideoElement
Author: Jyrone Parker
Latest version: 1.1.5

# Shake Video Element

[![NPM](https://nodei.co/npm/@mastashake08/shake-video-element.png)](https://nodei.co/npm/@mastashake08/shake-video-element)

[![NPM version](https://img.shields.io/npm/v/@mastashake08/shake-video-element.svg)](https://www.npmjs.com/package/@mastashake08/shake-video-element)
[![Build Status](https://travis-ci.org/mastashake08/shake-video-element.svg?branch=master)](https://travis-ci.org/mastashake08/shake-video-element)
[![Coverage Status](https://coveralls.io/repos/github/mastashake08/shake-video-element/badge.svg?branch=master)](https://coveralls.io/github/mastashake08/shake-video-element?branch=master)

A web component for a more enhanced HTMLVideoElement

## Installation

Clone repository with Git:

```sh
git clone https://github.com/mastashake08/shake-video-element.git
cd shake-video-element
```

## Usage
<shake-video src="" autoStream="true"/>

## Testing

Run tests:

```sh
npm test
```

Run tests in watch mode:

```sh
npm run test:watch
```

Run tests with coverage:

```sh
npm run test:coverage
```

View coverage in browser:

```sh
npm run test:coverage:report
open coverage/index.html
```

Lint files:

```sh
npm run lint
```

Fix lint errors:

```sh
npm run lint:fix
```

## Release

Only collaborators with credentials can release and publish:

```sh
npm run release
git push --follow-tags && npm publish
```

To see what files are going to be published, run the command:

```sh
npm pack --dry-run
# tar tvf $(npm pack)
```

## Support

- [Patreon](https://patreon.com/mastashake08)
- [Cash App](https://cash.me/$mastashake08)

## License

[MIT](https://github.com/mastashake08/shake-video-element/blob/master/LICENSE)
npm package: @mastashake08/terrain-generator
Description: A Vue 3 component for generating realistic terrain with GLTF export capabilities.
Latest version: 1.1.8

# 🌋 Vue Terrain Generator
Generate realistic terrain meshes using Perlin & Simplex noise algorithms in a Vue 3 application. Export your generated terrains as `.gltf` files for use in games, simulations, or 3D modeling.

---

## ✨ Features
- ✅ **Noise Algorithms:** Supports Perlin and Simplex noise for realistic terrain generation.
- ✅ **Texture Support:** Apply Albedo, Normal, and Roughness maps.
- ✅ **Configurable:** Customize terrain size, segments, noise scaling, and height scaling.
- ✅ **TypeScript Support:** Fully typed props for a better developer experience.
- ✅ **Tested with Vitest:** Reliable, robust, and ready to use.

---

## 📦 Installation
```bash
npm install @mastashake08/terrain-generator
npm package: @mastashake08/video-transforms
Description: npm package template.
Author: Jyrone Parker
Latest version: 0.1.1

# video-transforms

[![NPM](https://nodei.co/npm/@mastashake08/video-transforms.png)](https://nodei.co/npm/@mastashake08/video-transforms/)

[![NPM version](https://img.shields.io/npm/v/video-transforms.svg)](https://www.npmjs.com/package/@mastashake08/video-transforms)
[![Build Status](https://travis-ci.org/mastashake08/video-transforms.svg?branch=master)](https://travis-ci.org/mastashake08/video-transforms)
[![Coverage Status](https://coveralls.io/repos/github/mastashake08/video-transforms/badge.svg?branch=master)](https://coveralls.io/github/mastashake08/video-transforms?branch=master)

npm package template.

## Installation

Clone repository with Git:

```sh
git clone https://github.com/mastashake08/video-transforms.git
cd video-transforms
```

## Usage

Rename package (use [npm-package-name-checker](https://mastashake08.org/npm-package-name-checker/) to check for name availability):

```sh
# replace $NAME with your package name
git grep -l video-transforms | xargs sed -i '' -e "s/video-transforms/$NAME/g"
```

Manually update the files:

- [ ] LICENSE
- [ ] README.md
- [ ] package.json

Reinitialize Git repository:

```sh
rm -rf .git
git init
```

Install package dependencies:

```sh
npm install
```

Make first commit:

```sh
git commit -am "feat: initial commit"
```

## Testing

Run tests:

```sh
npm test
```

Run tests in watch mode:

```sh
npm run test:watch
```

Run tests with coverage:

```sh
npm run test:coverage
```

View coverage in browser:

```sh
npm run test:coverage:report
open coverage/index.html
```

Lint files:

```sh
npm run lint
```

Fix lint errors:

```sh
npm run lint:fix
```

## Release

Only collaborators with credentials can release and publish:

```sh
npm run release
git push --follow-tags && npm publish
```

To see what files are going to be published, run the command:

```sh
npm pack --dry-run
# tar tvf $(npm pack)
```

## Support

- [Patreon](https://b.remarkabl.org/patreon)
- [Ko-fi](https://b.remarkabl.org/ko-fi)
- [Liberapay](https://b.remarkabl.org/liberapay)
- [Teepsring](https://b.remarkabl.org/teespring)

## License

[MIT](https://github.com/mastashake08/video-transforms/blob/master/LICENSE)
npm package: @mastashake08/vue-4k-camera-recorder
Description: A Vue 3 component using MediaRecorder and MediaCapabilities API to record 4K video from the user's camera.
Author: Jyrone Parker
Latest version: 0.2.0

# Vue 3 + Vite

This template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.

Learn more about IDE Support for Vue in the [Vue Docs Scaling up Guide](https://vuejs.org/guide/scaling-up/tooling.html#ide-support).
npm package: @mastashake08/web-iot
Description: Connect to your IoT devices via usb, serial, NFC or Serial. Allows for callback integration and streaming *coming soon*
Author: Mastashake
Latest version: 1.4.1

## WebIOT
Connect to and interact with your IoT devices over a variety of connections including:
- Serial
- USB
- Serial
- NFC
- More coming!

## Usage
### Installation

### Usage Via Serial

### Usage Via USB

### Usage Via Serial

### Usage Via NFC

## Contributing

## Support
npm package: @mastashake08/youtube-dash
Description: Manage and stream YouTube livestreams in the browser.
Author: Jyrone Parker
Latest version: 1.0.6-alpha

# youtube-dash

[![NPM](https://nodei.co/npm/@mastashake08/youtube-dash.png)](https://nodei.co/npm/@mastashake08/youtube-dash/)

[![NPM version](https://img.shields.io/npm/v/@mastashake08/youtube-dash.svg)](https://www.npmjs.com/package/@mastashake08/youtube-dash)
[![Build Status](https://travis-ci.org/mastashake08/youtube-dash.svg?branch=master)](https://travis-ci.org/mastashake08/youtube-dash)
[![Coverage Status](https://coveralls.io/repos/github/mastashake08/youtube-dash/badge.svg?branch=master)](https://coveralls.io/github/mastashake08/youtube-dash?branch=master)

NPM package for managing broadcasts and livestreaming from the browser using the Youtube Livestreaming API via DASH. Created and maintained by [Jyrone Parker](https://jyroneparker.com)

## Installation

Clone repository with Git:

```sh
git clone https://github.com/mastashake08/youtube-dash.git
cd youtube-dash
```

Use via NPM
```sh
npm i @mastashake08/youtube-dash
```

## Usage

Import the package in your Javascript application.

```javascript
import { YoutubeDash } from '@mastashake08/youtube-dash'

const yt = new YoutubeDash(api_token)

const title = "Getting Started With Screen Recorder"
yt.createNewLiveStream(title)

//readable video stream
readable.pipeThru(yt.uploadStream()).pipeTo(writable)

//using sync blobs with MediaRecorder gathering data every 2 seconds
mediaRecorder.start(2000);
mediaRecorder.ondataavailable = (e) => {
    const file = new File([e.data], "video.webm");
    yt.uploadDashData(file)
};
```


## Release

Only collaborators with credentials can release and publish:

```sh
npm run release
git push --follow-tags && npm publish
```

To see what files are going to be published, run the command:

```sh
npm pack --dry-run
# tar tvf $(npm pack)
```

## Support

- [Patreon](https://patreon.com/mastashake08)

## License

[MIT](https://github.com/mastashake08/youtube-dash/blob/master/LICENSE)
npm package: @mastashake08/zlib-urlsafe
Description: Zlib compress/decompress with URL-safe Base64, using native browser streams (no external libraries).
Author: Jyrone Parker
Latest version: 1.0.3

# zlib-urlsafe

> **Zlib** compress/decompress + **URL-safe Base64** encoding/decoding — all **native** in modern browsers, **no external libs**.

This package provides four functions:

1. **decodeBase64UrlSafe(str)**  
2. **encodeBase64UrlSafe(bytes)**  
3. **compressZlibBase64UrlSafe(str)**  
4. **decompressZlibBase64UrlSafe(str)**

They rely on **`CompressionStream`** and **`DecompressionStream`** (`'deflate'` mode) to handle **zlib** data.

## Installation

```bash
npm install @mastashake08/zlib-urlsafe
```

*(You can publish to npm under your chosen package name.)*

## Usage

```js
import {
  compressZlibBase64UrlSafe,
  decompressZlibBase64UrlSafe
} from '@mastashake08/zlib-urlsafe';

(async () => {
  const original = 'Hello, compress me!';
  
  // Compress
  const compressed = await compressZlibBase64UrlSafe(original);
  console.log('Compressed (URL-safe Base64):', compressed);
  
  // Decompress
  const result = await decompressZlibBase64UrlSafe(compressed);
  console.log('Decompressed result:', result); // "Hello, compress me!"
})();
```

### `encodeBase64UrlSafe` / `decodeBase64UrlSafe`

If you only need to handle URL-safe Base64:

```js
import {
  encodeBase64UrlSafe,
  decodeBase64UrlSafe
} from '@mastashake08/zlib-urlsafe';

const dataBytes = new Uint8Array([ 0x48, 0x69 ]); // "Hi"
const b64Url = encodeBase64UrlSafe(dataBytes); 
// e.g. "SGk" (no padding)

const decoded = decodeBase64UrlSafe(b64Url);
// Uint8Array([72, 105]) => "Hi"
```

## Browser Compatibility

- Requires **`CompressionStream`** and **`DecompressionStream`**.  
- Supported in Chrome 80+, Edge 79+, Safari 15.4+, Firefox 101+ (behind a flag).  
- Node.js 19+ partially supports it behind experimental flags.  
- **Older browsers / Node versions**: You need a polyfill or a library like [pako](https://github.com/nodeca/pako).  

## License

[MIT](LICENSE) (or your chosen license).
```
npm package: @master-c8/commons
Description: Platzi Master C8 commons
Author: Platzi Master C8
Latest version: 0.1.11

# Commons Package

Generics components of Master-c8 project.

# Use

#### Example

```jsx
import { ButtonExample } from '@master-c8/commons';

const myComponent = () => {
	return <ButtonExample>
		Hello Master-C8 Commons
	</ButtonExample>;
};
```
npm package: @master-c8/icons
Description: Platzi Master C8 Icons
Author: Platzi Master C8
Latest version: 0.1.3

# Icons Package

Icons of master-c8 project

## Icon

#### Example:

```jsx
import React from 'react';
import { BriefCase } from '@master-c8/icons';

const Questions = () => (
  <ul>
    <li>
      Jobs <BriefCase />
    </li>
  </ul>
);

export default Questions;
```

## List Icons

```jsx
  - <Blog />
  - <BriefCase />
  - <ChevronLeft />
  - <ChevronRight />
  - <ChevronUp />
  - <ChevronDown />
  - <Home />
  - <Menu />
  - <Message />
  - <Notification />
  - <UserGroup />
  - <Website />
```

## Size Icons

```jsx
import { Blog } from '@master-c8/icons';

const Example = () => {
  return (
    <Blog fontSize="small"/>
    <Blog fontSize="large"/>
  );
};

export default Example;
```

## List Colors

- primary
- secondary
- error
- info
- success
- warning
- inherit
- action
- disabled

#### Example 

```jsx
import { Message } from '@master-c8/icons';

const Example = () => {
  return <Message color="secondary" />
};

export default Example;
```
npm package: @master-c8/theme
Description: Platzi Master C8 Theme
Author: Platzi Master C8
Latest version: 0.1.9

# Theme Package

Colors, Theme to Default of master-c8 project

## ThemeProvider

#### Example:

```jsx
import React from 'react';
import { ThemeProvider } from '@master-c8/theme';

import Routes from 'Routes';

import 'Styles/style.scss';

const App = () => (
    <React.StrictMode>
        <ThemeProvider>
            <Routes />
        </ThemeProvider>
    </React.StrictMode>
);

export default App
```

## THEME

#### Example:

```jsx
import { THEME } from '@master-c8/theme';

console.log(THEME.palette.warning.main) // '#FBA618'
```

## COLORS

#### Example:

```jsx
import { COLORS } from '@master-c8/theme';

console.log(COLORS.background1) // '#E5E5E5'
```
npm package: @master-harttmans/vintage.js
Description: easy library for creating bot, based on eris
Author: master-harttmans
Latest version: 1.0.2

```js
const {
  Client
} = require("@master-harttmans/vintage.js");


const bot = new Client({
  token: "YOUR_Bot_TOKEM"
});

bot.command("$Hello", "Hello, #author[username]");
bot.command("$say", "#message[1;], #ping");
bot.start();
```

docs: [read wiki in github!](https://github.com/master-harttman/vintage.js/wiki)
npm package: @master-hash/tree-sitter-highlight
Description: A syntax highlighter for Node powered by Tree Sitter. Written in Rust.
Author: Devon Govett
Latest version: 1.2.2

# tree-sitter-highlight

A syntax highlighter for Node.js powered by [Tree Sitter](https://github.com/tree-sitter/tree-sitter). Written in Rust.

## Usage

The following will output HTML:

```js
const treeSitter = require('tree-sitter-highlight');

treeSitter.highlight('const foo = "hi";', treeSitter.Language.JS);
// => '<span class="source">...</span>'
```

You can also output a [HAST](https://github.com/syntax-tree/hast) AST, which is useful for integrating with Markdown or MDX processors (e.g. Remark).

```js
treeSitter.highlightHast('const foo = "hi";', treeSitter.Language.JS);
// => {type: 'element', children: [...]}
```

## Themes

The output HTML will contain CSS class names for various tokens. These will depend on the language, but there are several common names used across languages. Here is a basic example theme:

```css
.keyword {
  color: purple;
}

.function {
  color: blue;
}

.type {
  color: pink;
}

.string {
  color: green;
}

.number {
  color: brown;
}

.operator {
  color: gray;
}

.comment {
  color: lightgray;
}
```

Inspect the generated output HTML and design your CSS accordingly.

## License

MIT
npm package: @master-l/sdk
Description: 🛠 An SDK for building applications.
Latest version: 0.0.1

# Pancakeswap SDK

Forked from the [Uniswap SDK](https://github.com/Uniswap/uniswap-v2-sdk/commit/a88048e9c4198a5bdaea00883ca00c8c8e582605).

You can refer to the Uniswap SDK documentation [uniswap.org](https://docs.uniswap.org/sdk/2.0.0/).

## Running tests

To run the tests, follow these steps. You must have at least node v10 and [yarn](https://yarnpkg.com/) installed.

First clone the repository:

```sh
git clone https://github.com/pancakeswap/pancake-swap-sdk.git
```

Move into the pancakeswap-sdk working directory

```sh
cd pancakeswap-sdk/
```

Install dependencies

```sh
yarn install
```

Run tests

```sh
yarn test
```

You should see output like the following:

```sh
yarn run v1.22.4
$ tsdx test
 PASS  test/constants.test.ts
 PASS  test/pair.test.ts
 PASS  test/fraction.test.ts
 PASS  test/miscellaneous.test.ts
 PASS  test/entities.test.ts
 PASS  test/trade.test.ts

Test Suites: 1 skipped, 6 passed, 6 of 7 total
Tests:       3 skipped, 82 passed, 85 total
Snapshots:   0 total
Time:        5.091s
Ran all test suites.
✨  Done in 6.61s.
```
npm package: @master-technology/svelte-tabs
Description: A tabs component for Svelte
Latest version: 1.2.2
Deprecated: Package renamed, please use @master.technology/svelte-tabs

# svelte-tabs

A tabs component for Svelte

## Installation

    npm install --save svelte-tabs

## Basic usage

```html
<script>
  import { Tabs, Tab, TabList, TabPanel } from 'svelte-tabs';
</script>

<Tabs>
  <TabList>
    <Tab>One</Tab>
    <Tab>Two</Tab>
    <Tab>Three</Tab>
  </TabList>

  <TabPanel>
    <h2>Panel One</h2>
  </TabPanel>

  <TabPanel>
    <h2>Panel Two</h2>
  </TabPanel>

  <TabPanel>
    <h2>Panel Three</h2>
  </TabPanel>
</Tabs>
```

## Props

- `selectedTabIndex` (number): The index of the tab to initially select, when the Tabs component is mounted.

## Overriding styling

svelte-tabs comes with a basic default style, but it can be overridden. To override the styles to use your own, you will need to use global styles that have a higher specificity than the built-in styles.

To make sure your overridden styles have the most specificity, include the parent class `.svelte-tabs` in your selector, and include the element type (see below). An example selector would be `:global(.svelte-tabs li.svelte-tabs__selected)`.

Below are CSS selectors that can be used for the different components in this library:

- Tabs: `:global(.svelte-tabs)`
- Tab: `:global(.svelte-tabs li.svelte-tabs__tab)`
- Selected Tab: `:global(.svelte-tabs li.svelte-tabs__selected)`
- TabPanel: `:global(.svelte-tabs div.svelte-tabs__tab-panel)`

As a last resort, if you can't get the right specificity, you can always use `!important`.

## Development

- Fork and clone the repository, then run `npm install`.
- From the repository root, run `npm link`.
- From the repository root, run `npm run build:watch`.
- From the `examples` directory, run `npm link svelte-tabs`.
- From the `examples` directory, run `npm run dev`.
- Go to [http://localhost:5000](http://localhost:5000).
- You now have a running development environment. Changes you make to the component will be reflected in the app.

## Running tests

To do a single run of the tests, run `npm test`. To run the tests in watch mode, run `npm run dev:watch`.

## Credits

Derived from the code at [https://svelte.dev/repl/8e68120858e5322272dc9136c4bb79cc?version=3.7.0](https://svelte.dev/repl/8e68120858e5322272dc9136c4bb79cc?version=3.7.0) by Rich Harris

## Limitations

- Nested tab panels are not yet supported.
npm package: @master-ventures/paid-dapp-contracts
Description: Smart Agreement Anchoring Contracts
Author: roberto.zubiet@admios-sa.com
Latest version: 1.0.2

# paid-dapp-contracts

Please refer to [the Official Wiki](https://github.com/PAIDNetwork/paid-dapp-contracts/wiki/PAID-Smart-Agreements) for an explanation of the contract.

## Contract Addresses

**Binance Smart Chain (Testnet)**

- Using this Token Address: `0xD4571aD34970A524FcD50Ff2c4715929C3B0d6b0`
- SmartAgreement Anchoring: `0x6d2Aec6BE9d31b8777d25F5E64e64D1ca0F9E1b5`
- Escrow: `0x015D9bDECFeCA19eDAF4D27F8003F680E1a77d09`

**Rinkeby Testnet**

- Using this Token Address: `0x4756c2d4BD8C94a91b910bDD9F6e8cC12676A40F`
- SmartAgreement Anchoring: `0x03e4dC91c7b067aAb9a0C2Fdb2588C7Ec897D1A5`
- Escrow: `0xFFFBF7a742386dC5610178F09CA1cCcFfEF0dc89`

## Running Tests

- On Hardhat: `npm run test`
- On Ganache: `npm run test -- --network localhost`

## Deploying

1. Add your private key to `.env`, use `.env.sample` es an example.
2. Deploy to the network:

- On Ganache: `npm run deploy -- --network localhost`
- On BSC: `npm run deploy --network bscTestnet`
- On Rinkeby: `npm run deploy -- --network rinkeby`
npm package: @master-ventures/universal-wallet
Description: A wallet for documents and tokens
Author: IFESA
Latest version: 0.3.3

# xdv-universal-wallet
XDV Universal Wallet

Creates a 3ID protocol enabled Ed25519 or Web3 provider

## Example

```typescript
    const did = await Wallet.create3IDEd25519({
      passphrase: 'abcdef123456',
    })
    expect(did.id.length).to.be.above(0)

    const ipfsManager = new IPFSManager(did.did)
    await ipfsManager.start()

    const fil = Buffer.from('fffffffffffffffffffffff')
    // auth
    await did.did.authenticate()
    const cid = await ipfsManager.addSignedObject(fil, {
      name: 'UnitTest.txt',
      contentType: 'text/text',
      lastModified: new Date(),
    })
    expect(cid.length).to.be.above(0)

    const res = await ipfsManager.getObject(cid)
    expect(res.value.name).equal('UnitTest.txt')

```

## API

### crypto/Wallet


#### static async createES256K(options: any)
  
Creates an ES256K universal wallet

Parameters

* `passphrase`: Passphrase
* `walletid`: A wallet id, set it to load a previously created wallet, otherwise leave empty
* `rpcUrl`: An EVM Compatible chain (Ethereum, Binance Smart Chain, etc)
* `registry`: Contract address for EVM compatible ethr-did registry

Returns a `XDVUniversalProvider`

* `did`: A DID object from 3ID library. Allows to authenticate and sign with IPLD
* `secureMesssage`: Uses `EthCrypto` for encrypting and decrypting
* `publicKey`: A public key as an array like
* `issuer`: A DID object for issue signers
* `web3`: Web3 instance used by DApps
* `id`: A wallet id
* `address`: Wallet address

#### static async create3IDEd25519(options: any)
  
Creates an Ed25519 universal wallet

>Note: Signing only, support for X25519 will be added later

Creates an universal wallet for ES256K

Parameters

* `passphrase`: Passphrase
* `walletid`: A wallet id, set it to load a previously created wallet, otherwise leave empty

Returns a `XDVUniversalProvider`

* `did`: A DID object from 3ID library. Allows to authenticate and sign with IPLD
* `secureMesssage`: Uses `EthCrypto` for encrypting and decrypting
* `publicKey`: A public key as an array like
* `issuer`: A DID object for issue signers
* `web3`: Web3 instance used by DApps
* `id`: A wallet id
* `address`: Wallet address


#### static async createWeb3Provider(options: any)
  
Creates a Web3 provider universal wallet

Parameters

* `passphrase`: Passphrase
* `walletid`: A wallet id, set it to load a previously created wallet, otherwise leave empty
* `rpcUrl`: An EVM Compatible chain (Ethereum, Binance Smart Chain, etc)
* `registry`: Contract address for EVM compatible ethr-did registry

### 3id/DIDManager

### 3id/DriveManager

### 3id/IPFSManager

### 3id/W3CVerifiedCredential


#### issueCredential(did: DID, issuer: any, holderInfo: any)
  
Issues a Verified Credential

Parameters
* @param options { passphrase, walletid, rpcUrl }
npm package: @master-yoda/lunar-typescript
Description: lunar是一款无第三方依赖的公历(阳历)、农历(阴历、老黄历)、佛历和道历工具，支持星座、儒略日、干支、生肖、节气、节日、彭祖百忌、每日宜忌、吉神宜趋、凶煞宜忌、吉神(喜神/福神/财神/阳贵神/阴贵神)方位、胎神方位、冲煞、纳音、星宿、八字、五行、十神、建除十二值星、青龙名堂等十二神、黄道日及吉凶等。lunar is a calendar library for Solar and Chinese Lunar.
Author: Pulset
Latest version: 1.7.6

# lunar [![License](https://img.shields.io/badge/license-MIT-4EB1BA.svg?style=flat-square)](https://github.com/6tail/lunar-typescript/blob/master/LICENSE)

lunar是一款无第三方依赖的公历(阳历)、农历(阴历、老黄历)、佛历和道历工具，支持星座、儒略日、干支、生肖、节气、节日、彭祖百忌、每日宜忌、吉神宜趋、凶煞宜忌、吉神(喜神/福神/财神/阳贵神/阴贵神)方位、胎神方位、冲煞、纳音、星宿、八字、五行、十神、建除十二值星、青龙名堂等十二神、黄道日及吉凶等。

[English](https://github.com/6tail/lunar-typescript/blob/master/README_EN.md)

## 示例

    // install
    npm init -y
    npm i typescript -D
    npm i ts-node -D
    npm i lunar-typescript
     
    // test.ts
    import {Solar} from 'lunar-typescript';
    // import {Solar, Lunar, HolidayUtil} from 'lunar-typescript';
     
    const solar = Solar.fromYmd(1986, 5, 29);
    console.log(solar.toFullString());
    console.log(solar.getLunar().toFullString());
     
    // run
    ts-node test.ts

输出结果：

    1986-05-29 00:00:00 星期四 双子座
    一九八六年四月廿一 丙寅(虎)年 癸巳(蛇)月 癸酉(鸡)日 子(鼠)时 纳音[炉中火 长流水 剑锋金 桑柘木] 星期四 北方玄武 星宿[斗木獬](吉) 彭祖百忌[癸不词讼理弱敌强 酉不会客醉坐颠狂] 喜神方位[巽](东南) 阳贵神方位[巽](东南) 阴贵神方位[震](正东) 福神方位[兑](正西) 财神方位[离](正南) 冲[(丁卯)兔] 煞[东]

## 文档

请移步至 [https://6tail.cn/calendar/api.html](https://6tail.cn/calendar/api.html "https://6tail.cn/calendar/api.html")

## Star History

[![Star History Chart](https://api.star-history.com/svg?repos=6tail/lunar-typescript&type=Date)](https://star-history.com/#6tail/lunar-typescript&Date)
npm package: @master.technology/desktopmenuitem
Description: Create/Edit Gnome/KDE Desktop files from the CLI
Author: Nathanael Anderson
Latest version: 0.0.4

# desktop-menuitem
Create/Edit Gnome/KDE Desktop files from the CLI

## .desktop file creator/editor
Are you tired of manually creating .desktop files for your desktop?

### Installation
`npm i -g @master.technology/desktopmenuitem`

### Usage
I tend to go to the directory I've downloaded the new "application" and then just type:
`desktopmenuitem ./appname-1.0.0.AppImage` and be done with it.

This will automatically, detect the name as `Appname` (automatically removing the version and .AppImage) and create a new `appname.desktop` file in your user's application folder.  

However, you are free to pass in whole slew of options:

```
--help                     display help
--view                     View file 
--edit                     Call your editor with the file
--list <optional filter>   List all desktop files
--changelog                Show the changelog

-d, --desktop <file>       Desktop file to use
-k, --keywords <keywords>  Set keywords
-m, --mime <type>          Set mime type
-n, --name <name>          Set name (default: App name)
-e, --exec <name>          Setup executable path
-h, --hide                 Hide application (default: false)
-t, --terminal             .desktop is Terminal mode (default: false)
--json <key>               Set key/values from JSON
```

#### Extra Features Usage
 `--list` has an optional filter, so you can do 
`desktopmenuitem --list .local` and it will only show `.desktop` files in a folder that has `.local` in it. 



### Notes
- [.desktop spec](https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html)



### Known issues
- Does not preserve any comments in an existing file
  - The underlying ini load/save module doesn't support this yet.  I would be willing to switch for another no-dependency ini module.  (PR would be welcome)
npm package: @master.technology/svelte-tabs
Description: A more up to date and performant tabs component for Svelte, forked from: https://github.com/nickyhajal/svelte-tabs
Latest version: 1.2.3

# svelte-tabs

A more up to date and performant tabs component for Svelte, forked from: https://github.com/nickyhajal/svelte-tabs

New Features/Fixes:
- Performance: Supportes Delayed Rendering of Tab content (`delay` on tabPanel defaults to `true`), this basically means anything inside a unshown tab is not mounted/rendered until it is shown.
- Feature: `selectedTabIndex` is now two way bound allowing you to change the tab by setting this value at any time.
- The full `TabPanel` component is hidden if it isn't active, so that it has no effect on the DOM when you switch tabs.


## Installation

    npm install --save @master.technology/svelte-tabs

## Basic usage

```html
<script>
  import { Tabs, Tab, TabList, TabPanel } from '@master.technology/svelte-tabs';
</script>

<Tabs>
  <TabList>
    <Tab>One</Tab>
    <Tab>Two</Tab>
    <Tab>Three</Tab>
  </TabList>

  <TabPanel>
    <h2>Panel One</h2>
  </TabPanel>

  <TabPanel delay=false>
    <h2>Panel Two</h2>
  </TabPanel>

  <TabPanel delay=true>
    <h2>Panel Three</h2>
  </TabPanel>
</Tabs>
```

## Props

- `selectedTabIndex` (number): The index of the tab to initially select, when the Tabs component is mounted.

## Overriding styling

svelte-tabs comes with a basic default style, but it can be overridden. To override the styles to use your own, you will need to use global styles that have a higher specificity than the built-in styles.

To make sure your overridden styles have the most specificity, include the parent class `.svelte-tabs` in your selector, and include the element type (see below). An example selector would be `:global(.svelte-tabs li.svelte-tabs__selected)`.

Below are CSS selectors that can be used for the different components in this library:

- Tabs: `:global(.svelte-tabs)`
- Tab: `:global(.svelte-tabs li.svelte-tabs__tab)`
- Selected Tab: `:global(.svelte-tabs li.svelte-tabs__selected)`
- TabPanel: `:global(.svelte-tabs div.svelte-tabs__tab-panel)`

As a last resort, if you can't get the right specificity, you can always use `!important`.

## Development

- Fork and clone the repository, then run `npm install`.
- From the repository root, run `npm link`.
- From the repository root, run `npm run build:watch`.
- From the `examples` directory, run `npm link svelte-tabs`.
- From the `examples` directory, run `npm run dev`.
- Go to [http://localhost:5000](http://localhost:5000).
- You now have a running development environment. Changes you make to the component will be reflected in the app.

## Running tests

To do a single run of the tests, run `npm test`. To run the tests in watch mode, run `npm run dev:watch`.

## Credits

Derived from the code at [https://svelte.dev/repl/8e68120858e5322272dc9136c4bb79cc?version=3.7.0](https://svelte.dev/repl/8e68120858e5322272dc9136c4bb79cc?version=3.7.0) by Rich Harris

## Limitations

- Nested tab panels are not yet supported.
npm package: @master/css.figma
Description: Master CSS Figma Plugin
Author: Aoyue Design LLC.
Latest version: 2.0.0-rc.69

Below are the steps to get your plugin running. You can also find instructions at:

  https://www.figma.com/plugin-docs/plugin-quickstart-guide/

This plugin template uses Typescript and NPM, two standard tools in creating JavaScript applications.

First, download Node.js which comes with NPM. This will allow you to install TypeScript and other
libraries. You can find the download link here:

  https://nodejs.org/en/download/

Next, install TypeScript using the command:

  npm install -g typescript

Finally, in the directory of your plugin, get the latest type definitions for the plugin API by running:

  npm install --save-dev @figma/plugin-typings

If you are familiar with JavaScript, TypeScript will look very familiar. In fact, valid JavaScript code
is already valid Typescript code.

TypeScript adds type annotations to variables. This allows code editors such as Visual Studio Code
to provide information about the Figma API while you are writing code, as well as help catch bugs
you previously didn't notice.

For more information, visit https://www.typescriptlang.org/

Using TypeScript requires a compiler to convert TypeScript (code.ts) into JavaScript (code.js)
for the browser to run.

We recommend writing TypeScript code using Visual Studio code:

1. Download Visual Studio Code if you haven't already: https://code.visualstudio.com/.
2. Open this directory in Visual Studio Code.
3. Compile TypeScript to JavaScript: Run the "Terminal > Run Build Task..." menu item,
    then select "npm: watch". You will have to do this again every time
    you reopen Visual Studio Code.

That's it! Visual Studio Code will regenerate the JavaScript file every time you save.
npm package: @master/style
Description: The first intelligent Virtual CSS engine ( less than 6KB )
Author: Aoyue Design LLC.
Latest version: 1.6.0
Deprecated: migrated to @master/css

<br><br>

<div align="center">

<p align="center">
    <img src="https://raw.githubusercontent.com/master-co/package/document/images/logo-and-text.svg" alt="logo" width="142">
</p>
<p align="center">
    <b><!-- name -->style<!----></b>
</p>
<p align="center"><!-- package.description -->The first intelligent Virtual CSS engine ( less than 6KB )<!----></p>

[![MIT License](https://flat.badgen.net/github/license/master-co/style?color=yellow)](https://github.com/master-co/style/blob/main/LICENSE)
[![Latest Release](https://flat.badgen.net/npm/v/@master/style?icon=npm&label&color=yellow)](https://www.npmjs.com/package/@master/style)
[![Bundle Size](https://flat.badgen.net/bundlephobia/minzip/@master/style?icon=packagephobia&label&color=yellow)](https://bundlephobia.com/package/@master/style 'gzip bundle size (including dependencies)')
[![Package Size](https://flat.badgen.net/badgesize/brotli/https://cdn.jsdelivr.net/npm/@master/style?icon=jsdelivr&label&color=yellow)](https://unpkg.com/@master/style 'brotli package size (without dependencies)')
[![Documentation](https://flat.badgen.net/badge/icon/Documentation?icon=awesome&label&color=yellow)](https://style.master.co)
[![Github](https://flat.badgen.net/badge/icon/master-co%2Ftstyles?icon=github&label&color=yellow)](https://github.com/master-co/style)
[![Discord](https://flat.badgen.net/badge/icon/discord?icon=discord&label&color=yellow)](https://discord.gg/sZNKpAAAw6)
[![CI](https://flat.badgen.net/github/status/master-co/style/main/ci/circleci?icon=circleci)](https://circleci.com/gh/master-co/workflows/style/tree/main)

</div>

- [Introduction](https://styles.master.co)
- [Setup](https://docs.master.co/styles/setup)
- [Why](https://docs.master.co/styles/why)

# Community
- [Github Discussions](https://github.com/master-co/styles/discussions)
- [Join Master Discord](https://discord.gg/sZNKpAAAw6)
npm package: @master/styles
Description: A Virtual CSS language with enhanced syntax ( less than 8KB )
Author: Aoyue Design LLC.
Latest version: 1.14.0
Deprecated: migrated to @master/css

<br><br>
<div align="center">

<p align="center">
    <img src="https://raw.githubusercontent.com/master-co/package/document/images/logo-and-text.svg" alt="logo" width="142">
</p>
<p align="center">
    <b><!-- name -->styles<!----></b>
</p>
<p align="center"><!-- package.description -->A Virtual CSS language with enhanced syntax ( less than 8KB )<!----></p>

[![MIT License](https://flat.badgen.net/github/license/master-co/styles?color=yellow)](https://github.com/master-co/styles/blob/main/LICENSE)
[![Latest Release](https://flat.badgen.net/npm/v/@master/styles?icon=npm&label&color=yellow)](https://www.npmjs.com/package/@master/styles)
[![Bundle Size](https://flat.badgen.net/bundlephobia/minzip/@master/styles?icon=packagephobia&label&color=yellow)](https://bundlephobia.com/package/@master/styles 'gzip bundle size (including dependencies)')
[![Package Size](https://flat.badgen.net/badgesize/brotli/https://cdn.jsdelivr.net/npm/@master/styles?icon=jsdelivr&label&color=yellow)](https://unpkg.com/@master/styles 'brotli package size (without dependencies)')
[![Documentation](https://flat.badgen.net/badge/icon/Documentation?icon=awesome&label&color=yellow)](https://styles.master.co)
[![Github](https://flat.badgen.net/badge/icon/master-co%2Fstyles?icon=github&label&color=yellow)](https://github.com/master-co/styles)
[![Discord](https://flat.badgen.net/badge/icon/discord?icon=discord&label&color=yellow)](https://discord.gg/sZNKpAAAw6)
[![CI](https://flat.badgen.net/github/status/master-co/styles/main/ci/circleci?icon=circleci)](https://circleci.com/gh/master-co/workflows/styles/tree/main)

</div>

- [Introduction](https://styles.master.co)
- [Setup](https://docs.master.co/styles/setup)
- [Why](https://docs.master.co/styles/why)

# Community
- [Github Discussions](https://github.com/master-co/styles/discussions)
- [Join Master Discord](https://discord.gg/sZNKpAAAw6)

# Language Service

A [Visual Studio Code extension](https://marketplace.visualstudio.com/items?itemName=masterco.master-styles-language-service) for [Master Styles](https://github.com/master-co/styles). Provides code-completion and syntax highlighting.

![image](https://user-images.githubusercontent.com/424290/163530745-65366f1d-bdc1-4eb6-b276-e4f454eb2d9d.png)