Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/chinanf-boy/awesome-micro-npm-packages-zh

🇨🇳翻译: <awesome-micro-npm-package> 小模块,列表 ❤ 校对 ✔
https://github.com/chinanf-boy/awesome-micro-npm-packages-zh

List: awesome-micro-npm-packages-zh

awesome zh

Last synced: 29 days ago
JSON representation

🇨🇳翻译: <awesome-micro-npm-package> 小模块,列表 ❤ 校对 ✔

Awesome Lists containing this project

README

        

# awesome-micro-npm-packages [![translate-svg]][translate-list]

[translate-svg]: http://llever.com/translate.svg
[translate-list]: https://github.com/chinanf-boy/chinese-translate-list\

「 关注小型npm包的列表 」

[中文](./readme.md) | [english](https://github.com/parro-it/awesome-micro-npm-packages)

---

### 校对 √

翻译的原文 | 与日期 | 最新更新 | 更多
---|---|---|---
[commit] | ⏰ 2018 5.7 | ![last] | [中文翻译][translate-list]

[last]: https://img.shields.io/github/last-commit/parro-it/awesome-micro-npm-packages.svg
[commit]: https://github.com/parro-it/awesome-micro-npm-packages/tree/f1f91a80eef48995f738079b4303d6c093f1a7ad

### 贡献

欢迎 👏 勘误/校对/更新贡献 😊 [具体贡献请看](https://github.com/chinanf-boy/chinese-translate-list#贡献)

## 生活

[help me live , live need money 💰](https://github.com/chinanf-boy/live-need-money)

---

# 真棒,微型npm包 [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)

> 一个小且,专注在Node.js模块的列表.

*受[awesome](https://github.com/sindresorhus/awesome)启发列举事物.*

## 文章

- [一行代码的 node modules](https://github.com/sindresorhus/ama/issues/10)
- [构建小,单一用途的 modules](http://thenodeway.io/introduction/#build-small-single-purpose-modules)
- [Module 最佳 实践](https://github.com/mattdesl/module-best-practices)
- [评估包第1部分 - 转向社区](http://bytearcher.com/articles/evaluating-packages-1-check-community/)
- [评估包第2部分 - 审核存储库](http://bytearcher.com/articles/evaluating-packages-2-review-repository/)
- [小模块:它并不是那么简单](https://medium.com/@Rich_Harris/small-modules-it-s-not-quite-that-simple-3ca532d65de4)
- [超小的模块化套餐:疯狂的崇拜还是合理的实践?](http://thefullstack.xyz/hyper-modular-packages-a-crazy-cult-or-a-reasonable-practice/)
- [防范超小模块化JavaScript](https://medium.freecodecamp.com/in-defense-of-hyper-modular-javascript-33934c79e113)
- [微小的npm包:遵循小包装理念,创建Node.js模块的指南](http://g14n.info/2015/12/tiny-npm-package/)
- [小模块的成本](https://nolanlawson.com/2016/08/15/the-cost-of-small-modules/)
- [为什么我局觉得 "小-包" 是件好事](http://codetunnel.io/why-i-think-micro-packages-are-a-good-thing/)

## 模块

### 数组

- [is-sorted](https://github.com/dcousens/is-sorted)-检查数组是否被排序.
- [array-first](https://github.com/jonschlinkert/array-first)-获取数组的第一个元素或开始的第n个元素.
- [array-last](https://github.com/jonschlinkert/array-last)-返回数组中的最后一个元素.
- [arr-flatten](https://github.com/jonschlinkert/arr-flatten)-递归地平移数组或数组.
- [dedupe](https://github.com/seriousManual/dedupe)-从数组中删除重复项.
- [array-range](https://github.com/mattdesl/array-range)-创建具有给定范围的新数组.
- [arr-diff](https://github.com/jonschlinkert/arr-diff)-返回一个数组,该数组只存在来自第一个数组,通过严格相等进行比较的方式,来排除来自其他数组的所有值.
- [filled-array](https://github.com/sindresorhus/filled-array)-返回填充了指定输入的数组
- [map-array](https://github.com/parro-it/map-array)将对象键和值映射到数组中.
- [in-array](https://github.com/jonschlinkert/in-array)-如果数组中存在任何传递值,则返回true - 快过 indexOf
- [unordered-array-remove](https://github.com/mafintosh/unordered-array-remove)-在不进行splice的情况下,有效地从无序数组中移除元素.
- [array-swap](https://github.com/michaelzoidl/swap-array)-在数组中交换两个值的位置.
- [mirrarray](https://github.com/johnwquarles/mirrarray)-从有效key数组创建相同key的对象.
- [group-array](https://github.com/doowb/group-array)将对象成组变为列表.
- [array.chunk](https://github.com/zhiyelee/array.chunk)-将 数组/类型数组分割成给定大小的块.

### String

- [decamelize](https://github.com/sindresorhus/decamelize)-将一个骆驼字符串转换成一个带有自定义分隔符的小写字符串: unicornRainbow → unicorn_rainbow.
- [pad-left](https://github.com/jonschlinkert/pad-left) 填补上0,让字符串符合一定长度
- [to-camel-case](https://github.com/ianstormtaylor/to-camel-case)-将字符串转换为驼峰情况.
- [to-capital-case](https://github.com/ianstormtaylor/to-capital-case)-将字符串转换为大写情况.
- [to-constant-case](https://github.com/ianstormtaylor/to-constant-case)- `camelCase` -> `CAMEL_CASE`
- [to-dot-case](https://github.com/ianstormtaylor/to-dot-case)-`camelCase` -> `camel.case`.
- [to-no-case](https://github.com/ianstormtaylor/to-no-case)-从字符串中移除现有的情况.
- [to-pascal-case](https://github.com/ianstormtaylor/to-pascal-case)- `space case` -> "SpaceCase".
- [to-sentence-case](https://github.com/ianstormtaylor/to-sentence-case)- `the catcher, in the rye.` -> "The catcher, in the rye.".
- [to-snake-case](https://github.com/ianstormtaylor/to-snake-case)- `camelCase` -> "camel_case".
- [to-space-case](https://github.com/ianstormtaylor/to-space-case)- `-RAnDom -jUNk$__loL!` -> "random junk lol".
- [to-title-case](https://github.com/ianstormtaylor/to-title-case)-`the catcher in the rye` -> "The Catcher in the Rye".
- [node-slug](https://github.com/dodo/node-slug)-转UTF-8字符. 'i ♥ unicode'> 'i-love-unicode'
- [rtrim](https://github.com/sergejmueller/rtrim)- 只从字符串的结尾剪掉空格或其他字符.
- [slice.js](https://github.com/hustcc/slice.js)JavaScript库来实现String.substring / Array.slice. python slice 样式
- [strip-ansi](https://github.com/chalk/strip-ansi) 去掉ANSI escape代码.
- [striptags](https://github.com/ericnorris/striptags)-在Node.js中实现PHP的strip_tags.
- [parse-next-json-value](https://github.com/ErikOnBike/parse-next-json-value)-从字符串中解析下一个JSON值,可根据索引查找.

### 日期和时间

- [pretty-ms](https://github.com/sindresorhus/pretty-ms)-将毫秒转换为人类可读字符串: 1337000000 到 15D 11H 23M 20s.
- [hirestime](https://github.com/seriousManual/hirestime)-围绕内置高分辨率计时器的包装器,简化了时间戳的计算.
- [periods](https://github.com/timruffles/periods)为JavaScript定义的时间段常数,以毫秒为单位.
- [fecha](https://github.com/taylorhakes/fecha)JavaScript日期格式化和解析.
- [akamai-time-reference](https://github.com/jucrouzet/akamai-time-reference)-使用Akamai的时间参考服务获取参考时间.
- [timeago.js](https://github.com/hustcc/timeago.js)- 一个小的 (~1.7kb) 库用来格式化日期`*** time ago`语句.
- [count-days-in-month](https://github.com/shinnn/count-days-in-month)- 得到一个月的天数.
- [time-stamp](https://github.com/jonschlinkert/time-stamp) - 获取格式化的时间戳.
- [twas](https://github.com/vutran/twas) - 生成相对时间字符串 (例如: "3秒前")

### 对象

- [map-obj](https://github.com/sindresorhus/map-obj)将对象键和值映射到新对象中.
- [filter-obj](https://github.com/sindresorhus/filter-obj)-将对象键值和值过滤到新对象中.
- [object-values](https://github.com/sindresorhus/object-values)-获取对象的值.
- [object-pairs](https://github.com/eush77/object-pairs)-将对象转换为[key, value],用于映射,迭代或其他用途.
- [zipmap](https://github.com/landau/zipmap)- 压拼成一个对象.
- [just-pluck](https://github.com/jarofghosts/just-pluck) - 获取对应key的所有值.
- [deep-equal](https://github.com/substack/node-deep-equal)Node的`assert.deepEqual()` 算法作为独立的模块.
- [deep-assign](https://github.com/sindresorhus/deep-assign)递归Object.assign() .
- [set-value](https://github.com/jonschlinkert/set-value)-创建嵌套和任何中间点表示法 (`'a.b.c'`) 路径的值.
- [get-value](https://github.com/jonschlinkert/get-value)-使用属性路径 (a.b.c) 从对象中获得嵌套值.
- [has-value](https://github.com/jonschlinkert/has-value)如果值存在,则返回true,如果为空则返回false. 使用点表示法与深度嵌套值 (`'a.b.c'`) 路径一起工作.
- [has-key-deep](https://github.com/ryanaghdam/has-key-deep)-深度搜索对象key. 可以通过提供密钥阵列或使用点路径来搜索密钥.
- [flatkeys](https://github.com/ricardobeat/flatkeys)-使用自定义分隔符,将对象键层次结构变为字符串列表.
- [flatten-obj](https://github.com/watson/flatten-obj)-将具有深嵌套节点的对象文字,转换为简单的键/值对象.
- [is-empty-object](https://github.com/gummesson/is-empty-object)-检查对象是否为空.
- [stringify-object](https://github.com/yeoman/stringify-object)- JSON.stringify一样压缩一个对象/数组, 但字符串中没有双引号.
- [sorted-object](https://github.com/domenic/sorted-object)-返回一个对象的拷贝,并对其键进行排序.
- [static-props](https://github.com/fibo/static-props)-使用`Object.defineProperties`定义静态对象属性
- [missing-deep-keys](https://github.com/vladgolubev/missing-deep-keys)返回第二个没有,而第一个对象有的key数组.
- [has-own-property](https://github.com/LinusU/has-own-property)-检查对象是否具有本地属性.
- [merge-objects](https://github.com/shevaroller/node-merge-objects)-深度合并两个对象. 作为同一对象键的值的数组, 被连接起来.
- [deep-object-diff](https://github.com/mattphillips/deep-object-diff)-深度对比包括数组和对象的嵌套结构的两个JavaScript对象,同时保存数据结构. .

### 函数

- [compose-function](https://github.com/stoeffel/compose-function)从较小的函数组成一个新函数`f(g(x))`.
- [curry](https://github.com/dominictarr/curry) - 荷里化函数,没有任何太聪明.
- [once](https://github.com/isaacs/once)-一次运行一个函数.
- [deep-bind](https://github.com/jonschlinkert/deep-bind)-将上下文绑定到对象中的所有函数,包括深度嵌套的函数.
- [identity-function](https://github.com/substack/identity-function)-始终返回输入参数.
- [mem](https://github.com/sindresorhus/mem)一种优化技术,用于通过缓存具有相同输入的调用的结果, 来加速连续函数调用.
- [throttle-debounce](https://github.com/niksy/throttle-debounce)-Throttle/debounce你的函数.

### 数学

- [is-number](https://github.com/jonschlinkert/is-number) - 返回`true`,如果值是一个数字.

### 数据流-Stream

- [through2](https://github.com/rvagg/through2)-围绕node 的 streams2的小包装,以避免明显的子类噪声.
- [through2-filter](https://github.com/brycebaril/through2-filter)一个用于through2的类`Array.prototype.filter`作用函数.
- [through2-map](https://github.com/brycebaril/through2-map)一个用于through2的类`Array.prototype.map`作用函数.
- [stream-spigot](https://github.com/brycebaril/node-stream-spigot)-一种可读的流生成器,用于测试或将 简单函数 转换成可读的流.
- [concat-stream](https://github.com/maxogden/concat-stream)可写流,它连接字符串或数据,并调用结果的回调.
- [JSONStream](https://github.com/dominictarr/JSONStream)流式的 JSON解析和字符串化
- [through2-map-promise](https://github.com/RangerMauve/through2-map-promise)-一个小的基于Promise的through2包装器.
- [pump](https://github.com/mafintosh/pump) 管道流动在一起,如果它们中的一个关闭,就关闭所有的管道.
- [split](https://github.com/dominictarr/split)-分解一个流并重新组装它,那每一行都是块.
- [is-stream](https://github.com/sindresorhus/is-stream) - 检查是否是Node.js流.
- [syncthrough](https://github.com/mcollina/syncthrough)- 同步传递数据.

### Promise

- [pify](https://github.com/sindresorhus/pify)-转换回调样式到Promise样式函数.
- [promise-all-props](https://github.com/Siilwyn/promise-all-props)似`Promise.all`但,适用于对象属性.
- [sleep-promise](https://github.com/brummelte/sleep-promise) - 等待一定时间,再 解决Promise.
- [is-promise](https://github.com/then/is-promise)-测试一个对象是否像promises-a+ promise.

### 文件系统

- [rimraf](https://github.com/isaacs/rimraf)-Node的深度删除模块 (如`rm -rf`) .
- [mkdirp](https://github.com/substack/node-mkdirp)-递归 mkdir,如 mkdir -p.
- [du](https://github.com/rvagg/node-du) du -sb 的一个简单的JavaScript实现.
- [file-size](https://github.com/Nijikokun/file-size)- 用于转换,操作和处理文件大小值.
- [tmp](https://github.com/raszi/node-tmp)-用于Node.js的临时文件和目录生成器.
- [fs-promise](https://github.com/kevinbeaty/fs-promise)-Node fs方法搭配 Promise/A+ (可选 fs-extra, graceful-fs) .

### 浏览器

- [delegate](https://github.com/zenorocha/delegate)-轻量级事件委派.
- [insert-css](https://github.com/substack/insert-css)-将一组CSS插入头部
- [dom-element-value](https://github.com/crysalead-js/dom-element-value)- DOM元素值 get器/set器.
- [image-promise](https://github.com/bfred-it/image-promise)在`Promise`中,加载一个或多个``.
- [get-media-size](https://github.com/bfred-it/get-media-size)-获得原始尺寸, 可以是任何`img`/`video`/`svg`/`canvas`标签或 canvas上下文.
- [document-ready](https://github.com/bendrucker/document-ready)-为现代浏览器准备 好document ready 监听器.
- [copee](https://github.com/styfle/copee)-从浏览器复制文本到剪贴板 ... 原生!

### Semver

- [semver](https://github.com/npm/node-semver)- NPM使用的语义版本解析器.
- [semver-max](https://github.com/eush77/semver-max)-根据semver查找最大 (或最小) 版本.
- [semver-first-satisfied](https://github.com/parro-it/semver-first-satisfied)-在满足semver范围的版本数组中找到最小值.

### CLI

- [abbrev](https://github.com/isaacs/abbrev-js)-计算给定字符串集的唯一缩写的集合.
- [glob](https://github.com/isaacs/node-glob)-用于Node.js的glob函数.
- [username](https://github.com/sindresorhus/username)-获取当前用户的用户名.
- [minimist](https://github.com/substack/minimist) 解析参数选项.
- [png-to-ico](https://github.com/steambap/png-to-ico)-将PNG转换为Windows ICO格式.
- [help-version](https://github.com/eush77/help-version)-轻松处理CLI应用程序中的 --help 和 --version 参数

### 模块管理

- [pkg-conf](https://github.com/sindresorhus/pkg-conf)从最近的包中,获取命名空间配置.
- [normalize-pkg](https://github.com/jonschlinkert/normalize-pkg)-规范package.json中的值,以提高兼容性,编程可读性和使用第三方库的实用性.

### Generators

- [is-generator](https://github.com/blakeembrey/is-generator)-检查输入值是否是发电机函数.

### 其他

- [uuid](https://github.com/kelektiv/node-uuid)-在JavaScript中生成符合RFC的UUID.
- [node-mime](https://github.com/broofa/node-mime)-基于 mime-db 模块的综合MIME类型映射API.
- [not-defined](https://github.com/fibo/not-defined)-检查 输出 是否未定义,即undefined, null, 空的 string, array or object.
- [is-fqdn](https://github.com/parro-it/is-fqdn)-检查字符串是否表示全限定的域名.

## 相关列表

本节包含了一些有用的列表,如果您使用或编写小npm模块,您可能会发现它们是有用的.

- [awesome-nodejs](https://github.com/sindresorhus/awesome-nodejs)一个愉快的Node.js包和资源的精选列表.
- [awesome-npm](https://github.com/sindresorhus/awesome-npm)-真棒的npm资源和提示.

## 小模块摇滚明星

这些人开发 awesome的NPM模块,遵循单一的责任理念. 跟随他们去发现新的伟大的模块:

| [![Sindre Sorhus](https://avatars.githubusercontent.com/u/170270?s=130)](https://github.com/sindresorhus) | [![James Halliday](https://avatars1.githubusercontent.com/u/12631?s=130)](https://github.com/substack) | [![Eugene Sharygin](https://avatars3.githubusercontent.com/u/4472489?s=130)](https://github.com/eush77) | [![Isaac Z. Schlueter](https://avatars3.githubusercontent.com/u/9287?s=130)](https://github.com/isaacs) | [![Jon Schlinkert](https://avatars1.githubusercontent.com/u/383994?s=130)](https://github.com/jonschlinkert) | [![Dominic Tarr](https://avatars3.githubusercontent.com/u/259374?s=130)](https://github.com/dominictarr) |
| --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------- |
| [Sindre Sorhus](https://github.com/sindresorhus) | [James Halliday](https://github.com/substack) | [Eugene Sharygin](https://github.com/eush77) | [Isaac Z. Schlueter](https://github.com/isaacs) | [Jon Schlinkert](https://github.com/jonschlinkert) | [Dominic Tarr](https://github.com/dominictarr) |

| [![Rod Vagg](https://avatars0.githubusercontent.com/u/495647?s=130)](https://github.com/rvagg) | [![Max Ogden](https://avatars3.githubusercontent.com/u/39759?s=130)](https://github.com/maxogden) | [![Brian Woodward](https://avatars1.githubusercontent.com/u/995160?s=130)](https://github.com/doowb) |
| ---------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| [Rod Vagg](https://github.com/rvagg) | [Max Ogden](https://github.com/maxogden) | [Brian Woodward](https://github.com/doowb) |

## 贡献

欢迎! 阅读[贡献 指南](https://github.com/parro-it/awesome-micro-npm-packages/blob/master/contributing.md).

## 许可证

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

在法律允许的范围内,[Andrea Parodi](https://github.com/parro-it)已放弃所有著作权及相关或相邻权利.