<div class="github-widget" data-repo="feross/awesome-mad-science"></div>
## Awesome Mad Science [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)

令人愉快的 npm 包让你说“哇，不知道那是可能的！” 欢迎 PR！

## peer-to-peer
- [peerwiki](https://www.npmjs.com/package/peerwiki) - bittorrent 上的所有维基百科
- [simple-peer](https://www.npmjs.com/package/simple-peer) - 在浏览器中发送视频/语音/数据 p2p（使用 webrtc）
- [torrent-docker](https://www.npmjs.com/package/torrent-docker) - 通过 bittorrent 实时启动远程 docker 镜像
- [torrent-mount](https://www.npmjs.com/package/torrent-mount) - 挂载 torrent 作为文件系统
- [webtorrent](https://www.npmjs.com/package/webtorrent) - 用于节点和浏览器的流式 Torrent 客户端

## browserify
- [brfs](https://www.npmjs.com/package/brfs) - 将 `fs.readFileSync()` 调用转换为内联静态资产
- [browser field spec](https://gist.github.com/defunctzombie/4339901) - 在为浏览器捆绑模块时替换某些文件/模块
- [browserify](https://npmjs.org/package/browserify) - 在浏览器中使用 `require()`
- [glslify](https://github.com/stackgl/glslify) - 编译成 WebGL 着色器的 npm 模块
- [webworkify](https://www.npmjs.com/package/webworkify) - 用于 browserify 的可组合网络工作者

## files
- [file-type](https://www.npmjs.com/package/file-type) - 通过检查幻数来检测文件内容类型
- [fuse4js](https://www.npmjs.com/package/fuse4js) - 用js写文件系统驱动

## geometry
- [alpha-shape](https://www.npmjs.com/package/alpha-shape) - 任何尺寸的 alpha 形状（想想“凹形”船体）
- [box-intersect](https://www.npmjs.com/package/box-intersect) - 快速任意维框相交检测
- [convex-hull](https://www.npmjs.com/package/convex-hull) - 健壮的任何维度的凸包
- [delaunay-triangulate](https://www.npmjs.com/package/delaunay-triangulate) - 稳健的任意维 delaunay 三角剖分
- [surface-nets](https://www.npmjs.com/package/surface-nets) - 提取任意维度的水平集
- [voronoi-diagram](https://www.npmjs.com/package/voronoi-diagram) - 任何维度的 voronoi 图
- [voxelize](https://www.npmjs.com/package/voxelize) - 体素化网格

## hardware
- [cylon](https://www.npmjs.com/package/cylon) - 从节点命令机器人、设备等

## images
- [indico.io](https://www.npmjs.com/package/indico.io) - 面部情绪识别和面部特征提取
- [trackingjs](https://trackingjs.com/) - 网络上的计算机视觉

## sound
- [doppler](https://github.com/DanielRapp/doppler) - 仅使用麦克风和扬声器检测具有多普勒效应的运动
- [speak.js](https://github.com/mattytemple/speak-js) - 网络上的文字转语音

## streams
- [strip-html](https://www.npmjs.com/package/strip-html) - 从流中剥离 html

## text
- [diff](https://www.npmjs.com/package/diff) - 显示文本差异
- [franc](https://www.npmjs.com/package/franc) - 检测文本的语言
- [indico.io](https://www.npmjs.com/package/indico.io) - 政治情绪分析
- [node-tesseract](https://www.npmjs.com/package/node-tesseract) - Tesseract OCR 包的简单包装器
- [normit](https://www.npmjs.com/package/normit) - 谷歌翻译文本并说出来
- [ocrad.js](https://www.npmjs.com/package/ocrad.js) - 通过 Emscripten 在 Javascript 中进行 OCR
- [pullquoter](https://www.npmjs.com/package/pullquoter) - 从文章中提取有趣的引语
- [sbd](https://www.npmjs.com/package/sbd) - 将文本分成句子
- [sentiment](https://www.npmjs.com/package/sentiment) - 基本情绪分析

## terminal
- [minimist](https://www.npmjs.com/package/minimist) - 简单的参数解析器
- [progress](https://www.npmjs.com/package/progress) - 创建一个简单的终端进度条
- [terminal-menu](https://www.npmjs.com/package/terminal-menu) - 创建复古终端菜单
- [vantage.js](https://github.com/dthree/vantage) - 用于节点的 CLI + SSH + REPL
- [cash](https://github.com/dthree/cash) - 纯 ES6 中的跨平台 Linux 命令

## virtual machines
- [jsemu](https://github.com/fcambus/jsemu) - 用 Ja​​vaScript 编写的模拟器列表
- [jslinux](https://www.npmjs.com/package/jslinux) - 用于运行 Linux 的 x86 模拟器，用 JavaScript 编写
- [jvm](https://www.npmjs.com/package/node-jvm) - 纯 node.js 中的 java 虚拟机
- [doppio](https://github.com/plasma-umass/doppio) - 在 node.js 中主动更新 jvm，用 TypeScript 编写

## misc
- [bell.js](https://www.npmjs.com/package/bell.js) - 周期性时间序列的实时异常检测.
- [bitcoinjs-lib](https://www.npmjs.com/package/bitcoinjs-lib) - 节点和浏览器的比特币客户端
- [fastparallel](https://www.npmjs.com/package/fastparallel) - 零开销并行函数调用
- [google-distance](https://www.npmjs.com/package/google-distance) - 使用谷歌地图的 API 计算地球上两个位置之间的旅行距离
- [qr-image](https://www.npmjs.com/package/qr-image) - 生成二维码

## meta-programming

- [notevil](https://www.npmjs.com/package/notevil) - javascript javascript 解释器，可用于安全运行不受信任的代码.

## mad scientists (people)
- [Mikola Lysenko](https://www.npmjs.com/~mikolalysenko) - 线性代数、计算几何、WebGL
- [Dominic Tarr](https://www.npmjs.com/~dominictarr) - 流，分布式系统
- [Elijah Insua](https://www.npmjs.com/~tmpvar) - 数控机床、CAD/CAM
- [Mathias Buus](https://github.com/mafintosh) - 节点中的种子、保险丝绑定、数据复制
- [Feross Aboukhadijeh](https://github.com/feross) - webtorrent, bittorrent, p2p hacks
- [Max Ogden](https://github.com/maxogden) - 流、体素、数据复制

## License

[![CC0](http://i.creativecommons.org/p/zero/1.0/88x31.png)](http://creativecommons.org/publicdomain/zero/1.0/)

在法律允许的范围内， [Feross Aboukhadijeh](http://feross.org) 已放弃该作品的所有版权和相关或邻接权.
