很棒的JavaScript
包管理员
装载机
Bundlers
测试框架
QA工具
MVC框架和库
节点支持的CMS框架
模板引擎
文章/帖子
数据可视化
时间轴
电子表格
编辑
文档
实用程序
文件
功能编程
反应式编程
数据结构
日期
String
号码
存储
颜色
I18n和L10n
控制流程
路由
安全
日志
RegExp
媒体
语音命令
API
流媒体
视觉检测
浏览器检测
基准
机器学习
用户界面
代码突出显示
加载状态
验证
键盘包装
旅游和导游
通知
滑块
Range Sliders
表单小部件
输入
日历
选择
文件上传
其他表单元素
提示
模态和弹出窗口
滚动
菜单
表格/网格
框架
Boilerplates
手势
地图
排版
动画
图像处理
ES6
SDK
其他
播客
值得一读
其他令人敬畏的名单
贡献
包管理员
托管javascript库并提供用于获取和打包它们的工具。
npm - npm是javascript的包管理器。
Bower - 网络的包管理器。
component - 用于构建更好的Web应用程序的客户端软件包管理。
spm - 全新的静态包管理器。
jam - 使用以浏览器为中心且与RequireJS兼容的存储库的包管理器。
jspm - 无摩擦浏览器包管理。
Ender - 无库库。
volo - 从模板创建前端项目,添加依赖项并自动生成项目。
Duo - 下一代软件包管理器,它融合了Component,Browserify和Go的最佳创意,使组织和编写前端代码快速轻松。
yarn - 快速,可靠,安全的依赖管理。
装载机
JavaScript的模块或加载系统。*
RequireJS - JavaScript的文件和模块加载器。
browserify - 浏览器端require node.js方式。
SeaJS - Web的模块加载器。
HeadJS - HEAD中唯一的脚本。
curl - 一个小型,快速,可扩展的模块加载器,可处理AMD,CommonJS模块/ 1.1,CSS,HTML /文本和旧脚本。
lazyload - 微小的,无依赖的异步JavaScript和CSS加载器。
script.js - Asyncronous JavaScript加载程序和依赖项管理器。
systemjs - 符合AMD,CJS和ES6规范的模块加载器。
LodJS - 基于AMD的模块加载器
ESL - 首先是模块加载器浏览器,支持懒惰定义和AMD。
modulejs - 轻量级JavaScript模块系统。
Bundlers
browserify - Browserify允许您通过捆绑所有依赖项来在浏览器中。
webpack - 为浏览器打包CommonJs / AMD模块。
Rollup - 下一代ES6模块捆绑器。
早午餐 - 具有简单声明性配置的快速前端Web应用程序构建工具。
Parcel - 快速,零配置的Web应用程序捆绑器。
测试框架
构架
mocha - node.js和浏览器的简单,灵活,有趣的javascript测试框架。
jasmine - 无DOM的简单JavaScript测试框架。
qunit - 一个易于使用的JavaScript单元测试框架。
jest - 无痛的Javascript单元测试。
prova - 基于Tape和Browserify的节点和浏览器测试运行器
DalekJS - 使用JavaScript进行自动跨浏览器功能测试
Protractor - Protractor是AngularJS应用程序的端到端测试框架。
tape - 为节点和浏览器生成测试工具。
TestCafe - 针对现代Web开发堆栈的自动浏览器测试。
ava - 未来的JavaScript测试运行器
断言
chai - node.js的BDD / TDD断言框架以及可与任何测试框架配对的浏览器。
Enzyme - Enzyme是React的JavaScript测试实用程序,可以更轻松地断言,操作和遍历React Components的输出。
反应测试库 - 简单而完整的React DOM测试实用程序,鼓励良好的测试实践。
Sinon.JS - 测试JavaScript的间谍,存根和模拟。
expect.js - Node.JS和浏览器的简约BDD风格断言。
覆盖范围
istanbul - 又一个JS代码覆盖工具。
blanket - 一个简单的javascript代码覆盖库。浏览器和nodejs易于安装和使用。
JSCover - JSCover是一个测量JavaScript程序代码覆盖率的工具。
Runner
phantomjs - Scriptable Headless WebKit。
slimerjs - 一个运行Gecko的类似PhantomJS的工具。
casperjs - PhantomJS和SlimerJS的导航脚本和测试实用程序。
zombie - 使用node.js进行疯狂快速,全栈,无头浏览器测试。
totoro - 一个简单而稳定的跨浏览器测试工具。
业力 - 用于JavaScript的壮观测试赛跑者。
nightwatch - 基于node.js和selenium webdriver的UI自动化测试框架。
intern - 用于JavaScript的下一代代码测试堆栈。
yolpo - 浏览器中的声明语句javascript解释器。
QA工具
更漂亮 - Prettier是一个自以为是的代码格式化程序。
JSHint - JSHint是一个有助于检测JavaScript代码中的错误和潜在问题的工具。
jscs - JavaScript代码样式检查器。
jsfmt - 用于格式化,搜索和重写JavaScript。
jsinspect - 检测复制粘贴和结构相似的代码。
buddy.js - JavaScript的幻数检测。
ESLint - 一个完全可插入的工具,用于识别和报告JavaScript中的模式。
JSLint - 高标准,严格和固定的代码质量工具,旨在保持语言的优秀部分。
JavaScript标准风格 - 意见,无配置风格指南,样式检查器和格式化程序
MVC框架和库
angular.js - 针对网络应用增强的HTML。
aurelia - 适用于移动,桌面和网络的Javascript客户端框架。
backbone - 为您的JS应用程序提供模型,视图,集合和事件的一些骨干。
ember.js - 用于创建雄心勃勃的Web应用程序的JavaScript框架。
meteor - 一个超简单,数据库无处不在的数据线上纯Javascript Web框架。
ractive - 下一代DOM操作。
vue - 用于构建交互式界面的直观,快速和可组合的MVVM。
knockout - Knockout可以更轻松地使用JavaScript创建丰富的响应式UI。
spine - 用于构建JavaScript应用程序的轻量级MVC库。
espresso.js - 用于制作用户界面的最小javascript库。
canjs - 可以做JS,更好,更快,更容易。
react - 用于构建用户界面的库。它具有声明性,高效性和极其灵活性。适用于虚拟DOM。
hyperapp - 用于构建前端应用程序的1kb JavaScript库。
preact - 使用相同的ES6 API快速3kb React替代方案。组件和虚拟DOM。
nativescript - 使用JavaScript构建真正的原生跨平台iOS和Android应用程序
react-native - 使用React构建本机应用程序的框架。
riot - 类似React的库,但尺寸非常小。
thorax - 加强你的骨干。
chaplin - 使用Backbone.js库的JavaScript应用程序架构。
marionette - Backbone.js的复合应用程序库,旨在简化大型JavaScript应用程序的构建。
ripple - 构建反应式视图的小基础。
rivets - 轻量级和强大的数据绑定+模板解决方案。
derby - MVC框架可以轻松编写在Node.js和浏览器中运行的实时协作应用程序。
derby-awesome - 一系列精彩的德比组件
way.js - 简单,轻量,持久的双向数据绑定。
mithril.js - Mithril是一个客户端MVC框架。
jsblocks - jsblocks是更好的MV-ish框架。
LiquidLava - 用于构建用户界面的透明MVC框架。
feathers - 面向未来应用的极简主义实时JavaScript框架。
Keo - 具有Shadow DOM支持的功能无状态React组件。
atvjs - 使用纯JavaScript快速开发Apple TV应用程序。
基于节点的CMS框架
KeystoneJS - 功能强大的CMS和Web应用程序框架
Reaction Commerce - 反应式CMS,实时架构和设计
Ghost - 简单,强大的发布平台
撇号 - 具有内容编辑和基本服务的CMS
We.js - 实时应用,网站或博客的框架
Hatch.js - 具有社交功能的CMS平台。
TaracotJS - 基于Node.js的快速简约CMS。
Nodizecms - 针对CoffeeScript爱好者的CMS
Cody - 带WSYWYG编辑器的CMS
PencilBlue - CMS和博客平台
模板引擎
模板引擎允许您执行字符串插值。
mustache.js - JavaScript中{{mustaches}}的最小模板。
handlebars.js - Mustache模板语言的扩展。
hogan.js - Mustache模板语言的编译器。
doT - nodejs和浏览器的最快+简洁的javascript模板引擎。
dustjs - 浏览器和node.js的异步模板。
eco - 嵌入式CoffeeScript模板。
JavaScript-Templates - <1KB轻量级,快速且功能强大的JavaScript模板引擎,具有零依赖性。
t.js - 一个小的javascript模板框架,约400字节gzip压缩。
Pug - 用于nodejs的强大,优雅,功能丰富的模板引擎。以前称为玉
EJS - 有效的JavaScript模板。
xtemplate - 节点和浏览器的可扩展模板引擎库
marko - 一个快速,轻量级,基于HTML的模板引擎,用于Node.js和浏览器,具有异步,流,自定义标签和CommonJS模块作为编译输出。
swig - 一个简单,功能强大且可扩展的Node.js和基于浏览器的JavaScript模板引擎。
文章和帖子
你应该知道的JavaScript - 关于JavaScript Functional概念的文章。
JavaScript如何工作 - 一系列关于JavaScript构建块的文章。
数据可视化
网络数据可视化工具。
d3 - 用于HTML和SVG的JavaScript可视化库。
metrics-graphics - 针对简洁,有原则的数据图形和布局进行优化的库。
pykcharts.js - 精心设计的d3.js图表,没有d3.js的复杂性。
three.js - JavaScript 3D库。
Chart.js - 使用
paper.js - 瑞士军刀矢量图形脚本 - 使用HTML5 Canvas移植到JavaScript和浏览器的Scriptographer。
fabric.js - Javascript Canvas Library,&canvas-to-SVGParser。
peity - 渐进式
raphael - JavaScript矢量库。
echarts - 企业图表。
vis - 基于浏览器的动态可视化库。
two.js - 用于网络的渲染器不可知的二维绘图api。
g.raphael - Raphaël的图表。
sigma.js - 专用于图形绘制的JavaScript库。
arbor - 使用web worker和jQuery的图形可视化库。
立体主义 - 用于可视化时间序列的D3插件。
dc.js - 多维图表构建,可与使用d3.js渲染的交叉过滤器本机工作
vega - 可视化语法。
processing.js - Processing.js使您的数据可视化工作使用Web标准并且没有任何插件
envisionjs - 动态HTML5可视化。
rickshaw - 用于创建交互式实时图的JavaScript工具包。
flot - jQuery的迷人JavaScript图表。
morris.js - 漂亮的时间序列线图。
nvd3 - 为d3.js构建可重复使用的图表和图表组件
svg.js - 一个用于操作和动画SVG的轻量级库。
heatmap.js - 基于HTML5画布的热图的JavaScript库。
jquery.sparkline - jQuery javascript库的插件,可直接在浏览器中生成小的迷你图表。
xCharts - 基于D3的库,用于构建自定义图表和图形。
trianglify - 带有d3.js的低聚风格背景生成器
d3-cloud - 在JavaScript中创建单词云。
d4 - D3的友好可重复使用的DSL图表。
dimple.js - 由d3支持的简单商业分析图表
chartist-js - 简单的响应式图表。
epoch - 通用实时图表库。
c3 - 基于D3的可重用图表库。
BabylonJS - 使用HTML 5和WebGL构建3D游戏的框架。
recharts - 使用React和D3构建的重新定义的图表库
GraphicsJS - 一个轻量级JavaScript图形库,具有基于SVG / VML技术的直观API。
时间轴
TimelineJS v3 - 用JavaScript构建的讲故事时间轴。
timesheet.js - 简单HTML5和CSS3时间表的JavaScript库。
电子表格
HANDSONTABLE - Handsontable是面向开发人员的JavaScript / HTML5电子表格库
编辑器
ace - Ace (Ajax.org Cloud9编辑器)
CodeMirror - 浏览器内代码编辑器。
esprima - 用于多功能分析的ECMAScript解析基础设施。
quill - 带有API的跨浏览器的富文本编辑器。
中编辑 - Medium.com WYSIWYG编辑器克隆。
pen - 享受实时编辑+降价。
jquery-notebook - 一个简单,干净,优雅的文本编辑器。灵感来自Medium的精彩。
bootstrap-wysiwyg - 与Tiny bootstrap兼容的WYSIWYG富文本编辑器。
ckeditor-releases - 适合所有人的最佳网络文本编辑器。
编辑 - 降价编辑器。还在发展中。
EpicEditor - 一个可嵌入的JavaScript Markdown编辑器,具有分屏全屏编辑,实时预览,自动草稿保存,离线支持等功能。
jsoneditor - 一个基于Web的工具,用于查看,编辑和格式化JSON。
vim.js - 带有持久性〜/ .vimrc的Vim的JavaScript端口
Squire - HTML5富文本编辑器。
TinyMCE - JavaScript Rich Text编辑器。
trix - 用于日常写作的富文本编辑器。通过Basecamp。
Trumbowyg - 一个轻量级且令人惊叹的WYSIWYG JavaScript编辑器。
Draft.js - 用于构建文本编辑器的React框架。
bootstrap-wysihtml5 - 简单,美观的所见即所得编辑器
wysihtml5 - 基于HTML5的开源富文本编辑器和渐进增强方法。使用复杂的安全性概念,旨在通过防止不可维护的标记汤和内联样式生成完全有效的HTML5标记。
raptor-editor - Raptor,HTML5 WYSIWYG内容编辑器!
popline - Popline是一个HTML5富文本编辑器工具栏
文档
DevDocs是一个一体化的API文档阅读器,具有快速,有条理和一致的界面。
dexy是一种自由形式的文化文档工具,用于编写包含代码的任何类型的技术文档。
docco是一个快速,肮脏,百行长,识字编程风格的文档生成器。
styledocco从样式表中生成文档和样式指南文档。
Ronn制作手册。它将简单的,人类可读的文本文件转换为roff用于终端显示,也转换为HTML用于Web。
dox是一个用节点编写的JavaScript文档生成器。Dox不再为您的文档生成固定的结构或样式,它只是为您提供JSON表示,允许您使用markdown和JSDoc样式的标记。
jsdox是一个JSDoc3到Markdown文档生成器。
ESDoc是一个很好的JavaScript文档生成器。
YUIDoc是一个Node.js应用程序,它使用类似于Javadoc和Doxygen等工具的语法,从源代码中的注释生成API文档。
coddoc是一个jsdoc解析库。Coddoc的不同之处在于它允许用户通过使用coddoc.addTagHandler和coddoc.addCodeHandler添加标记和代码解析器,从而可以轻松扩展。coddoc还解析了在API中使用的源代码。
sphinx一种工具,可以轻松创建智能和漂亮的文档
使用JSDoc
Beautiful docs是一个基于markdown文件的文档查看器。
documentation.js - API文档生成器,支持ES2015 +和流程注释。
jsduck - 为Sencha JavaScript框架制作的API文档生成器,但也可用于其他框架。
文件
用于处理文件的库。
Papa Parse - 一个功能强大的CSV库,支持解析CSV文件/字符串并导出为CSV。
jBinary - 加载,解析,操作,序列化,保存 具有声明性语法的二进制文件的高级I / O,用于描述文件类型和数据结构。
diff2html - Git diff输出解析器和漂亮的HTML生成器。
jsPDF - JavaScript PDF生成。
功能编程
功能编程库,以扩展JavaScript的功能。
下划线 - JavaScript的实用工具_腰带。
lodash - 提供一致性,自定义,性能和附加功能的实用程序库。
Sugar - 一个用于处理本机对象的Javascript库。
lazy.js - 像下划线,但更懒。
ramda - 一个实用的Javascript程序员函数库。
mout - 模块化JavaScript实用程序。
mesh - 可流式数据同步实用程序。
preludejs - JavaScript的硬核功能编程。
反应式编程
反应式编程库,以扩展JavaScript的功能。
RxJs - JavaScript的Reactive Extensions。
培根 - 功能反应式编程 用于Javascript的FRP库。
Kefir - 受Bacon.js和RxJS启发的JavaScript FRP库,专注于高性能和低内存消耗。
Highland - 重新思考JavaScript实用程序带,Highland轻松管理同步和异步代码,仅使用标准JavaScript和类似Node的Streams。
Most.js - 高性能FRP库。
MobX - 用于简单,可扩展状态管理的TFRP库。
Cycle.js - 一个功能强大且反应灵敏的JavaScript库,用于更清晰的代码。
数据结构
数据结构库,以构建更复杂的应用程序。
immutable-js - 不可变数据集合,包括序列,范围,重复,映射,OrderedMap,Set和稀疏向量。
mori - 一个库,用于使用ClojureScript的持久数据结构,并从舒适的vanilla JavaScript中支持API。
buckets - 一个用JavaScript编写的完整,经过全面测试和记录的数据结构库。
hashmap - 支持任何类型密钥的简单hashmap实现。
日期
日期图书馆。
时刻 - 在javascript中解析,验证,操纵和显示日期。
moment-timezone - 对moment.js的时区支持。
jquery-timeago - 例如“4分钟前”"一个jQuery插件,可以轻松支持自动更新模糊时间戳。
timezone-js - 启用时区的JavaScript Date对象。使用Olson zoneinfo文件获取时区数据。
日期 - 人类的日期。
ms.js - 微小的毫秒转换实用程序。
countdown.js - 超级简单的倒计时。
timeago.js - 小于2kb 简单的库用于使用*** time ago语句格式化日期。
fecha - ~2KB 轻量级日期格式化和解析。意味着要替换moment.js的解析和格式化功能。
date-fns - 现代JavaScript日期实用程序库。
String
字符串库。
voca - 终极JavaScript字符串库
选择 - 一个允许您访问用户选择的文本的库
underscore.string - Underscore.js javascript库的字符串操作扩展。
string.js - 额外的JavaScript字符串方法。
he - 用JavaScript编写的强大的HTML实体编码器/解码器。
multiline - JavaScript中的多行字符串。
query-string - 解析和字符串化URL查询字符串。
URI.js - Javascript URL变异库。
jsurl - 使用JavaScript轻量级URL操作。
sprintf.js - sprintf实现。
url-pattern - 比网址和其他字符串的正则表达式字符串匹配模式更容易。将字符串转换为数据或数据为字符串
数字
Numeral-js - 用于格式化和操作数字的JavaScript库。
chance.js - Javascript中的随机生成器助手。可以生成数字,字符串等。
里程表 - 轻松过渡数字。
accounting.js - 用于数字,货币和货币格式的轻量级JavaScript库 - 完全可本地化,零依赖性。
money.js -1kb 一个小的javascript货币转换库,用于web和nodeJS。
Fraction.js - JavaScript的有理数字库
Complex.js - 一个用于JavaScript的复数库
Polynomial.js - JavaScript的多项式库
存储
store.js - 所有浏览器的LocalStorage包装器,不使用cookie或flash。使用localStorage,globalStorage和userData行为。
localForage - 离线存储,改进。使用简单但功能强大的API包装IndexedDB,WebSQL或localStorage。
jStorage - jStorage是一个简单的键/值数据库,用于在浏览器端存储数据。
cross-storage - 具有权限的跨域本地存储。
basket.js - 用于使用localStorage缓存和加载脚本的脚本和资源加载器。
bag.js - 缓存脚本和资源加载器,类似于basket.js,但具有额外的k / v接口和localStorage / websql / indexedDB支持。
basil.js - 缺少Javascript智能持久层。
jquery-cookie - 一个简单,轻量级的jQuery插件,用于读取,写入和删除cookie。
js-cookie - 一个简单,轻量级的JavaScript API,用于处理浏览器cookie
Cookies - JavaScript客户端Cookie操作库。
DB.js - 基于Promise的IndexDB Wrapper库
lawnchair.js - 简单的客户端JSON存储。
sql.js - 通过Emscripten编译为JavaScript的SQLite。
颜色
randomColor - JavaScript的颜色生成器。
chroma.js - 用于各种颜色操作的JavaScript库。
color - JavaScript颜色转换和操作库。
colors - 更智能的网络颜色默认值。
PleaseJS - 用于创建随机赏心悦目的颜色和配色方案的JavaScript库。
TinyColor - 快速,小巧的颜色处理和JavaScript转换。
Vibrant.js - 从图像中提取突出的颜色。
I18n和L10n
本地化l10n和国际化i18n JavaScript库。
i18next - 国际化与javascript的简单方法。
polyglot - 微小的i18n助手库。
babelfish - i18n具有人性化的API并内置复数支持。