open-index/open-npm huggingface dataset:
npm package: @quick_vue/cli
Description: Quick Cli 是一个 Vue 组件库构建工具，通过 Quick Cli 可以快速搭建一套功能完备的 Vue 组件库。
Author: nieyao
Latest version: 1.0.1

# Quick Cli

Quick Cli 是一个 Vue 组件库构建工具，通过 Quick Cli 可以快速搭建一套功能完备的 Vue 组件库。



### 手动安装

```shell
# 通过 npm 安装
npm i @quick_vue/cli -D

# 通过 yarn 安装
yarn add @quick_vue/cli --dev
```

安装完成后，请将以下配置添加到 package.json 文件中

```json
{
  "scripts": {
    "dev": "quick-cli dev",
    "test": "quick-cli test",
    "lint": "quick-cli lint",
    "build": "quick-cli build",
    "release": "quick-cli release",
    "build-site": "quick-cli build-site"
  },
  "husky": {
    "hooks": {
      "pre-commit": "lint-staged",
      "commit-msg": "quick commit-lint"
    }
  },
  "lint-staged": {
    "*.{js,jsx,ts,tsx,vue}": "eslint --fix",
    "*.{vue,css,less,scss}": "stylelint --fix"
  },
  "eslintConfig": {
    "root": true,
    "extends": ["@quick"]
  },
  "stylelint": {
    "extends": ["@quick/stylelint-config"]
  },
  "prettier": {
    "singleQuote": true
  },
  "browserslist": ["Android >= 4.0", "iOS >= 8"]
}
```

## 详细文档

