# wsemi

> A support package for web developer.

Latest version **1.8.95** (published 2026-09-15) · MIT license · 0 weekly downloads

## Install

```sh
npm install wsemi
pnpm add wsemi
yarn add wsemi
bun add wsemi
```

## Health

**Score 55/100 (C)** — status: active.

Positive: no vulnerabilities; recently updated; high maintenance score.

Warnings: low downloads; no types; no esm support; large bundle.

## Facts

| | |
|---|---|
| Version | 1.8.95 |
| Published | 2026-09-15 |
| First published | 2019-05-17 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 22 |
| Unpacked size | 28 MB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 3 |
| Author | yuda-lyu |
| Maintainers | semisphere |
| Keywords | lodash, color, crypto, fuzzy, xss, xlsx, tool, package , browser, developer |

## Links

- npm: https://www.npmjs.com/package/wsemi
- Repository: https://github.com/yuda-lyu/wsemi
- Homepage: https://github.com/yuda-lyu/wsemi#readme
- Issues: https://github.com/yuda-lyu/wsemi/issues
- npm.io page: https://npm.io/package/wsemi

## Dependencies (22)

- [he](https://npm.io/package/he.md) ^1.2.0
- [xss](https://npm.io/package/xss.md) ^1.0.15
- [diff](https://npm.io/package/diff.md) ^9.0.0
- [uuid](https://npm.io/package/uuid.md) ^14.0.2
- [dayjs](https://npm.io/package/dayjs.md) ^1.11.23
- [hucre](https://npm.io/package/hucre.md) ^1.1.0
- [fuse.js](https://npm.io/package/fuse.js.md) ^7.5.0
- [chokidar](https://npm.io/package/chokidar.md) ^5.0.0
- [tippy.js](https://npm.io/package/tippy.js.md) ^6.3.7
- [viewerjs](https://npm.io/package/viewerjs.md) ^1.12.0
- [crypto-js](https://npm.io/package/crypto-js.md) ^4.2.0
- [diff2html](https://npm.io/package/diff2html.md) ^3.4.56
- [hash-wasm](https://npm.io/package/hash-wasm.md) ^4.12.0
- [lodash-es](https://npm.io/package/lodash-es.md) ^4.18.1
- [tree-kill](https://npm.io/package/tree-kill.md) ^1.2.2
- [decimal.js](https://npm.io/package/decimal.js.md) ^10.6.0
- [xxhash-wasm](https://npm.io/package/xxhash-wasm.md) ^1.1.0
- [html-to-text](https://npm.io/package/html-to-text.md) ^10.0.1
- [ua-parser-js](https://npm.io/package/ua-parser-js.md) ^2.0.10
- [eventemitter3](https://npm.io/package/eventemitter3.md) ^5.0.4
- [@zumer/snapdom](https://npm.io/package/@zumer/snapdom.md) ^2.24.15
- [seamless-scroll-polyfill](https://npm.io/package/seamless-scroll-polyfill.md) ^2.3.4

## Alternatives

- [lodash.assign](https://npm.io/package/lodash.assign.md) — 2.3M weekly downloads
- [lodash.chunk](https://npm.io/package/lodash.chunk.md) — 1.8M weekly downloads
- [react-native-ios-utilities](https://npm.io/package/react-native-ios-utilities.md) — 138.5K weekly downloads
- [@technically/lodash](https://npm.io/package/@technically/lodash.md) — 50.9K weekly downloads
- [@fluid-topics/ft-icon](https://npm.io/package/@fluid-topics/ft-icon.md) — 20.6K weekly downloads

## Recent versions

- 1.8.95 (latest) — 2026-09-15
- 1.8.94 — 2026-09-14
- 1.8.93 — 2026-09-13
- 1.8.92 — 2026-09-10
- 1.8.91 — 2026-09-10
- 1.8.90 — 2026-09-10
- 1.8.89 — 2026-09-09
- 1.8.88 — 2026-09-09
- 1.8.87 — 2026-09-08
- 1.8.86 — 2026-09-07
- 1.8.85 — 2026-09-05
- 1.8.84 — 2026-09-02
- 1.8.83 — 2026-09-02
- 1.8.82 — 2026-09-02
- 1.8.81 — 2026-09-01
- … 547 more at https://npm.io/package/wsemi/versions

## README

# wsemi
A support package for web developer.

![language](https://img.shields.io/badge/language-JavaScript-orange.svg) 
[![npm version](http://img.shields.io/npm/v/wsemi.svg?style=flat)](https://npmjs.org/package/wsemi) 
[![license](https://img.shields.io/npm/l/wsemi.svg?style=flat)](https://npmjs.org/package/wsemi) 
[![npm download](https://img.shields.io/npm/dt/wsemi.svg)](https://npmjs.org/package/wsemi) 
[![npm download](https://img.shields.io/npm/dm/wsemi.svg)](https://npmjs.org/package/wsemi) 
[![jsdelivr download](https://img.shields.io/jsdelivr/npm/hm/wsemi.svg)](https://www.jsdelivr.com/package/npm/wsemi)

## Documentation
To view documentation or get support, visit [docs](https://yuda-lyu.github.io/wsemi/wsemi.html).

## Example
To view some examples for more understanding, visit examples:

> **blob2b64:** [ex-blob2b64.html](https://yuda-lyu.github.io/wsemi/examples/ex-blob2b64.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-blob2b64.html)]

> **str2b64 and b642str:** [ex-str2b64-b642str.html](https://yuda-lyu.github.io/wsemi/examples/ex-str2b64-b642str.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-str2b64-b642str.html)]

> **str2aes and aes2str:** [ex-str2aes-aes2str.html](https://yuda-lyu.github.io/wsemi/examples/ex-str2aes-aes2str.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-str2aes-aes2str.html)]

> **timeTZ2expire and timeTZ2past:** [ex-timeTZ2expire-timeTZ2past.html](https://yuda-lyu.github.io/wsemi/examples/ex-timeTZ2expire-timeTZ2past.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-timeTZ2expire-timeTZ2past.html)]

> **color converter:** [ex-colorConverter.html](https://yuda-lyu.github.io/wsemi/examples/ex-colorConverter.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-colorConverter.html)]

> **domTooltip:** [ex-domTooltip.html](https://yuda-lyu.github.io/wsemi/examples/ex-domTooltip.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domTooltip.html)]

> **domShowImages:** [ex-domShowImages.html](https://yuda-lyu.github.io/wsemi/examples/ex-domShowImages.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domShowImages.html)]

> **domShowImagesDyn[dynamic import]:** [ex-domShowImagesDyn.html](https://yuda-lyu.github.io/wsemi/examples/ex-domShowImagesDyn.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domShowImagesDyn.html)]

> **domConvertToPic:** [ex-domConvertToPic.html](https://yuda-lyu.github.io/wsemi/examples/ex-domConvertToPic.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domConvertToPic.html)]

> **domRenderMarkdownMind:** [ex-domRenderMarkdownMind.html](https://yuda-lyu.github.io/wsemi/examples/ex-domRenderMarkdownMind.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domRenderMarkdownMind.html)]

> **domRenderMarkdownMindDyn[dynamic import]:** [ex-domRenderMarkdownMindDyn.html](https://yuda-lyu.github.io/wsemi/examples/ex-domRenderMarkdownMindDyn.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domRenderMarkdownMindDyn.html)]

> **domCompareText:** [ex-domCompareText.html](https://yuda-lyu.github.io/wsemi/examples/ex-domCompareText.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domCompareText.html)]

> **domScrollIntoView:** [ex-domScrollIntoView.html](https://yuda-lyu.github.io/wsemi/examples/ex-domScrollIntoView.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domScrollIntoView.html)]

> **domScrollTo:** [ex-domScrollTo.html](https://yuda-lyu.github.io/wsemi/examples/ex-domScrollTo.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domScrollTo.html)]

> **domShowInputAndGetFiles:** [ex-domShowInputAndGetFiles.html](https://yuda-lyu.github.io/wsemi/examples/ex-domShowInputAndGetFiles.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domShowInputAndGetFiles.html)]

> **domDropFiles:** [ex-domDropFiles.html](https://yuda-lyu.github.io/wsemi/examples/ex-domDropFiles.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domDropFiles.html)]

> **domDrag:** [ex-domDrag.html](https://yuda-lyu.github.io/wsemi/examples/ex-domDrag.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domDrag.html)]

> **domIsVisible:** [ex-domIsVisible.html](https://yuda-lyu.github.io/wsemi/examples/ex-domIsVisible.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domIsVisible.html)]

> **domRipple:** [ex-domRipple.html](https://yuda-lyu.github.io/wsemi/examples/ex-domRipple.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-domRipple.html)]

> **strFindFuzz:** [ex-strFindFuzz.html](https://yuda-lyu.github.io/wsemi/examples/ex-strFindFuzz.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-strFindFuzz.html)]

> **obj2u8arr & u8arr2obj:** [ex-obj2u8arr-u8arr2obj.html](https://yuda-lyu.github.io/wsemi/examples/ex-obj2u8arr-u8arr2obj.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-obj2u8arr-u8arr2obj.html)]

> **getUserAgent:** [ex-getUserAgent.html](https://yuda-lyu.github.io/wsemi/examples/ex-getUserAgent.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-getUserAgent.html)]

> **getUserAgentDyn[dynamic import]:** [ex-getUserAgentDyn.html](https://yuda-lyu.github.io/wsemi/examples/ex-getUserAgentDyn.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-getUserAgentDyn.html)]

> **clearXSS:** [ex-clearXSS.html](https://yuda-lyu.github.io/wsemi/examples/ex-clearXSS.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-clearXSS.html)]

> **clearXSSDyn[dynamic import]:** [ex-clearXSSDyn.html](https://yuda-lyu.github.io/wsemi/examples/ex-clearXSSDyn.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-clearXSSDyn.html)]

> **openlink:** [ex-openLink.html](https://yuda-lyu.github.io/wsemi/examples/ex-openLink.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-openLink.html)]

> **xlsx:** [ex-xlsx.html](https://yuda-lyu.github.io/wsemi/examples/ex-xlsx.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-xlsx.html)]

> **html2str:** [ex-html2str.html](https://yuda-lyu.github.io/wsemi/examples/ex-html2str.html) [[source code](https://github.com/yuda-lyu/wsemi/blob/master/docs/examples/ex-html2str.html)]

## Installation

### Using npm(ES6 module):
```alias
npm i wsemi
```

### In a browser(UMD module):

Add script for wsemi.
```alias
<script src="https://cdn.jsdelivr.net/npm/wsemi@1.8.95/dist/wsemi.umd.js"></script>
```

[Optional] Add script for `dayjs`.
```alias
<script src="https://cdn.jsdelivr.net/npm/dayjs@1.11.18/dayjs.min.js"></script>
```

[Optional] Add script for `fuse.js`.
> **Note:** Include script when using `strFindFuzz` function.
```alias
<script src="https://cdn.jsdelivr.net/npm/fuse.js@7.1.0/dist/fuse.min.js"></script>
```

[Optional] Add script for `ua-parser-js`.
> **Note:** Include script when using `getUserAgent` function, and don't include script when using `getUserAgentDyn` function.
```alias
<script src="https://cdn.jsdelivr.net/npm/ua-parser-js@2.0.3/dist/ua-parser.min.js"></script>
```

[Optional] Add script for `xss`.
> **Note:** Include script when using `clearXSS` function, and don't include script when using `clearXSSDyn` function.
```alias
<script src="https://cdn.jsdelivr.net/npm/xss@1.0.15/dist/xss.min.js"></script>
```

[Optional] Add script for `markmap`.
> **Note:** Include script when using `domRenderMarkdownMind` function, and don't include script when using `domRenderMarkdownMindDyn` function.
```alias
<script src="https://cdn.jsdelivr.net/npm/d3@7.8.3/dist/d3.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/markmap-view@0.14.4/dist/index.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/markmap-lib@0.14.4/dist/browser/index.min.js"></script>
```

[Optional] Add script for `htmlparser`.
> **Note:** Include script when using `html2str` function.
```alias
<script src="https://cdn.jsdelivr.net/npm/htmlparser@1.7.7/lib/htmlparser.min.js"></script>
```

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