# @jgbjs/shared

Latest version **2.0.0-alpha.2** (published 2019-04-19) · MIT license · 0 weekly downloads

## Install

```sh
npm install @jgbjs/shared
pnpm add @jgbjs/shared
yarn add @jgbjs/shared
bun add @jgbjs/shared
```

## Health

**Score 20/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities.

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 2.0.0-alpha.2 |
| Published | 2019-04-19 |
| First published | 2019-03-12 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 14 |
| Unpacked size | 645.7 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 22 |
| Maintainers | landn172 |

## Links

- npm: https://www.npmjs.com/package/@jgbjs/shared
- Repository: https://github.com/jgbjs/jgb
- npm.io page: https://npm.io/package/@jgbjs/shared

## Dependencies (14)

- [glob](https://npm.io/package/glob.md) ^7.1.2
- [chalk](https://npm.io/package/chalk.md) ^2.4.1
- [debug](https://npm.io/package/debug.md) ^3.1.0
- [json5](https://npm.io/package/json5.md) ^1.0.1
- [tslib](https://npm.io/package/tslib.md) ^1.9.3
- [lodash](https://npm.io/package/lodash.md) ^4.17.10
- [resolve](https://npm.io/package/resolve.md) ^1.8.1
- [fs-extra](https://npm.io/package/fs-extra.md) ^7.0.0
- [os-utils](https://npm.io/package/os-utils.md) ^0.0.14
- [source-map](https://npm.io/package/source-map.md) ^0.7.3
- [@types/glob](https://npm.io/package/@types/glob.md) ^5.0.35
- [cross-spawn](https://npm.io/package/cross-spawn.md) ^6.0.5
- [@types/lodash](https://npm.io/package/@types/lodash.md) ^4.14.117
- [command-exists](https://npm.io/package/command-exists.md) ^1.2.8

## Recent versions

- 2.0.0-alpha.2 (latest) — 2019-04-19
- 2.0.0-alpha.1 — 2019-03-13
- 2.0.0-alpha.0 — 2019-03-12

## README

# JGB （金箍棒）

---

<img src="https://api.travis-ci.com/jgbjs/jgb.svg?branch=1.x">

小程序渐进式增强开发工具。

## 使用

```shell
# 全局安装jgb-cli
npm i -g jgb-cli
```

相关根目录配置文件**jgb.config.js**

```js
module.exports = {
  // 支持js文件 alias
  alias: {
    '@/utils': './src/utils',
  },
  // jgb-preset-weapp 简写 less
  plugins: ['less'],
  // jgb-preset-weapp 简写 weapp
  presets: ['weapp'],
};
```

## 特性 (具体查看 examples)

- 支持 alias（默认编译到 dist 目录中的 npm 目录）
- 支持 npm （默认编译到 dist 目录中的 npm 目录）
- 自动分析**app.json**中的引用资源文件以及**pages.json**中的**usingComponents**中的资源文件

## alias

支持 script,json 等文件的 alias, 配置：

```js
module.exports = {
  alias: {
    // object 类型
    '@keyboard': {
      // alias 路径
      path: './node_modules/miniapp-keyboard',
      // 指定需要编译到的dist目录， 默认npm
      dist: 'pages/component/',
    },
    // string 类型相当于 object.path
    '@/utils': './src/utils',
  },
};
```

## plugins

关于插件配置：

    所有小程序插件均以支持编译文件类型的形式存在,具体详见各个插件。

默认插件支持配置 **jgb.config.js**

```js
module.exports = {
  plugins: [
    'babel',
    {
      // 支持babel编译的文件扩展名
      extensions: ['.js'],
      // 需要输出的文件扩展名
      outExt: '.js',
    },
    [
      'css',
      {
        // 需要输出的文件扩展名
        outExt: '.wxss',
        // 使用 glob 匹配文件
        // 默认以 extension 匹配文件
        glob: '**/color/*.css',
      },
    ],
  ],
};
```

- [jgb-plugin-babel](packages/jgb-plugin-babel/README.md)
- [jgb-plugin-css](packages/jgb-plugin-css/README.md)
- [jgb-plugin-html](packages/jgb-plugin-html/README.md)
- [jgb-plugin-json](packages/jgb-plugin-json/README.md)
- [jgb-plugin-less](packages/jgb-plugin-less/README.md)
- [jgb-plugin-typescript](packages/jgb-plugin-typescript/README.md)

## presets

- jgb-preset-weapp (微信小程序)

- jgb-preset-aliapp (支付宝小程序)

## Roadmap

- [x] 支持微信小程序编译 (jgb-preset-weapp)

- [x] 支持支付宝小程序编译 (jgb-preset-aliapp)

- [x] 支持百度小程序编译

- [x] 支持微信小程序 usingComponents 使用 npm 中的组件

- [x] 支持 typescript 编译

- [x] 支持 less 编译

- [ ] 支持 sass/scss 编译

## 参考项目

- [parcel](https://github.com/parcel-bundler/parcel)
- [taro](https://github.com/NervJS/taro)
- [wepy](https://github.com/Tencent/wepy)

---
_Source: https://npm.io/package/@jgbjs/shared · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