- [命令](https://github.com/LoveEocding/quick_cli/docs/commands.md)
- [配置指南](https://github.com/LoveEocding/quick_cli/docs/config.md)
- [目录结构](https://github.com/LoveEocding/quick_cli/docs/directory.md)
- [更新日志](https://github.com/LoveEocding/quick_cli/changelog.md)
npm package: @quickapp-eco/cloudbase-adapter-quickapp
Description: quickapp adapter of cloudbase javascript SDK
Author: cynicism2011@gmail.com
Latest version: 0.2.0

# cloudbase-adapter-quickapp

## 介绍

@cloudbase/js-sdk 只支持常规 Web 应用（即浏览器环境）的开发，不兼容其他类 Web 平台，比如微信小程序、快应用、Cocos 等。虽然这些平台大多支持 JavaScript 运行环境，但在网络请求、本地存储、平台标识等特性上与浏览器环境有明显差异。针对这些差异特性，@cloudbase/js-sdk 提供一套完整的适配扩展方案，遵循此方案规范可开发对应平台的适配器，然后搭配 @cloudbase/js-sdk 和适配器实现平台的兼容性。
本项目按照[适配器开发指引](https://docs.cloudbase.net/api-reference/webv3/adapter/)完成Android快应用平台的适配。

## 安装

```
npm install @quickapp-eco/cloudbase-adapter-quickapp -S
```

## 使用

```js
import cloudbase from "@cloudbase/js-sdk"
import adapter, { QappStorage, requestFunction } from '@quickapp-eco/cloudbase-adapter-quickapp'

// 如果是在app.ux里useAdapters，请注意要在onCreate生命周期或者之后调用
// 因为adapter调用到了快应用中的feature
cloudbase.useAdapters(adapter)

// 初始化cloudbase
const app = cloudbase.init({
  env: 'xxx', // 环境ID
  clientId: 'xxx', // 应用ID
  appSign: 'com.example.cloudbase', // 应用标识
  appSecret: {
    appAccessKeyId: 1, // 应用凭证版本号
    appAccessKey: 'xxxx' // 应用凭证
  }
})

// 身份认证，返回 Auth 对象
// auth模块的adapter有问题，需要在构造函数中传参
// 调用与app.auth方法务必按照以下方式传参
const auth = app.auth({
  storage: QappStorage,
  baseRequest: requestFunction,
  captchaOptions: {
    openURIWithCallback: (...props) => {
      console.log('open uri with callback', ...props)
    }
  },
})
```

### Tips:

- 目前应用真正只用到了`system.fetch`，其余的暂时没有应用场景。

- 在manifest.json文件里声明adapter中用到的接口:
    - system.fetch
    - system.request
    - syste.storage
    - system.websocketfactory


## License

[MIT](./LICENSE)
npm package: @quickapp-eco/qa-transformer
Description: Transform a weapp into a quickapp
Author: laurelL22
Latest version: 0.1.0

## 小程序转快应用说明
[![tested with jest](https://img.shields.io/badge/tested_with-jest-99424f.svg)](https://github.com/facebook/jest)
[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)

***************************************************
虽然我们做了我们很多工作，你仍然需要需要快应用的语法进行熟悉，文档地址：https://doc.quickapp.cn/framework/

## 使用方法

```
npm install -g @quickapp-eco/qa-transformer // 全局安装转换器
qa [wechat_app_dir] [output_dir] // 使用qa命令转换
```

## 转换情况概览

转换完成后，您可以搜索项目中的todo和`logs.txt`来查看需要您手动进行修改的位置

***************************************************

## Template

### Form

由于平台差异，快应用并不支持Form，小程序的Form绑定的事件可能需要您绑定到类似button的UI元素里面

### router

转换完成后，template的router部分进行了polyfill处理，但对一些edge case可能无法覆盖到，需要您手动干预转换成快应用支持的语法，由于两个平台的差异，可能仍有部分router api无法支持，需要您进行改写

更多差异请参考`doc/template`部分

***************************************************

## JS
我们对小程序的wx开头的api，做了polyfill，并将前缀改成了qa，你可以在`src/polyfill/script`看到所有的代码，后续，你可能需要将这些api转换到快应用原生的写法
我们在polyfill相关api的方法上加上了注释，可以帮您快速找到快应用对应的 api 位置。
很多快应用不支持的api，我们也会在您调用的时候在控制台进行说明，你可以使用debugger看到不支持的api调用

### 同步函数说明
在快应用中暂时没有同步API，所以如果你使用了微信小程序的同步API，我们给微信的同步API写了符合快应用语法规则的垫片（polyfill）方法，但是仍需要你手动在调用的位置把调用方法修改成快应用中能够支持的`async/await`形式。使用的方法你可以在[这里](https://doc.quickapp.cn/tutorial/framework/using-async.html?h=async)看到

### 登录和支付相关接口说明
由于微信和快应用的登录和支付方式存在很大的不同，所以如果你的小程序使用了这些相关的接口，在转换之后需要你手动配置相关的接口才能使用，而小程序中的接口我们用垫片做了处理，使其不会影响到页面的加载和一些业务逻辑，具体的配置方法你可以在[这里](https://doc.quickapp.cn/features/service/wxaccount.html)看到

***************************************************

## CSS
由于小程序支持的CSS规则较之快应用更多，所以如果使用了快应用不支持的CSS规则（以后会逐步支持的😁），我们会把它注释掉，同时也会在注释的地方说明是哪种规则类型不支持，需要你手动修改。
这些CSS转换的信息你也可以在转换后的项目中的`logs.txt`中找到。
同时为了兼容一些样式，我们也增加了一个`polyfill.css`以支持快应用中的一些组件的正常显示，你可以在项目中的`src/polyfill/stylesheet`文件夹中找到它。

### 布局方式说明
目前快应用仅支持flex布局，所以如果你的小程序使用了大量float布局方式，在转换后的代码样式可能存在巨大偏差，建议先改为flex布局后再进行转换。如果你不熟悉flex布局，你可以在[这里](https://developer.mozilla.org/zh-CN/docs/Glossary/Flex)学习到相关的布局知识。
***************************************************

### 友情提示
转换后的代码由于两个平台的差异较大，可能不会顺利跑起来，需要你手动修改一些特定位置的代码。不要被转换后的报错吓到😁。另外，如果你使用了其他框架或工具（例如mpvue）生成的小程序，目前对这些小程序的转换是存在较大差异的，修改起来会很费力。

### 交流
你在使用中遇到了任何问题都可以在[这里](https://bbs.quickapp.cn/forum.php?mod=forumdisplay&fid=56)与我们交流。

***************************************************
Welcome to QuickApp, happy coding.


## License

[MIT](./LICENSE)
npm package: @quickapp-eco/qappwebp-webpack-plugin
Description: 适用快应用打包编译时，图片格式转换webp的webpack 插件
Author: szmalq@163.com
Latest version: 0.1.0

# 转换 webp 图片格式的 webpack 插件

适用快应用打包编译时，将图片格式转换为 webp 的 webpack 插件，旨在于缩小 rpk 包体积的同时，加快图片加载和渲染速度

## 使用

### 1.安装

```
npm install -D @quickapp-eco/qappwebp-webpack-plugin
```

### 2.使用

在快应用工程根目录的`hap.config.js`文件中添加如下配置（若没有`hap.config.js`文件，需要新增该配置文件）

快应用打包编译的 webpack 配置基础上会增加`hap.config.js`文件中的配置信息

```javascript
const QappWebpWebpackPlugin = require("@quickapp-eco/qappwebp-webpack-plugin");

module.exports = {
  plugins: [
    new QappWebpWebpackPlugin({
      match: /(jpe?g|png)$/,
      webp: {
        quality: 80
      },
      limit: 0,
      disable: false
    })
  ]
};
```

### QappWebpWebpackPlugin 参数

| 参数    |    类型    |       默认值        |                                         说明                                         |
| :------ | :--------: | :-----------------: | :----------------------------------------------------------------------------------: |
| match   | 正则字符串 | `/\.(png\|jpe?g)$/` |                           符合正则表达式的图片转换成 webp                            |
| limit   |   number   |          0          |                图片大小限制，大于 limit 的图片才会转换(以字节为单位)                 |
| webp    |   Object   |   `{quality: 80}`   | 是图片转换 webp 工具`sharp`的[配置](https://sharp.pixelplumbing.com/api-output#webp) |
| disable |  boolean   |       `false`       |                                   是否禁用转换处理                                   |

## License

[MIT](./LICENSE)
npm package: @quickapp-eco/qappx
Description: 快应用内应用级集中状态管理工具库
Author: szmalq@163.com
Latest version: 0.1.0

# qappx

快应用内应用级集中状态管理工具库。

受 vuex 的启发，在 vuex 的基础上做了快应用运行环境的相关适配，并对 vuex 的 api 做了一些修改，从而更好到运行在快应用平台上

## 使用

### 1. 安装

```
npm install -S @quickapp-eco/qappx
```

### 2. 使用

`qappx` 的运行依赖于[快应用框架前端插件](https://doc.quickapp.cn/framework/script.html)，所以需要快应用框架最小版本 `1060+`

`app.ux` 文件：

```
import { Store, installStore } from '@quickapp-eco/qappx'

// 实例化store
const store = new Store({
  state: {
    name: 'szm',
    detail: {
      height: '185cm',
      weight: '180g'
    }
  },
  getters: {
    height: state => state.detail.height,
    weight: state => state.detail.weight
  },
  mutations: {
    change(state, height) {
      state.detail.height = height
    }
  },
  actions: {
    change(context) {
      context.commit('change', '180cm')
    }
  }
})

// 插件引入
const pageNames = ['Demo', 'Detail'] // 挂载的页面名称
export default {
  plugins: [ installStore(store, { apply : pageNames }) ]
}
```

### 3. API 文档

具体 api 说明可参看 [API 文档](https://vuex.vuejs.org/zh/api/)，和 `vuex@3.1.2` 的主要 api 及相关功能特性基本一致。

#### 删除 api：

1. 构造器选项：

- `strict`
- `devtools`

2. 实例方法：

- `watch`
- `hotUpdate`

#### 新增 api：

- installStore(store, { apply, exclude })

##### 参数

| 名称               | 说明            | 类型                                           | 默认值                 |
| ------------------ | --------------- | ---------------------------------------------- | ---------------------- |
| store              | 全局 store 实例 | Store                                          | -                      |
| { apply, exclude } | 挂载页面参数    | { apply: String/Array, exclude: String/Array } | {apply:[], exclude:[]} |

**注意**：store 默认会挂载到快应用到所有页面上，如果考虑到性能问题，只需要挂载到特定的页面到话可以传入方法的第二个参数。
当使用第二个参数时，会优先使用 `apply`值，如果设置了 `apply` 时则丢弃 `exclude` 的值。

```
{
  apply: ['PageA','PageB'], // 只挂载在 PageA, PageB 页面上
  exclude: ['PageC', 'PageD'] // 排除 PageC, PageD 页面，挂载到其他页面上
}
```

## License

[MIT](./LICENSE)
npm package: @quickapp-eco/quickapp-axios
Description: 网络请求axios工具库在快应用平台上的实现
Author: HeartCloud
Latest version: 0.1.1

# quickapp-axios

网络请求axios工具库在快应用平台上的实现

## 特性

- 从快应用中出创建 [XMLHttpRequests](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest)
- 支持 Promise API
- 创建建fetch请求别名
- 拦截请求和响应
- 转换请求和响应数据

## 平台支持

![QuickApp](https://doc.quickapp.cn/assets/images/logo.png)

## manifest.json 配置

``` 
{ "name": "system.fetch" }
```

## 安装

使用 npm:

``` bash
$ npm install @quickapp-eco/quickapp-axios
```

## 示例

执行 `GET` 请求

``` js
// Make a request for a user with a given ID
fetch.get('/example?id=12345')
    .then(response => {
        console.log(response);
    })
    .catch(error => {
        console.log(error);
    });

// Optionally the request above could also be done as
fetch.get('/example', {
        params: {
            id: 12345
        }
    })
    .then(response => {
        console.log(response);
    })
    .catch(error => {
        console.log(error);
    });
```

执行 `POST` 请求

``` js
fetch.post('/example', {
        name: 'HeartCloud',
        password: '12345'
    })
    .then(response => {
        console.log(response);
    })
    .catch(error => {
        console.log(error);
    });
```

## fetch API

可以通过将相关配置传递给 `fetch` 来进行请求

##### fetch(config)

``` js
// 发送一个 POST 请求
fetch({
    method: 'post',
    url: '/example/12345',
    data: {
        name: 'HeartCloud',
        password: '12345'
    }
});
```

### 请求方法别名

为了方便起见，已经为所有支持的请求方法提供了别名。

##### fetch. get(url[, config])

##### fetch. delete(url[, config])

##### fetch. head(url[, config])

##### fetch. options(url[, config])

##### fetch. post(url[, data[, config]])

##### fetch. put(url[, data[, config]])

##### fetch. patch(url[, data[, config]])

### 创建实例

您可以使用自定义配置创建axios的新实例。

##### fetch. create([config])

``` js
let instance = fetch.create({
    baseURL: 'https://www.example.com/api/',
    header: {
        'X-Custom-Header': 'example'
    }
});
```

## 请求配置

这些是用于发出请求的可用配置选项。 只有url是必需的。 如果未指定method，请求将默认为GET。

## 拦截器

你可以截取请求或响应在被 `then` 或者 `catch` 处理之前

``` js
// 添加请求拦截器
fetch.interceptors.request.use(config => {
    // Do something before request is sent
    return config;
}, function(error) {
    // Do something with request error
    return Promise.reject(error);
});

// 添加响应拦截器
fetch.interceptors.response.use(response => {
    // Do something with response data
    return response;
}, function(error) {
    // Do something with response error
    return Promise.reject(error);
});
```

如果你之后可能需要删除拦截器。

``` js
let myInterceptor = fetch.interceptors.request.use(function() {
    /*...*/ });
fetch.interceptors.request.eject(myInterceptor);
```

你可以将拦截器添加到fetch的自定义实例。

``` js
let instance = fetch.create();
instance.interceptors.request.use(function() {
    /*...*/ });
```

## TypeScript


fetch包括 [TypeScript](http://typescriptlang.org) 定义。

``` typescript
import fetch from '@quickapp-eco/quickapp-axios';
fetch.get('/example?id=12345');
```

## License

[MIT](./LICENSE)
npm package: @quickapp-eco/quickapp-template
Description: 快应用通用模板
Author: shenzhim
Latest version: 0.1.1

# quickapp-template

本项目是快应用通用模板项目，包含了常用快应用工具库，网络增强 axios，自动化测试，应用级状态管理方案等一系列开箱即用的解决方案。

## 增强功能

本模版基于 快应用官方模版，并添加了常用的增强功能，可参看下表清单

- 项目构建延用 `hap-toolkit`
- 网络通信 [quickapp-axios](https://github.com/quickapp-eco/quickapp-axios)
- 状态管理 [qappx](https://github.com/quickapp-eco/qappx)，按需引用，非必选
- css 预处理器 [less](https://less.bootcss.com/) ，按需引用，非必选
- 代码提交规范 [commitizen](https://www.npmjs.com/package/commitizen) + [commitlint](https://www.npmjs.com/package/@commitlint/cli)
- 支持转换图片格式到`webp`以减少 rpk 包大小 [qappwebp-webpack-plugin](https://github.com/quickapp-eco/qappwebp-webpack-plugin)


## 工程目录结构

```
├── build --------------------------- 编译后文件
├── dist ---------------------------- 编译打包后的rpk文件
├── sign ----------------------------- 签名文件
│   ├── debug ------------------------ 开发签名
│   │   ├── certificate.pem ---------- 证书
│   │   ├── private.pem -------------- 私钥
├── src
│   ├── Cards ------------------------ 快应用卡片
│   │   ├── CardDemo ----------------- 卡片demo
│   ├── Common ----------------------- 公共静态资源
│   │   ├── images ------------------- 图片资源
│   │   ├── styles ------------------- 样式文件
│   │   ├── logo.png ----------------- 快应用logo
│   ├── Pages ------------------------ 统一存放项目页面级代码
│   │   ├── About -------------------- about页面目录
│   │   ├── ...
│   ├── Services --------------------- 快应用服务
│   │   ├── fetch.js ----------------- 网络请求服务
│   ├── app.ux ----------------------- 应用程序代码的人口文件
│   ├── global.js -------------------- 全局能力的配置与获取
│   ├── manifest.json ---------------- 配置快应用基本信息
│   ├── regenerator.js --------------- 支持async/await
│   ├── store.js --------------------- 全局状态管理store
│────── util.js ---------------------- 辅助功能
```

## 安装

运行 `npm install` 指令安装依赖

## 开发

自动编译项目
如果希望每次修改源代码文件后，都自动编译项目并启动服务，请使用如下命令：

`npm run dev`

手动编译项目
在项目的根目录下，运行如下命令进行编译打包，生成 rpk 包

- `npm run build` （使用 debug 签名）
- `npm run release` （使用 release 签名）

编译打包成功后，项目根目录下会生成文件夹：build、dist

- build：临时产出，包含编译后的页面 js，图片等
- dist：最终产出，包含 rpk 文件。其实是将 build 目录下的资源打包压缩为一个文件，后缀名为 rpk，这个 rpk 文件就是项目编译后的最终产出


## 调试

可参考快应用官方[调试文档](https://doc.quickapp.cn/tutorial/overview/debug.html)

## License

[MIT](./LICENSE)
npm package: @quickapp-eco/quickapp-web
Description: 快应用web增强(支持加载动画，加载失败提示，失败重新加载和h5页面通信等功能)
Author: shenzhim
Latest version: 0.1.1

# quickapp-web

快应用web增强 (支持加载动画，加载失败提示，失败重新加载和h5页面通信等功能)

## 安装

```
npm install -D @quickapp-eco/quickapp-web
```

## 使用

```
<import name="cweb" src="node_modules/@quickapp-eco/quickapp-web/components/Web"></import>

<template>
  <cweb
    id="web"
    url="https://m.mi.com"
  ></cweb>
</template>
```

**注意点** : 如果觉的 导入组件的路径太长的话，可以新增路径别名。在快应用根目录的 `hap.config.js` 文件中 增加如下配置

```javascript
module.exports = {
  alias: {
    "@qapp-components": path.resolve(__dirname, "node_modules/@quickapp-eco/quickapp-web/components"),
  },
};
```

之后，在导入时就可以这么写了

```
<import name="cweb" src="@qapp-components/Web"></import>
```

### 组件一览

- [web](./docs/web.md) 组件：封装 loading/error 展示以及和 webview 的通信等功能
- [page](./docs/page.md) 组件：封装 loading/error 功能，以及联网自动重试等功能

### 注意点

1. 本组件库采用 designWidth：1080 来进行设计开发的。请将 manifest.json 中的 designWidth 配置设置为 1080。

### 测试

进入 test 目录，在命令行中执行 `hap server --watch` 命令，对 test 目录中的代码进行打包编译生成可用作本地测试的快应用 rpk。

**注意**：由于快应用打包工具的限制，目前只能全局安装 hap 工具并进入在 test 目录中手动执行上述命令


## License

[MIT](./LICENSE)
npm package: @quickbi/qbi-dev-tools
Description: Command line tool for developing component for Quick BI
Author: Quick BI
Latest version: 1.0.4

# @quickbi/qbi-dev-tools

This is a building tool for Quick BI custom components.

## Usage

### Install

with npm:

```bash
npm i -D qbi-dev-tools
```

with pnpm:

```bash
pnpm add -D qbi-dev-tools
```

with yarn:

```bash
yarn add -D qbi-dev-tools
```

### configuration

add a file named `qbi.config.ts` to your project root directory.

```ts
// qbi.config.ts
import { defineConfig } from '@quickbi/qbi-dev-tools';

export default defineConfig({
  entry: {
    BIComponentMeta: './src/meta.ts',
    BIComponent: './src/index.ts',
  },
  devServer: {
    port: 3000,
    host: '127.0.0.1',
    server: {
      type: 'https',
    },
  },
});

```

### starting dev server

```bash
qdt start
```

### building the project

```bash
qdt build
```

### bundle the project

```bash
qdt bundle
```

## Debugging

Install the dependencies:

```bash
pnpm i
```

Build the library:

```bash
pnpm build
```

Build the library in watch mode:

```bash
pnpm dev
```
npm package: @quickbyte/pipelines
Description: Flexible data transformation pipeline for QuickByte
Author: Jim Livingston
Latest version: 0.2.38

# @quickbyte/pipelines

A flexible data transformation pipeline for QuickByte that allows for loosely coupled components and easy composition.

## Installation

```bash
# Using npm
npm install @quickbyte/pipelines

# Using yarn
yarn add @quickbyte/pipelines

# Using pnpm
pnpm add @quickbyte/pipelines
```

## Features

- **Loosely Coupled Components**: Readers, transformers, and writers are loosely coupled and can be composed in any order
- **Flexible Type System**: Uses a flexible type system that supports any data type
- **Component Registry**: Provides a registry for component factories, making it easy to create components from configuration
- **Custom Components**: Supports creating custom components that implement the Reader, Transformer, or Writer interfaces
- **Composable Pipelines**: Pipelines can be composed from existing components, making it easy to reuse components across different pipelines

## Usage

### Basic Usage

```typescript
import { FlexiblePipeline } from '@quickbyte/pipelines';
import { MemoryReader, MemoryWriter } from '@quickbyte/pipelines';

// Create a pipeline configuration
const pipeline = new FlexiblePipeline({
  reader: new MemoryReader({ data: ['item1', 'item2'] }),
  writer: new MemoryWriter()
});

// Run the pipeline
await pipeline.run();
```

### Using Transformers

```typescript
import { FlexiblePipeline } from '@quickbyte/pipelines';
import { MemoryReader, MemoryWriter, MapTransformer } from '@quickbyte/pipelines';

const pipeline = new FlexiblePipeline({
  reader: new MemoryReader({ data: ['item1', 'item2'] }),
  transformers: [
    new MapTransformer({
      operations: [
        { field: 'value', operation: 'TO_UPPER_CASE' }
      ]
    })
  ],
  writer: new MemoryWriter()
});

await pipeline.run();
```

### Using the Registry

```typescript
import { FlexiblePipeline, defaultRegistry } from '@quickbyte/pipelines';

// Create components using the registry
const reader = defaultRegistry.createReader({
  type: 'MEMORY',
  options: { data: ['item1', 'item2'] }
});

const writer = defaultRegistry.createWriter({
  type: 'MEMORY'
});

const pipeline = new FlexiblePipeline({
  reader,
  writer
});

await pipeline.run();
```

## API Documentation

### FlexiblePipeline

The main class that orchestrates the data flow through the pipeline.

#### Constructor

```typescript
new FlexiblePipeline(config: FlexiblePipelineConfig)
```

#### Methods

- `run(): Promise<void>` - Executes the pipeline

### Interfaces

- `Reader<T>` - Interface for reading data
- `Writer<T>` - Interface for writing data
- `Transformer` - Interface for transforming data
- `FlexiblePipelineConfig` - Configuration for the pipeline

## License

MIT
npm package: @quickcase/node-logging
Description: NodeJS logging component for QuickCase applications
Author: QuickCase
Latest version: 4.0.3

# node-logging

[![Build status](https://github.com/quickcase/node-logging/workflows/check-main/badge.svg)](https://github.com/quickcase/node-logging/actions)
[![npm version](https://badge.fury.io/js/%40quickcase%2Fnode-logging.svg)](https://badge.fury.io/js/%40quickcase%2Fnode-logging)

NodeJS logging component for QuickCase applications.

Some background info:
* there are 6 log levels: `trace` (5), `debug` (4), `http` (3), `info` (2), `warn` (1) and `error` (0).
* log level can be set via an environment variable `LOG_LEVEL`, the default is `info`.
* log output can be set to json, pretty print json and printf by setting environment variable `LOG_FORMAT` to either `prettyprint` or `printf` or `json`. The default is `json`.
* by default logging is turned off when running the unit tests.

## Usage

Add it as your project's dependency:

```bash
npm i @quickcase/node-logging
```

Require it:

```javascript
const logger = require('@quickcase/node-logging')('moduleName')
```


Usage are:

```javascript
logger.info({
  message: 'Yay, logging!'
})
```

or

```javascript
logger.log({
  level: 'info',
  message: 'What time is the testing at?'
});
```

Above will result in the following log printed (if JSON format is enabled).

```javascript
{
  level: 'info',
  message: 'What time is the testing at?',
  name: 'moduleName',
  timestamp: '2021-01-30T17:57:26.875Z'
}
```

### Access logging for Express applications

Optionally you can use the built-in Express access logger:

```javascript
const { Express } = require('@quickcase/node-logging')

app.use(Express.accessLogger())
```

## Units Tests

Just do

```
npm test
```

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE.md) file for details.
npm package: @quickchat.vn/css-in-js
Description: Toolset to transpile and use CSS on runtime
Author: QuickSales.Vn
Latest version: 0.31.22

<!--header-->

<p align="center">
  <a href="https://quickchat.vn" title="QuickSales.Vn">
    <img src="https://github.com/QuickSales/QuickSales.Vn.Artwork/raw/master/Logos/2020/png/logo-horizontal-red.png" alt="QuickSales.Vn" />
  </a>
</p>

# `@quickchat.vn/css-in-js`

> Toolset to transpile and use CSS on runtime

---

[![npm@latest](https://img.shields.io/npm/v/@quickchat.vn/css-in-js/latest?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/css-in-js/v/latest) [![npm@next](https://img.shields.io/npm/v/@quickchat.vn/css-in-js/next?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/css-in-js/v/next) ![npm downloads](https://img.shields.io/npm/dw/@quickchat.vn/css-in-js?style=flat-square) ![License: MIT](https://img.shields.io/npm/l/@quickchat.vn/css-in-js?style=flat-square)

![deps](https://img.shields.io/librariesio/release/npm/@quickchat.vn/css-in-js?style=flat-square) ![npm bundle size](https://img.shields.io/bundlephobia/min/@quickchat.vn/css-in-js?style=flat-square)

<!--/header-->

## Install

<!--install-->

Add `@quickchat.vn/css-in-js` as a dependency:

```sh
npm i @quickchat.vn/css-in-js

# or, if you are using yarn:

yarn add @quickchat.vn/css-in-js
```

<!--/install-->

## Contributing

<!--contributing(msg)-->

Contributions, issues, and feature requests are welcome!<br />
Feel free to check the [issues](https://github.com/QuickSales/fuselage/issues).

<!--/contributing(msg)-->

### Building

As this package dependends on others in this monorepo, before anything run the following at the root directory:

<!--yarn(build)-->

```sh
yarn build
```

<!--/yarn(build)-->

### Linting

To ensure the source is matching our coding style, we perform [linting](<https://en.wikipedia.org/wiki/Lint_(software)>).
Before commiting, check if your code fits our style by running:

<!--yarn(lint)-->

```sh
yarn lint
```

<!--/yarn(lint)-->

Some linter warnings and errors can be automatically fixed:

<!--yarn(lint-and-fix)-->

```sh
yarn lint-and-fix
```

<!--/yarn(lint-and-fix)-->

### Running tests

Whenever possible, add tests to describe exactly what your code do. You can run them by yourself:

<!--yarn(test)-->

```sh
yarn test
```

<!--/yarn(test)-->
npm package: @quickchat.vn/css-supports
Description: Memoized and SSR-compatible facade of CSS.supports API
Author: QuickSales.Vn
Latest version: 0.31.22

<!--header-->

<p align="center">
  <a href="https://quickchat.vn" title="QuickSales.Vn">
    <img src="https://github.com/QuickSales/QuickSales.Vn.Artwork/raw/master/Logos/2020/png/logo-horizontal-red.png" alt="QuickSales.Vn" />
  </a>
</p>

# `@quickchat.vn/css-supports`

> Memoized and SSR-compatible facade of CSS.supports API

---

[![npm@latest](https://img.shields.io/npm/v/@quickchat.vn/css-supports/latest?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/css-supports/v/latest) [![npm@next](https://img.shields.io/npm/v/@quickchat.vn/css-supports/next?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/css-supports/v/next) ![npm downloads](https://img.shields.io/npm/dw/@quickchat.vn/css-supports?style=flat-square) ![License: MIT](https://img.shields.io/npm/l/@quickchat.vn/css-supports?style=flat-square)

![deps](https://img.shields.io/librariesio/release/npm/@quickchat.vn/css-supports?style=flat-square) ![npm bundle size](https://img.shields.io/bundlephobia/min/@quickchat.vn/css-supports?style=flat-square)

<!--/header-->

## Install

<!--install-->

Add `@quickchat.vn/css-supports` as a dependency:

```sh
npm i @quickchat.vn/css-supports

# or, if you are using yarn:

yarn add @quickchat.vn/css-supports
```

<!--/install-->

## Contributing

<!--contributing(msg)-->

Contributions, issues, and feature requests are welcome!<br />
Feel free to check the [issues](https://github.com/QuickSales/fuselage/issues).

<!--/contributing(msg)-->

### Building

As this package dependends on others in this monorepo, before anything run the following at the root directory:

<!--yarn(build)-->

```sh
yarn build
```

<!--/yarn(build)-->

### Linting

To ensure the source is matching our coding style, we perform [linting](<https://en.wikipedia.org/wiki/Lint_(software)>).
Before commiting, check if your code fits our style by running:

<!--yarn(lint)-->

```sh
yarn lint
```

<!--/yarn(lint)-->

Some linter warnings and errors can be automatically fixed:

<!--yarn(lint-and-fix)-->

```sh
yarn lint-and-fix
```

<!--/yarn(lint-and-fix)-->

### Running tests

Whenever possible, add tests to describe exactly what your code do. You can run them by yourself:

<!--yarn(test)-->

```sh
yarn test
```

<!--/yarn(test)-->
npm package: @quickchat.vn/emitter
Description: Event Emitter by QuickSales.Vn
Author: QuickSales.Vn
Latest version: 0.31.22

<!--header-->

<p align="center">
  <a href="https://quickchat.vn" title="QuickSales.Vn">
    <img src="https://github.com/QuickSales/QuickSales.Vn.Artwork/raw/master/Logos/2020/png/logo-horizontal-red.png" alt="QuickSales.Vn" />
  </a>
</p>

# `@quickchat.vn/emitter`

> Event Emitter by QuickSales.Vn

---

[![npm@latest](https://img.shields.io/npm/v/@quickchat.vn/emitter/latest?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/emitter/v/latest) [![npm@next](https://img.shields.io/npm/v/@quickchat.vn/emitter/next?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/emitter/v/next) ![npm downloads](https://img.shields.io/npm/dw/@quickchat.vn/emitter?style=flat-square) ![License: MIT](https://img.shields.io/npm/l/@quickchat.vn/emitter?style=flat-square)

![deps](https://img.shields.io/librariesio/release/npm/@quickchat.vn/emitter?style=flat-square) ![npm bundle size](https://img.shields.io/bundlephobia/min/@quickchat.vn/emitter?style=flat-square)

<!--/header-->

## Install

<!--install-->

Add `@quickchat.vn/emitter` as a dependency:

```sh
npm i @quickchat.vn/emitter

# or, if you are using yarn:

yarn add @quickchat.vn/emitter
```

<!--/install-->

## Contributing

<!--contributing(msg)-->

Contributions, issues, and feature requests are welcome!<br />
Feel free to check the [issues](https://github.com/QuickSales/fuselage/issues).

<!--/contributing(msg)-->

### Building

As this package dependends on others in this monorepo, before anything run the following at the root directory:

<!--yarn(build)-->

```sh
yarn build
```

<!--/yarn(build)-->

### Linting

To ensure the source is matching our coding style, we perform [linting](<https://en.wikipedia.org/wiki/Lint_(software)>).
Before commiting, check if your code fits our style by running:

<!--yarn(lint)-->

```sh
yarn lint
```

<!--/yarn(lint)-->

Some linter warnings and errors can be automatically fixed:

<!--yarn(lint-and-fix)-->

```sh
yarn lint-and-fix
```

<!--/yarn(lint-and-fix)-->

### Running tests

Whenever possible, add tests to describe exactly what your code do. You can run them by yourself:

<!--yarn(test)-->

```sh
yarn test
```

<!--/yarn(test)-->
npm package: @quickchat.vn/eslint-config-alt
Description: ESLint configuration for QuickSales.Vn repositories
Author: QuickSales.Vn
Latest version: 0.31.22

<!--header-->

<p align="center">
  <a href="https://quickchat.vn" title="QuickSales.Vn">
    <img src="https://github.com/QuickSales/QuickSales.Vn.Artwork/raw/master/Logos/2020/png/logo-horizontal-red.png" alt="QuickSales.Vn" />
  </a>
</p>

# `@quickchat.vn/eslint-config-alt`

> ESLint configuration for QuickSales.Vn repositories

---

[![npm@latest](https://img.shields.io/npm/v/@quickchat.vn/eslint-config-alt/latest?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/eslint-config-alt/v/latest) [![npm@next](https://img.shields.io/npm/v/@quickchat.vn/eslint-config-alt/next?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/eslint-config-alt/v/next) ![npm downloads](https://img.shields.io/npm/dw/@quickchat.vn/eslint-config-alt?style=flat-square) ![License: MIT](https://img.shields.io/npm/l/@quickchat.vn/eslint-config-alt?style=flat-square)

![deps](https://img.shields.io/librariesio/release/npm/@quickchat.vn/eslint-config-alt?style=flat-square) ![npm bundle size](https://img.shields.io/bundlephobia/min/@quickchat.vn/eslint-config-alt?style=flat-square)

<!--/header-->

## Install

<!--install(dev)-->

Firstly, install the peer dependencies (prerequisites):

```sh
npm i -D @babel/eslint-parser eslint prettier

# or, if you are using yarn:

yarn add -D @babel/eslint-parser eslint prettier
```

Add `@quickchat.vn/eslint-config-alt` as a dependency:

```sh
npm i -D @quickchat.vn/eslint-config-alt

# or, if you are using yarn:

yarn add -D @quickchat.vn/eslint-config-alt
```

<!--/install(dev)-->

## Contributing

<!--contributing(msg)-->

Contributions, issues, and feature requests are welcome!<br />
Feel free to check the [issues](https://github.com/QuickSales/fuselage/issues).

<!--/contributing(msg)-->

### Linting

To ensure the source is matching our coding style, we perform [linting](<https://en.wikipedia.org/wiki/Lint_(software)>).
Before commiting, check if your code fits our style by running:

<!--yarn(lint)-->

```sh
yarn lint
```

<!--/yarn(lint)-->

Some linter warnings and errors can be automatically fixed:

<!--yarn(lint-and-fix)-->

```sh
yarn lint-and-fix
```

<!--/yarn(lint-and-fix)-->
npm package: @quickchat.vn/fuselage-hooks
Description: React hooks for Fuselage, QuickSales.Vn's design system and UI toolkit
Author: QuickSales.Vn
Latest version: 0.31.22

<!--header-->

<p align="center">
  <a href="https://quickchat.vn" title="QuickSales.Vn">
    <img src="https://github.com/QuickSales/QuickSales.Vn.Artwork/raw/master/Logos/2020/png/logo-horizontal-red.png" alt="QuickSales.Vn" />
  </a>
</p>

# `@quickchat.vn/fuselage-hooks`

> React hooks for Fuselage, QuickSales.Vn's design system and UI toolkit

---

[![npm@latest](https://img.shields.io/npm/v/@quickchat.vn/fuselage-hooks/latest?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/fuselage-hooks/v/latest) [![npm@next](https://img.shields.io/npm/v/@quickchat.vn/fuselage-hooks/next?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/fuselage-hooks/v/next) ![react version](https://img.shields.io/npm/dependency-version/@quickchat.vn/fuselage-hooks/peer/react?style=flat-square) ![npm downloads](https://img.shields.io/npm/dw/@quickchat.vn/fuselage-hooks?style=flat-square) ![License: MIT](https://img.shields.io/npm/l/@quickchat.vn/fuselage-hooks?style=flat-square)

![deps](https://img.shields.io/librariesio/release/npm/@quickchat.vn/fuselage-hooks?style=flat-square) ![npm bundle size](https://img.shields.io/bundlephobia/min/@quickchat.vn/fuselage-hooks?style=flat-square)

<!--/header-->

## Install

<!--install-->

Firstly, install the peer dependencies (prerequisites):

```sh
npm i @quickchat.vn/fuselage-tokens react

# or, if you are using yarn:

yarn add @quickchat.vn/fuselage-tokens react
```

Add `@quickchat.vn/fuselage-hooks` as a dependency:

```sh
npm i @quickchat.vn/fuselage-hooks

# or, if you are using yarn:

yarn add @quickchat.vn/fuselage-hooks
```

<!--/install-->

## Contributing

<!--contributing(msg)-->

Contributions, issues, and feature requests are welcome!<br />
Feel free to check the [issues](https://github.com/QuickSales/fuselage/issues).

<!--/contributing(msg)-->

### Building

As this package dependends on others in this monorepo, before anything run the following at the root directory:

<!--yarn(build)-->

```sh
yarn build
```

<!--/yarn(build)-->

### Linting

To ensure the source is matching our coding style, we perform [linting](<https://en.wikipedia.org/wiki/Lint_(software)>).
Before commiting, check if your code fits our style by running:

<!--yarn(lint)-->

```sh
yarn lint
```

<!--/yarn(lint)-->

Some linter warnings and errors can be automatically fixed:

<!--yarn(lint-and-fix)-->

```sh
yarn lint-and-fix
```

<!--/yarn(lint-and-fix)-->

### Running tests

Whenever possible, add tests to describe exactly what your code do. You can run them by yourself:

<!--yarn(test)-->

```sh
yarn test
```

<!--/yarn(test)-->
npm package: @quickchat.vn/fuselage-polyfills
Description: A bundle of useful poly/ponyfills used by fuselage
Author: QuickSales.Vn
Latest version: 0.31.22

<!--header-->

<p align="center">
  <a href="https://quickchat.vn" title="QuickSales.Vn">
    <img src="https://github.com/QuickSales/QuickSales.Vn.Artwork/raw/master/Logos/2020/png/logo-horizontal-red.png" alt="QuickSales.Vn" />
  </a>
</p>

# `@quickchat.vn/fuselage-polyfills`

> A bundle of useful poly/ponyfills used by fuselage

---

[![npm@latest](https://img.shields.io/npm/v/@quickchat.vn/fuselage-polyfills/latest?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/fuselage-polyfills/v/latest) [![npm@next](https://img.shields.io/npm/v/@quickchat.vn/fuselage-polyfills/next?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/fuselage-polyfills/v/next) ![npm downloads](https://img.shields.io/npm/dw/@quickchat.vn/fuselage-polyfills?style=flat-square) ![License: MIT](https://img.shields.io/npm/l/@quickchat.vn/fuselage-polyfills?style=flat-square)

![deps](https://img.shields.io/librariesio/release/npm/@quickchat.vn/fuselage-polyfills?style=flat-square) ![npm bundle size](https://img.shields.io/bundlephobia/min/@quickchat.vn/fuselage-polyfills?style=flat-square)

<!--/header-->

## Install

<!--install-->

Add `@quickchat.vn/fuselage-polyfills` as a dependency:

```sh
npm i @quickchat.vn/fuselage-polyfills

# or, if you are using yarn:

yarn add @quickchat.vn/fuselage-polyfills
```

<!--/install-->

## Contributing

<!--contributing(msg)-->

Contributions, issues, and feature requests are welcome!<br />
Feel free to check the [issues](https://github.com/QuickSales/fuselage/issues).

<!--/contributing(msg)-->

### Linting

To ensure the source is matching our coding style, we perform [linting](<https://en.wikipedia.org/wiki/Lint_(software)>).
Before commiting, check if your code fits our style by running:

<!--yarn(lint)-->

```sh
yarn lint
```

<!--/yarn(lint)-->

Some linter warnings and errors can be automatically fixed:

<!--yarn(lint-and-fix)-->

```sh
yarn lint-and-fix
```

<!--/yarn(lint-and-fix)-->
npm package: @quickchat.vn/fuselage-toastbar
Description: Fuselage ToastBar component
Author: QuickSales.Vn
Latest version: 0.31.22

<!--header-->

<p align="center">
  <a href="https://quickchat.vn" title="QuickSales.Vn">
    <img src="https://github.com/QuickSales/QuickSales.Vn.Artwork/raw/master/Logos/2020/png/logo-horizontal-red.png" alt="QuickSales.Vn" />
  </a>
</p>

# `@quickchat.vn/fuselage-toastbar`

> Fuselage ToastBar component

---

[![npm@latest](https://img.shields.io/npm/v/@quickchat.vn/fuselage-toastbar/latest?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/fuselage-toastbar/v/latest) [![npm@next](https://img.shields.io/npm/v/@quickchat.vn/fuselage-toastbar/next?style=flat-square)](https://www.npmjs.com/package/@quickchat.vn/fuselage-toastbar/v/next) ![react version](https://img.shields.io/npm/dependency-version/@quickchat.vn/fuselage-toastbar/peer/react?style=flat-square) [![Storybook](https://cdn.jsdelivr.net/gh/storybookjs/brand@master/badge/badge-storybook.svg)](https://rocketchat.github.io/fuselage/fuselage-toastbar) ![npm downloads](https://img.shields.io/npm/dw/@quickchat.vn/fuselage-toastbar?style=flat-square) ![License: MIT](https://img.shields.io/npm/l/@quickchat.vn/fuselage-toastbar?style=flat-square)

![deps](https://img.shields.io/librariesio/release/npm/@quickchat.vn/fuselage-toastbar?style=flat-square) ![npm bundle size](https://img.shields.io/bundlephobia/min/@quickchat.vn/fuselage-toastbar?style=flat-square)

<!--/header-->

## Install

<!--install-->

Firstly, install the peer dependencies (prerequisites):

```sh
npm i @quickchat.vn/fuselage @quickchat.vn/fuselage-hooks @quickchat.vn/fuselage-polyfills @quickchat.vn/styled react react-dom

# or, if you are using yarn:

yarn add @quickchat.vn/fuselage @quickchat.vn/fuselage-hooks @quickchat.vn/fuselage-polyfills @quickchat.vn/styled react react-dom
```

Add `@quickchat.vn/fuselage-toastbar` as a dependency:

```sh
npm i @quickchat.vn/fuselage-toastbar

# or, if you are using yarn:

yarn add @quickchat.vn/fuselage-toastbar
```

<!--/install-->

## Contributing

<!--contributing(msg)-->

Contributions, issues, and feature requests are welcome!<br />
Feel free to check the [issues](https://github.com/QuickSales/fuselage/issues).

<!--/contributing(msg)-->

### Building

As this package dependends on others in this monorepo, before anything run the following at the root directory:

<!--yarn(build)-->

```sh
yarn build
```

<!--/yarn(build)-->

### Linting

To ensure the source is matching our coding style, we perform [linting](<https://en.wikipedia.org/wiki/Lint_(software)>).
Before commiting, check if your code fits our style by running:

<!--yarn(lint)-->

```sh
yarn lint
```

<!--/yarn(lint)-->

Some linter warnings and errors can be automatically fixed:

<!--yarn(lint-and-fix)-->

```sh
yarn lint-and-fix
```

<!--/yarn(lint-and-fix)-->

### Running tests

Whenever possible, add tests to describe exactly what your code do. You can run them by yourself:

<!--yarn(test)-->

```sh
yarn test
```

<!--/yarn(test)-->
npm package: @quickdapp/cli
Description: CLI tool to scaffold new QuickDapp projects
Author: Ramesh Nair
Latest version: 3.17.0

# @quickdapp/cli

CLI tool to scaffold new [QuickDapp](https://quickdapp.xyz) projects.

QuickDapp is a production-ready full-stack TypeScript boilerplate — authentication, PostgreSQL database, GraphQL API, background workers, and a polished React frontend — so you can skip the setup and start building. Available as a base package or with Web3 integration (wallet auth, smart contracts, chain monitoring).

## Usage

```bash
# Using bunx (recommended)
bunx @quickdapp/cli create my-project

# Using npx
npx @quickdapp/cli create my-project

# 'create' is the default command, so this also works
bunx @quickdapp/cli my-project

# With Web3 variant
bunx @quickdapp/cli create my-project --variant web3
```

## Options

| Option | Description |
|--------|-------------|
| `-v, --variant <name>` | Project variant: `base` or `web3` (default: `base`) |
| `--skip-install` | Skip running `bun install` after scaffolding |
| `-r, --release <version>` | Use a specific release version |
| `--list-versions` | List available QuickDapp versions |
| `--version` | Show CLI version |
| `--help` | Show help |

## Prerequisites

- [Git](https://git-scm.com/)
- [Bun](https://bun.sh/)
- [Docker](https://docker.com/)

## Documentation

See the [CLI documentation](https://quickdapp.xyz/docs/getting-started) for a full getting started guide.

## License

MIT — see [LICENSE.md](./LICENSE.md)
npm package: @quickdevelopment/rich-snippet-js
Description: A typescript package that generates a JsonLd for all google structured data components
Author: QuickDevelopment
Latest version: 0.0.1

<div align="center">
<h2>@quickdevelopment/rich-snippet-js &middot; </h2>
  <p align="center">
    This project is a template for quickly developing a new project. It includes a number of features that are common to most projects.
  </p>
</div>

<details>
  <summary>Table of Contents</summary>
  <ol>
    <li><a href="#installation">Installation</a></li>
    <li><a href="#usage">Usage</a></li>
    <li><a href="#documentation">Documentation</a></li>
    <li><a href="#contributing">Contributing</a></li>
    <li><a href="#license">License</a></li>
  </ol>
</details>

## Installation

```
npm install @quickdevelopment/rich-snippet-js
```

## Usage

The usage of this package is to be used as a template for other projects. It includes a number of features that are
common to most projects.

## Documentation

For more information about the library, see the [documentation](https://quickdevelopment.github.io/wp-js/).

## Contributing

If you want to contribute to this project, see [CONTRIBUTING](CONTRIBUTING) for details.

## License

MIT © Quickdevelopment. See [LICENSE](LICENSE) for details.
npm package: @quickdevelopment/svelte-french-toast
Description: Buttery smooth Svelte toasts. Lightweight, customizable, and beautiful by default.
Author: Kabir Goel
Latest version: 1.2.2

<img src="./header-image.png" alt="" />
<p align="center">
<img src="https://badgen.net/badge/license/MIT/blue" />
<img src="https://badgen.net/npm/v/svelte-french-toast" />
</p>
<p align="center">
<a href="https://svelte-french-toast.vercel.app">Website</a> · <a href="https://npmjs.com/package/svelte-french-toast">NPM Package</a>
</p>

# svelte-french-toast

> Buttery smooth Svelte notifications.

svelte-french-toast is a Svelte port of Timo Lins’s react-hot-toast, a lightweight, customizable, and beautiful-by-default toast notification library.

## Installation

Install the package with your favorite package manager:

```
npm install svelte-french-toast
```

```
pnpm install svelte-french-toast
```

```
yarn add svelte-french-toast
```

## Basic usage

Mount a `<Toaster />` at the top level of your app and use the `toast` API to display toasts.

```js
<script>
	import toast, {Toaster} from 'svelte-french-toast'

	function handleClick() {
		toast.success('Hello, world!')
	}
</script>

<Toaster />
<button type="button" on:click={handleClick}>Toast</button>
```

For more usage examples, see [the website](https://svelte-french-toast.vercel.app).

## Thanks

Thanks to the original author of React Hot Toast and its contributors.

```
MIT License

Copyright (c) 2020 Timo Lins

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
```
npm package: @quickdevelopment/wp-js
Description: A simple library to interact with the WordPress REST API
Author: QuickDevelopment
Latest version: 4.0.4

<div align="center">
<h2>@quickdevelopment/wp-js &middot; <a href="https://badge.fury.io/js/@quickdevelopment%2Fwp-js"><img src="https://badge.fury.io/js/@quickdevelopment%2Fwp-js.svg" alt="npm version" height="18"></a></h2>
  <p align="center">
    Get all your public WordPress data through the WP API using a tree-shakable TypeScript library.
  </p>
</div>

<details>
  <summary>Table of Contents</summary>
  <ol>
    <li><a href="#installation">Installation</a></li>
    <li><a href="#usage">Usage</a></li>
    <li><a href="#coming-up">Coming up</a></li>
    <li><a href="#contributing">Contributing</a></li>
    <li><a href="#license">License</a></li>
  </ol>
</details>

## Installation
```
npm install @quickdevelopment/wp-js
```

## Usage

### Setting the Config
```
// src/main.ts
import { ConfigManager } from "@quickdevelopment/wp-js";

ConfigManager.getInstance({
    // Replace with your WordPress API URL
    apiUrl: 'https://developer.wordpress.org/wp-json/wp/v2',
    embed: true
});
```

### Retrieve Posts
This is an example of how to retrieve posts from your WordPress site using the `Post` class.
```
import {Post, PostDataType} from "@quickdevelopment/wp-js";

const posts = new Post()

posts.fetch().then((posts: PostDataType[]) => {
  console.log(posts);
})
.catch((err) => {
  console.log(err);
});
```

## Documentation
For more information about the library, see the [documentation](https://quickdevelopment.github.io/wp-js/).

## Coming up
- [x] Add more API classes to retrieve data from the WP API
- [ ] Examples of how to use the library in multiple contexts
- [x] Add a documentation site

## Contributing
If you want to contribute to this project, see [CONTRIBUTING](CONTRIBUTING) for details.

## License
MIT © Quickdevelopment. See [LICENSE](LICENSE) for details.


[coveralls-image]:https://coveralls.io/repos/github/quickdevelopment/wp-js/badge.svg?branch=main
[coveralls-url]:https://coveralls.io/github/quickdevelopment/wp-js?branch=main