新手上路
2小时前
主楼
平台与语言
开放式网络平台
- 学习
- 什么是互联网 , 互联网是如何工作的
- HTTP - 参考 服务器端 > 网络
- Web 的演进
- 网络浏览器的演变时间线
- 深入 HTML5 - 一个相当有偏见的 HTML5 历史
- 关于浏览器和网络的 20 件事
- MDN 的学习 Web 开发
- 参考
- MDN Web 文档
- HTML , SVG, CSS, DOM, DOM 事件, Web API
- MDN 内容路线图
- Google Developers
- Web Fundamentals , 更新, HTML5Rocks 存档教程
- Apple
- WebKit JS
- CSSDB
- CSS-Tricks 的 CSS Almanac , Codrops' CSS Reference
- 掌握 CSS 原则:综合指南
- Living Standard (Web Developer Edition)
- Web platform: Browser technologies
- W3Fools
- W3Schools Responds to W3Fools
- 为什么不应该使用 W3Schools? , 为什么人们讨厌 W3Schools?, W3Schools 真的那么糟糕吗?
- 视觉工具
- 查看 工具 > 实用应用 > 视觉工具
- 性能
- 渲染
- 浏览器工作原理:现代浏览器的幕后故事 , 浏览器如何布局网页
- 渲染性能
- GPU 动画:正确实现 / 使用 CSS 动画进行硬件加速入门
- CSS will-change
- 关于 CSS will-change 属性的一切你需要知道的
- Chrome 52 中的 CSS 封装
- 加载中
- DNS 工作原理
- 网络弹性
- 脚本加载的演变 , 浏览器脚本加载总结
- JavaScript 启动性能
- 关键渲染路径 ,
- 离线
- 查看 HTML5 / Web APIs > 离线
- 测量
- 性能预算 101
- 使用 RAIL 模型测量性能
- 使用导航时间 API 测量页面加载速度
- 使用资源时间 API 测量网络性能
- 用户时间 API
- 为什么 Web 开发者需要关注交互性
- requestIdleCallback
- PerformanceObserver
- 优化
- 快速加载时间
- 为什么性能很重要
- 性能审核
- Lighthouse 审核参考
- 安全性
- 安全可靠
- The Tangled Web: A Guide to Securing Modern Web Applications
- HTML5 Security Cheatsheet
- 语义化
- SEO
- 让我们谈谈语义
- 易于发现
- SEO 审计
- SEO 教程入门 , Google 的搜索引擎优化入门指南
- 可访问性
- 面向所有人
- 无障碍项目 ,使用 ARIA
HTML5 / Web APIs
- HTML / DOM
- 你可能不需要 jQuery ,
- HEAD
- favicon
- 表单伪元素
- 原生表单元素
- 使用 Mutation Observers 检测 DOM 变化
- 外观
- Web Components
- Shadow DOM v1 , Custom Elements v1
- Web Animations
- Web Animation Past, Present, and Future
- 让我们谈谈 Web Animations API
- 状态 - 我们支持动画了吗?
- 交互
- 桌面
- MouseEvent , WheelEvent, KeyboardEvent
- Drag and Drop , Pointer Lock
- Mobile
- TouchEvent
- 300 毫秒点击延迟已移除 , iOS 上更灵敏的点击
- DeviceOrientationEvent + DeviceMotionEvent
- 硬件无关
- PointerEvent , Selection
- Intersection Observer API (Intro)
- Resize Observer API
- Gamepad , Web Speech
- 访问
- URL , History, Navigator, Screen, Page Visibility, Clipboard, Performance, Console
- Permissions , Geolocation
- Web Notifications , Vibration
- Network
- XMLHttpRequest2
- Fetch
- Abortable Fetch
- Why I won’t be using Fetch API in my apps
- WebSocket , Server-sent Event
- WebRTC
- Getting Started with WebRTC
- WebRTC in the real world: STUN, TURN and signaling
- WebRTC 数据通道
- 工作坊 - Codelabs - 使用 WebRTC 进行实时通信
- 离线
- 概述
- 离线用户体验考虑
- 离线食谱
- 离线优先 - 用于更快、更智能、更具吸引力的网络的 HTML5 技术
- Web 存储 , IndexedDB
- FileReader , File, Blob
- Service Worker
- Service Workers Explained
- Service Workers: an Introduction , The Service Worker Lifecycle
- 使用应用外壳架构即时加载 Web 应用
- Service Worker Cookbook
- 状态 - ServiceWorker 是否准备就绪?
- 渐进式 Web 应用
- 渐进式网络应用清单 , PWA 审计
- 渐进式网络应用的离线存储
- PRPL 模式
- 工作坊 - Codelabs - 你的第一个渐进式网络应用
- 媒体
- 视频 , 音频
- Web Audio API
- Web Audio API 书籍
- 工作坊 - Web Audio School
- Media Streams
- 在 HTML5 中捕获音频和视频
- 图形
- SVG
- 使用 CSS 样式和动画 SVG
- Canvas
- HTML5 Canvas
- WebGL
- WebGL by example , WebGL tutorial, Learning WebGL
- Primer: Shaders , An Introduction to Shaders
- The Book of Shaders
- 工作坊 -Shader School , WebGL Workshop, WebGL Academy
- Learning Modern 3D Graphics Programming
- WebXR / 沉浸式网络
- 欢迎来到沉浸式网络
- Progressive WebXR
- 计算
- Web Cryptography
- Web Workers
- WebAssembly
- 查看 WebAssembly
CSS 功能
- 基础
- 你不需要 JavaScript
- 从 CSS4 到 CSS1 的 CSS 选择器
- CSS Diner - 我们在 CSS 选择器上大快朵颐!
- 关于 CSS 伪类和伪元素的终极指南
- @supports 规则(特性查询)
- Houdini
- Houdini: 揭秘 CSS , Houdini: 可能是你从未听说过的最令人兴奋的 CSS 发展
- 响应式网页设计
- 媒体查询
- 标准设备的媒体查询
- 图片
- 响应式图片 , CSS 中的响应式图片
- 单位
- 字体大小建议:根目录使用 px,组件使用 rem,文本元素使用 em ,理解和使用 CSS 中的 rem 单位
- 使用 vh 和 vw 单位实现真正流畅的排版
- 布局
- Flexbox, CSS Grid Layout
- CSS Grid, Flexbox 和盒模型对齐:我们新的网页布局系统
- Flexbox 完全指南 (CSS-Tricks) / Flexbox (Codrops)
- 今天使用 Flexbox
- Flexbox 解决方案 , Flexbox 模式
- 使用 Flexbox 居中元素
- 使用 Flexbox 进行数量查询
- Grid 完全指南 (CSS-Tricks) / CSS Grid 完全指南 (Codrops)
- 传统
- 学习 CSS 布局
- 以严谨的方式学习 CSS 布局
- CSS 浮动基础 , 关于浮动的所有内容, CSS 浮动理论:你应该知道的事情
- CSS 定位基础
- CSS “position: sticky”——介绍和 Polyfills
- Z-Index CSS 属性:全面解析
- CSS 中的居中:完整指南 , 绝对居中一个图像, 如何在 CSS 中居中
- 网页排版
- 使用@font-face
- 字体加载策略的全面指南
- 文本
- 处理长单词和 URL
- writing-mode + text-orientation
- 动画
- CSS 过渡效果
- 使用 CSS 过渡效果
- CSS 3D 变换简介
- CSS 动画
- 《CSS 动画指南:原理和实例》
- 使用运动曲线升级 CSS 动画
- 运动路径
- 在 SVG 中动画剪切元素
- 在 CSS 中沿曲线路径进行分层动画
- 未来使用:CSS 运动路径
- 效果
- CSS 图像效果
- Web 图像效果性能对比
- CSS 混合模式的入门
- CSS 混合模式可能是网页设计中的下一个大趋势
- 理解 CSS 过滤效果
- CSS 中的裁剪和遮罩
- CSS 反射的状态
- CSS 形状入门
现代 CSS / 下一代 CSS
- 基于组件的 CSS
- 工具类 / 功能型 CSS / 工具优先 CSS / 原子 CSS
- 原子 CSS 的案例 / 工具优先 CSS 的案例
- CSS 工具类和 "关注点分离"
- 一年份实用类
- 你需要一个 CSS 实用库吗?
- 查看 UI 工具包
- CSS 模块
- 全局 CSS 的终结
- 工具 - 查看 工具 > 工具链 > 构建 / 打包 > Webpack
- Styled-Components / Emotion
- CSS in JS
- 一种统一的样式语言
- CSS-in-JS 的简史:我们是如何到达这里的以及我们将要去哪里 , CSS 的现状
- CSS-in-JS 解决方案的比较
- Styled Components:在基于组件的系统中强制执行最佳实践
- 在 JS 中编写样式 ≠ 编写内联样式
- 库
- styled-system , system-components, grid-styled
- styled-normalize / styled-sanitize
- styled-components-breakpoint
- styled-tools
- 基于预处理器 CSS
- PostCSS
- 简介
- 认识 PostCSS
- PostCSS – 全面介绍
- PostCSS – Sass 终结者还是预处理伪装者?
- PostCSS Playground
- Preset Env
- It’s Time To Start Using CSS Custom Properties
- Getting Started With CSS calc()
- 更多插件 - 查看 工具 > 工具链 > 编译器 / 转译器 / 预处理器 > PostCSS
- 最佳实践
- Sanitize.css / Normalize.css / Reset.css
- 方法论
- BEM
- BEM 101 / MindBEMding
- OOCSS
- 面向对象 CSS(OOCSS)简介
- SMACSS
- ITCSS , RSCSS, SOLID CSS
- CSS Guidelines , MaintainableCSS
- 代码风格
- Idiomatic CSS
- Airbnb CSS / Sass Styleguide
- Airbnb CSS-in-JavaScript Style Guide
- CSS + HTML
- Isobar 前端代码规范
- mdo 编程指南
- 了解更多关于网页设计 / UI 设计 / UX 设计
- 响应式/自适应网页设计
- 响应式网页设计基础 /
- 响应式设计与自适应设计的区别
- 自适应设计的现状
- Responsive design.is - Design , Develop
- Patterns
- Responsive Web Design Patterns , Responsive Patterns, ResponsiveDesign.is 模式
- 响应式数据表格汇总
- 运动设计
- 通过运动创造可用性:运动中的用户体验宣言
- 10 条让网页动画流畅的原则
- 网格系统 - 全面了解网页设计中的网格
- calc() 网格系统 - Lost Grid
- flexbox 网格系统 - Flexbox Grid
- 8 点网格
- 字体排印
- Typography.js
- Gutenberg
- 完美的段落等边三角形
- 应用于网络的版式设计元素
- 为什么垂直节奏是重要的版式实践?
- 具有垂直节奏的 CSS
- 更有意义的排版
- 模块化比例尺
- 原子设计 (书籍)
- 原子工作流程——人员、流程和实现设计系统
- “其他”界面:使用 Sass 的原子设计
- 原子设计 – 可扩展和模块化 CSS(Sass)的终极指南
- 设计系统
- 设计系统的全面指南 , 设计系统手册
- 设计令牌
- 设计系统中的令牌
- 如何使用 Style Dictionary 管理设计令牌
- 什么是设计令牌?
- 风格指南
- 风格指南驱动开发 / 活泼风格指南
- 工具 - 请参阅 工具 > 文档 > 风格指南
- 示例
- Apple 的人类界面指南
- Google 的材料设计
- Microsoft 的流畅设计系统
- Airbnb 的新设计系统
- Github 的Primer
- Atlassian 的设计指南
- Salesforce 的Lightning Design System
- Yelp 的Styleguide
- IBM 的Living Language
- BBC 的GEL Guidelines
- A List Apart 的pattern library
- <span>USA</span>.gov 的Web Design Standards
- MailChimp 的邮件设计指南
现代 JS / 新一代 JS
- ES6+特性
- ECMAScript 6 特性的概述
- Babel REPL / ES6 New Features Comparison
- ES6+ 简介
- Dr. Axel Rauschmayer's blog
- Exploring ES6
- 探索 ES2016 和 ES2017
- 深入理解 ES6
- Nicholas C. Zakas 的 深入理解 ECMAScript 6
- 重新认识 JavaScript
- 文章
- MDN
- 重新认识 JavaScript(JS 教程)
- 相等比较和同一性 , 数据类型和数据结构, 闭包, 继承和原型链
- 并发模型和事件循环 , 内存管理
- Dmitry Soshnikov
- JavaScript. The Core
- ECMA-262-3 详细解读
- 执行上下文 , 变量对象, this, 作用域链, 函数, 闭包, 求值策略
- 面向对象编程:一般理论 , ECMAScript 实现,
- ECMA-262-5 详细说明
- 属性和属性描述符 , 严格模式
- 词汇环境:通用理论 , ECMAScript 实现
- 备注
- 相等运算符 , 参数默认值
- Dmitri Pavlutin
- 相等运算符 , undefined
- 变量提升 , 变量生命周期
- 声明函数 , 'this'关键字
- 三点操作符
- 数组创建 , 对象字面量
- 众所周知的符号
- 小巧简洁的函数
- unicode
- 其他
- JavaScript 模块化的发展
- 关于面向对象设计和 ES6 中的“class”与“extends”关键字
- JavaScript 正则表达式启蒙
- 书籍
- Eloquent JavaScript
- Speaking JavaScript
- You Don't Know JS (book series)
- 参考
- JavaScript 指南
- JavaScript 参考
- 重要提案
- ESM (ECMAScript 模块)
- 简介
- JavaScript 模块的现状
- ECMAScript 6 模块:最终语法
- 深入理解 ES6 模块
- 浏览器
- 浏览器中的 ECMAScript 模块
- Node.js
- Node.js、TC-39 和模块
- .mjs
- 在 Node.js 中原生使用 ES 模块
- esm
- Node.js 中的 ES 模块今天!
- 动态导入 (
import()) - 类字段与静态属性
- 装饰器
- async/await , Promise, Promise Promote, Promises/A+
- Observables
- 静态类型
- 并发 JS / 并行 JavaScript
- 并发 JavaScript:它可以工作!
- JavaScript 的并行之路
- 初识 JavaScript 的新并行原语
- ArrayBuffers 和 SharedArrayBuffers 的卡通介绍
- 函数式编程
- 面向 JavaScript 开发者的函数式编程
- 函数式编程术语
- 软件组合
- 书籍
- Frisby 教授的还算不错的函数式编程指南
- 轻量级 JavaScript 函数式编程
- Lodash 的函数式编程指南
- 不可变.js 和函数式编程概念简介
- 为什么选择 Ramda?
- Ramda 的哲学
- 偏爱 Curry
- 用 Ramda 思考
- Fantasy Land
- 从回调到 Future -> 函数式 -> 单子
- ADT(代数数据类型)
- JavaScript 和类型思维
- 函数式、应用式和 Monad 在图解中
- 函数式响应式编程 (FRP)
- 你一直错过的响应式编程介绍
- 响应式编程与过程式编程有何不同?
- 《Reactivity 的一般理论》
- 学习 RxJS
- Rx 书籍
- JavaScript 中的函数式编程
- RxMarbles
- 静态类型
- 简介
- 为什么在 JavaScript 中使用静态类型?
- 你可能不需要 TypeScript(或静态类型)
- Flow
- Flow Runtime
- Flow Comments
- TypeScript
- TypeScript Playground
- DefinitelyTyped , TypeSearch
- tcomb
- JSDoc 标签
- jsdoc-to-assert
- 并发 JS / 并行 JavaScript
- Napa.js
- 代码风格
- Airbnb JavaScript Style Guide
- Node.js Style Guide
- Clean Code JavaScript
- JavaScript 清晰编码最佳实践
WebAssembly
- 参考文献
- WebAssembly.org
- MDN 文档
- 概念
- WebAssembly 高级目标
- 最小可行产品
- WebAssembly 概念
- WebAssembly 简易卡通介绍
- 功能
- MVP 后要添加的功能
- WebAssembly proposals
- Workshop
- Codelabs - An Introduction to Web Assembly
- Languages
- Rust
- Rust and WebAssembly
- The Rust Wasm Book
Node.js
- 简介
- Node 的艺术
- 你不知道的 Node
- RisingStack 的 / NodeSource 的 理解 Node.js 事件循环
- Node.js 垃圾回收详解
- 流手册
- Node 流的简史
- 理解对象流
- 保持 Node.js 核心小巧
- 使用 Google Chrome 调试 Node.js
- 添加 v8_inspector 支持
- 如何使用最佳工具调试 Node.js
- 工作坊
- NodeSchool
- learnyounode
- 最佳实践
- Node.js 之道
- Joyent 的生产行为 - 设计 , 错误处理
- Node.js 开发最佳实践
- Node.js 最佳实践
平台兼容性和提案状态
- Web
- 平台状态
- Can I Use
- Chrome , WebKit, Firefox, Edge, TBS (China)
- 平台发布版本
- Chrome , Safari (Webkit), Firefox, Edge
- 平台更新
- Mozilla Hacks
- Web Updates , Chromium Blog
- Webkit Blog
- Microsoft Edge Dev Blog
- 编写向前兼容的网站
- 适配器 - 什么是适配器?
- 功能检测 - Modernizr/feature-detects ,feature.js
- 浏览器/设备/运行时检测 - 请参阅 平台和语言 > 通用工具库 > 解析 / 操作
- 分级浏览器支持 - 分级组件,而非浏览器
- 邮件
- 邮件客户端 CSS 支持指南 / 邮件客户端 CSS 支持
- 邮件设计参考 + HTML 邮件模板
- Node.js
- 平台发布
- Node.js 发布工作组
- ECMAScript 支持
- ECMAScript 兼容性表
- Node.js ES2015+ 支持
- Node 10.x LTS - 原生支持 ES 模块 (无需
--experimental-modules) - Node.8.5 - 原生支持 ES 模块 (
.mjs+--experimental-modules) - Node 8.3 - V8 6.0,Ignition + Turbofan 发布
- Node 8.0 LTS - V8 5.8,五个你需要知道的特性
- Node 7.6 - V8 5.5,异步函数
- Node 6.0 LTS - V8 5.0,ES6 语言特性的 93%
- 性能 - 六速
- 提案状态
- W3C 工作组 (万维网联盟工作组)
- Web 平台发布状态
- JavaScript APIs , Mobile Web Applications, CSS
- CSS 当前工作
- 当前 HTML5 规范
- 在里面
- W3C 技术报告 (W3C TR)
- W3C CSS 工作组的内部视角
- WICG (Web 创新社区组)
- 提案
- WHATWG (Web Hypertext Application Technology Working Group)
- WHATWG Live Standards
- Inside
- W3C vs. WHATWG HTML5 Specs – The Differences Documented
- ECMA TC39 (Ecma International 技术委员会 39)
- ECMA262 的状态、流程和文档
- ECMAScript 提案 / TC39 提案
- 在里面
- TC39 流程 / TC39 的 ECMAScript 功能流程
- Node.js TSC (Node.js 基金会技术指导委员会)
- 会议记录
- Inside
- Node.js 如何创建了一个模型开源社区
- 健康开源
- JS 引擎
- 为笨蛋准备的 JavaScript 引擎指南
- V8
- V8 引擎的工作原理是什么?
- 内部
- v8:两个编译器的故事 , V8 深入浅出:完整编译器
- V8 深入浅出:垃圾回收
- 下一代
- Ignition + TurboFan 发布和声明式 JavaScript
- 启动 Ignition 和 TurboFan
- TurboFan 的故事
- Ignition + TurboFan 和 ES2015
- JSC
- JavaScriptCore,WebKit 的 JS 实现
- 内部
- 介绍 WebKit FTL JIT
- 新一代
- JSC Love ES6
- 介绍 B3 JIT 编译器
- Chakra
- 微软 Edge 的 JavaScript 引擎将开源
- 架构概述
- Node-ChakraCore 和 Node.js 中的 VM 中立性
- 内部
- JavaScript 性能更新 - 2015 , 2016, 2017
- 下一代
- 路线图
- SpiderMonkey
- 2013 年的猴子
- 基准测试
- 传统 JavaScript 基准测试的真相
- 浏览器基准测试
- Web 运行时 / JS 运行时
- Electron
- 教程 - Essential Electron
- Cordova
- 平台支持
- 新接触 Cordova/Phonegap 的开发者常见错误
- 精选插件 - Awesome Cordova Plugins
- 查找插件 - plugreg / Plugin Search
- React Native / NativeScript / Weex
- React Native 样式速查表
- React Native 桥接 - 深入了解 React Native 的核心
- 教程 - React Native Express , React Native Workshop, React Native Training
- 示例 - 30 Days of React Native
- 设备
- iPhone 分辨率终极指南
- 设备指标 / 屏幕尺寸
跨浏览器 / 通用库
- 外观
- 响应式网页设计
- 媒体查询 - Enquire.js
- 响应式图片 - Picturefill
- Viewport Units Buggyfill
- Web Typography
@font-face- Font Face Observer- Web Animation API
- Web Animations Polyfill
- Web Components
- webcomponents.js (v1 spec polyfills) / Polymer
- 交互
- 键盘 - Mousetrap
scroll-behavior: smooth;- Smoothscroll Polyfill- PointerEvent - PEP / React Pointable
- ResizeObserver Polyfill
- 访问
- Web 通知 API - Push.js / Notify.js
- 剪贴板 API - Clipboard.js / copy-to-clipboard
- 全屏 API - Screenfull
- 页面可见性 API - Visibility.js
<iframe>- iframe-resizer- 网络
- XHR - window.fetch Polyfill
- 服务器发送事件 - EventSource Polyfill
- WebSocket - Socket.IO-client / Engine.IO-client / SockJS-client
- 性能
- Web Worker - Greenlet / Workerize
document-write- PostScribe- User Timing API - marky
- 离线
- Service Work - Workbox
- 文件 / FileReader API
- FileSaver.js / StreamSaver.js
- blob-util
- IndexedDB
- LocalStorage API - localForage
- 媒体
<video>- Video.js<audio>- Howler.js- Web Audio API - Waud.js , Tone.js
npm 生态系统
- npm
- how many npm users are there? , Module Counts
- 为什么不用版本控制托管包
- npm 和前端打包
- npm 的 unpublish 政策变更 , kik, left-pad, 和 npm
- 你好,Yarn!
- 查找包
- 搜索
- npms.io / node-modules.com / npmsearch.com
- npm CLI 中的改进搜索(以及我们是如何做到的) , 更好的搜索就在这里!
- Github Search (按星标排序,适用于 JS)
- 统计
- npm trends
- NPMCompare
- npm-stat
- 排名
- The State Of JavaScript , Stack Overflow 年度开发者调查
- npm 的 最受依赖的包
- 依赖管理 / 发布 / 维护
- npm 开发者指南
- npm 的 CLI
- v5.0.0
- npm 的 lockfiles
- Yarn
- yarn 的 CLI
- yarn.lock
- Lerna
- semantic-release / np, gh-release
- npm-check-updates
- check-dependencies
- changed-log
- license-checker
- 惯例
- 开源
- README
- README 的艺术 , 如何编写 README
- 我不使用你的开源项目的十大原因
- 以说明文件为驱动的开发
- 模板 - 通用说明文件 / 标准说明文件 / Zalando 的 README 模板
- 更新日志
- Conventional Commits
- Conventional Changelog
- 如何编写 Git 提交信息
- 许可证
- 选择一个开源许可证
- SemVer
- SemVer (语义版本控制) / npm 的语义版本控制器 / Semver:入门指南
- npm semver 计算器
- package.json
- npm 的 package.json 的具体内容
- yarn 的 package.json 的具体内容
- 依赖项、devDependencies 和 peerDependencies 之间的区别是什么
- 小模块
- Unix 哲学与 Node.js
- 模块最佳实践
- 我如何编写模块
- Hyper Modular / 一行模块
- 小型专注模块
- Hyper Modular Packages: 一个疯狂的邪教还是一个合理的实践?
- 为超模块化 JavaScript 辩护
- 同构 JS / 通用 JS
- 同构 JavaScript:Web 应用的未来
- 通用 JavaScript
通用工具库
- 标准库扩展
- 实用工具
- Lodash
- is.js
- FP
- Ramda
- ramda-fantasy
- 不可变
- immutability-helper + redux-immutable-state-invariant / redux-freeze
- icepick / seamless-immutable / dot-prop-immutable / object-path-immutable / timm / updeep
- ImmutableJS
- 面向对象编程
- lodash-decorators
- Stampit
- 异步
- 可观察 - RxJS
- Promise - es6-promisify , Bluebird
- 生成器 - Co
- 回调 - Async
- 语法
- XRegExp
- Node.js API
- node-libs-browser
- EventEmitter3
- 调试
- debug / pino
- 哈希 / 生成
- uuid / cuid
- shortid / punycode / string-hash
- base64-js / sha.js / spark-md5 / crypto-js / jsrsasign
- 解析 / 操作
- URL
- URL 解析 - qs , URI.js
- IP 地址操作 - ip
- 环境
- 用户代理检测 - UAParser.js / useragent
- 信息 - platform.js
- 运行时检测 - is-electron-renderer / electron-is
- 验证器
- 字符串验证 - validator.js
- 模式验证 - joi / Ajv
- 国际化
- Intl.js + FormatJS / i18next
- 日期
- 日期操作 - Moment.js
- 数字
- 数字操作 - Numeral.js
- 货币 - accounting.js
- 颜色
- 颜色操作 - Chroma.js , Chromatism, randomColor
- 颜色提取 - node-vibrant / Colorify.js
- 文本
- 文本操作 - Voca.js / string.js
- 字符 - string-width , string-length
- HTML 实体 - he
- 人类可读的 Slug - speakingurl
- XSS 清理器 - DOMPurify / xss
- HTTP - mime-types , content-type
- JSON 超集 - serialize-javascript , JSON5
- Markdown - marked / markdown-it
- CommonMark , A formal spec for GitHub Flavored Markdown
- 链接识别 - linkify-it
- 语言检测 - franc
- 文本差异比较 - diff
- JSON 差异比较 - deep-diff
- 搜索 - Fuse.js / fuzzysearch / Lunr.js / js-worker-search, regexgen / escape-string-regexp
- 语法解析器 - PEG.js / nearley
- 缓冲区 / Blob
- 类型检测 - file-type , image-type
- 大小检测 - probe-image-size
- 图像处理 - jimp
- 图像裁剪 - Smartcrop.js
- 二维码 / 条形码 - qrcode / jsbarcode
- 逻辑
- 速率限制器 - Bottleneck / Limiter
- 网络
- HTTP / XHR
- 低级 - Isomorphic Fetch
- 高级
- 基于 XHR - Axios
- 基于 Fetch API - hifetch
- GraphQL - lokka
- TCP
- MQTT
- UDP / P2P
- Simple Peer / JS SIP
- WebTorrent
- 存储
- 文件数据库
- JSON - Lowdb
- IndexedDB / WebSQL / localStorage / 内存
- MongoDB API - NeDB
- CouchDB API - PouchDB
- 实时 / P2P - Gun , ShareDB
- 计算
- Math.js , Simple Statistics, ndarray, bignumber.js
- 自然语言处理
- compromise / talisman
- 机器学习/深度学习
- TensorFlow.js
- MLJS , Synaptic
通用网络应用/网页
GUI 框架
- 视图 / 视图模型 / 视图控制器
- React
- 学习
- Pete Hunt 的react-howto
- React - 基础理论概念
- Under the hood: ReactJS
- SurviveJS React / React Express
- React Cheat Sheet
- 最佳实践
- React Bits , React in patterns
- Functional UI and Components as Higher Order Functions
- Next Gen - 什么是 React Fiber? , React 16
- 组件工具
- Recompose
- React Display Name
- React Side Effect
- React Komposer
- React Loadable
- React CSS Themr
- 浏览器工具
- React Event Listener
- React onClickOutside
- React Responsive
- React Sizeme / React Dimensions
- React Portal / React Gateway
- React Measure
- React Copy to clipboard
- React Cookie
- 独立使用 React
- Redial / React Refetch
- formik / Formsy React
- 轻量级替代品
- Preact / Inferno
- Angular
- Vue.js
- 跨框架
- vuera
- 模型 / 应用状态
- Redux
- 学习
- Dan Abramov 的 Redux 课程视频笔记
- 用卡通形式介绍 Redux
- Tic-Tac-Toe.js:纯 JavaScript 中的 Redux 模式
- 减少样板代码
- redux-cube (作者自己的项目)
- 连接
- react-redux
- reselect
- Action Types, Action Creators, Reducer Switch
- redux-actions
- flux-standard-action
- topologically-combine-reducers
- 异步操作
- redux-thunk + redux-promise-middleware + redux-debounced
- redux-observable
- redux-saga
- redux-api-middleware / redux-axios-middleware / redux-socket.io
- redux-rest-resource / redux-json-api / redux-api
- 状态
- normalizr
- Immutalbe - see Universal Utility Libraries > Standard Library Extensions > FP > Immutable
- redux-immutable
- redux-persist
- redux-undo
- redux-reset
- UI Patterns
- redux-form
- react-block-ui / react-redux-loading-bar
- react-notification-system-redux / react-redux-toastr
- redux-optimistic-ui
- 应用行为
- redux-auth-wrapper
- react-intl-redux
- Redux Search
- 开发
- redux-devtools-extension
- redux-logger
- 测试 - 请参阅 测试 > 网络测试 > 集成测试
- MobX
- Baobab / Freezer
- API / 数据源
- GraphQL
- 学习
- 查询和变异
- Playground - GraphQLHub , 探索 GraphQL
- 状态管理
- Apollo Client
- redux-source (作者自有项目)
- graphql-anywhere
- graphql-tools
- 离线优先
- 学习
- 设计离线优先的 Web 应用
- 向离线优先问好 , 离线优先与 Web 的圆圈, 第二部分:打破圆圈
- 路由
- React Router
- Connected React Router
- React Helmet
- 国际化
- React Intl / React i18next
- React Intl Redux
- 监控 / 错误捕获
- react-ga
- redux-segment
- redux-raven-middleware / raven-for-redux
- redux-catch
- redux-beacon
- 服务 - 请参阅 工具 > 工作流 > 监控
- 调试
- why-did-you-update
- 服务器端渲染
- 查看 工具 > 工作流 > 部署 > 发布应用
- 静态网页
- JAMstack
- 查看 工具 > 工作流 > 部署 > 发布应用
- 框架 / 模板 / 生成器
- create-react-app / angular-cli / vue-cli
- Next.js
- webcube (作者自己的项目)
- React 团队推荐的入门套件
- 从零开始学习 JavaScript
- 静态网站生成器 - Gatsby / Metalsmith / Hexo / Assemble
- GUI 架构
- 比较
- 扩展同构 JavaScript 代码
- 架构表现模式比较 MVP(SC),MVP(PV),PM,MVVM 和 MVC
- 单向用户界面架构
- JavaScript 框架中的变更及其检测
- Martin Fowler's eaaDev
- 大规模 JavaScript 应用程序架构模式
- MVC - A , B, C
- 理解 MVC 和 MVP(面向 JavaScript 和 Backbone 开发者)
- 理解 MVVM - 面向 JavaScript 开发者的指南
- Flux 概念
- Flux - 深入概述
- Redux - 重新发明 Flux - 与 Dan Abramov 的访谈
- Elm 架构
- Cycle.js 中的 MVI (Model-View-Intent)
- 开发者需要了解的 MVI(模型-视图-意图)
- SAM(状态-动作-模型)
UI 工具包
- CSS
- Skeleton.css
- Tachyons
- Bulma
- Material Components for the web
- WeUI
- MJML / Foundation for Emails 2
- React
- Reactstrap / React Bootstrap
- Material-UI / React Toolbox
- Ant Design / Ant Design Mobile
- Rebass
- Blueprint
- Semantic UI React
- React Foundation
- React WeUI
- React Desktop
- React Native Web
独立式 UI 组件
- 布局
- 网格 - React FlexBox Grid
- Masonry - React Masonry Component / masonry-layout / bricks.js / Justified Layout
- Split - React Split Pane / Split.js
- Dashboard - React Grid Layout
- Icon
- React Icons / Material Design Icons / Bytesize Icons
- 进度
- React Redux Loading Bar / NProgress
- 按钮
- 按钮
- 指示器 - React Ladda / Ladda / React Progress Button
- 手风琴
- React Collapse / React Sanfona
- 选择器
- React Tabs
- React Select
- React Radio Group
- RC Slider / React Slider / React Input Range
- React Color
- React Dates / React Datepicker / React Day Picker / Pikaday / React Datetime
- 输入
- React Toggle
- React Input Autosize , React Textarea Autosize
- React Tag Input
- React Autosuggest
- 自动格式化 - React MaskedInput / React Text Mask / Cleave.js
- 表单
- React JSON Schema Form
- 叠加层
- React Modal / SweetAlert2 / vex
- React Overlays
- React Notification System / react-notification-system-redux /
- 抽屉 - React Burger Menu / React Sidebar / React Dock
- React ContextMenu
- React Block UI
- 内容
- 轮播 - React Slick / Nuka Carousel
- React Paginate
- React Rating
- 列表 / 表格 - React Virtualized / React Table / React List
- 电子表格 - React Data Grid / React Handsontable / React Datasheet
- 树形视图 - React Treebeard / React TreeView
- JSON 查看器 - React JSON Tree
- React QR Code
- 邮件表格 - Oy Vey
- 编辑器
- Draft.js
- Awesome Draft.js
- Slate
- React Quill / Quill
- React Monaco Editor / React Ace / React Codemirror
- Monaco Editor / Ace / CodeMirror
- React Markdown
- React Syntax Highlighter / Highlight.js
- Widget
- React Music
- React Big Calendar
- React Image Gallery
- React Google Maps / Google Map React / React Map GL
- React Youtube / React Player
- Searchkit
- Redux Auth
- SurveyJS
Client Side
用户体验库
- 拖拽
- React DnD / React Draggable
- React Sortable HOC / Sortable
- React Dropzone / DropzoneJS
- GSAP - Draggable
- 手势
- Hammer.js / Interact.js / ZingTouch / AlloyFinger
- 手势模式
- React HammerJS
- React Swipeable Views / React Swipeable / Swiper
- 滚动
- 视口和元素
- React Waypoint / Waypoints, React ScrollMonitor / ScrollMonitor, React Visibility Sensor
- React Sticky
- React Headroom / Headroom.js
- React Infinite Scroller / React Infinite
- React Lazyload
- React Pull to Refresh
- 平滑滚动 - React Scroll
- 可滚动 - React iScroll / iScroll / Zynga Scroller
- 可滚动容器 - React Custom Scrollbars / React Scroll Box / React Scrollbar / Overthrow
- 放大镜
- 图像放大镜 - Drift / React Image Magnify
- 图像查看器 - React Images / React Image Lightbox / LightGallery / SmartPhoto
- 裁剪
- React Avatar Editor / React Image Crop / React Cropper
- 调整大小
- React Resizable
- React RnD
- 提示框
- Hint.css
- React Tether / Tether.js / Popper.js, React Tooltip / Tether Tooltip / Tippy.js
- 旅游
- React Joyride / Intro.js / tether-shepherd / Chardin.js
- 可访问性
- React HotKeys
- React A11y
图形库
- 动画
- 特效
- Animate.css / Magic Animations / All Animation CSS3 / Motion CSS / Effeckt.css / CSS3 Animation Cheat Sheet
- React Animations / Animate Components / rc-animate
- Hover.css
- Transformicons / Hamburgers
- 加载中
- Loaders.css / SpinKit / Spin.js
- React Spinkit / React Loaders / Halogen / React Spinjs
- 队列
- React FLIP Move / rc-queue-anim
- 字符
- React Typist / rc-texty
- React CountUp / CountUp.js
ScrollReveal.js / ScrollMagic / Rellax
rc-scroll-anim / React Springy Parallax
方向 - Parallax
- 缓动
- d3-ease / tween-functions
- bezier-easing
- 关键帧 / 过渡
- 风格
- Velocity.js / Velocity React / Dynamics.js
- React Overdrive
- 任何东西
- Anime.js / React Anime
- Between Shapes - flubber
- Lightweight Tweening Engine - shifty / tween.js
- GSAP - TweenLite , GSAP - TweenMax
- 关键帧 + 时间轴
- 样式
- React Motion
- React Motion UI Pack
- React Router Transition
- 任何内容
- React Move
- GSAP - TimelineLite , GSAP - TimelineMax
- React GSAP Enhancer
- 动画 / 曲线路径
- SVG - Vivus
- 形状 - mo-js
- rc-tween-one
- 2D
- Canvas
- Pixi.js / Fabric.js
- React Pixi / ReactPixiFiber / React Konva
- 等轴测 - obelisk.js
- 创意 - p5.js
- 字体 - opentype.js
- SVG
- Snap.svg / Raphaël
- 物理
- Matter.js
- 3D
- WebGL
- Three.js / React Three / React Three Renderer
- Babylon.js
- stackgl
- aframe-react / A-Frame
- React 360
- 物理引擎
- cannon.js / ammo.js / oimo.js
- 数据可视化
- React Sparklines / React Trend / vx
- Recharts / Victory
- ECharts / Highcharts (Commercial) / React Highcharts / Google Charts / React Google Charts
- Plotly.js
- AntV G2
- Chart.js / React ChartJS / Chartist.js
- 图 - Cytoscape.js , AntV G6
- Timesheet.js , Canvas Gauges
- GIS - Leaflet , Turf.js, OpenLayers, Cesium
- D3.js
- Word Cloud - d3-cloud
- 约束 - d3-force / cola.js
- Awesome D3
- 游戏
- React GameKit
- Phaser
- voxel.js
混合库
- Electron
- 持久化
- Electron Settings
- 自动启动
- Electron Window State
- Electron LetsMove
- UI
- Electron Window
- About Window
- Electron Context Menu
- Menubar
- 交互
- Electron Localshortcut
- 调试
- Electron Log
- Electron Debug
- React Native
- UI 工具包
- NativeBase
- React Native Elements
- 独立式 UI 组件
- Vector Icons
- Loading Spinner Overlay / SpinKit
- Progress
- Button
- Tabs
- Drawer
- Modalbox
- DatePicker
- Maps
- UX
- React Navigation / Navigation
- Push Notification / OneSignal
- Parsed Text
- Swiper
- TabView / Scrollable TabView
- Invertible Scroll View , Gifted Chat
- 键盘间隔器
- 访问
- 设备信息
- 权限
- Keychain
- Config
- Image Picker / Image Crop Picker
- Filesystem
- 通讯
- 图形
- SVG
- 模糊
- Animatable
- Lottie
- 媒体
- Video
- Camera
- Sound
- 存储
- Realm
- Simple Store
服务器端
网络
- HTTP
- 简介
- HTTP 概述 , HTTP 简介
- HTTP 的演进
- Web 上识别资源 / 理解 URI
- 万维网架构:标识
- MIME 类型
- HTTP 消息
- HTTP/1.x 中的连接管理
- HTTP 中的重定向
- 参考
- HTTP 标头
- HTTP 响应状态码 / httpstatuses.com
- 同源策略
- HTTP 访问控制(CORS) / 使用 CORS
- 内容安全策略(CSP) - Google / Mozilla
- 性能
- 高性能浏览器网络 , 理想的 HTTP 性能
- HTTP 缓存 - Google , Mozilla
- HTTP 中的压缩
- HTTPS
- HTTPS 的重要性
- TLS 是否足够快? / HTTP 与 HTTPS 测试
- HTTP 严格传输安全 (HSTS)
- 什么是混合内容? ,防止混合内容
- HTTP/2
- http2 explained / HTTP/2 简介
- HTTP/2 常见问题解答
- HTTP/2 服务器推送全面指南
- gRPC
- 什么是 gRPC?
- Protocol Buffers
- TCP
- 编写 WebSocket 服务器
- UDP
- QUIC
服务器端最佳实践
- SaaS
- 十二因素应用
- Restful API
- Heroku 的HTTP API 设计指南 , 微软的API 设计最佳实践, REST API 指南, 设计实用 RESTful API 的最佳实践,
- REST API 错误代码 101
- 介绍 JSON
- 微服务
- 微服务的模式语言
- 微服务架构 ,单体架构
- 按业务能力 分解,按子域分解
- 每个容器的服务实例 ,服务部署平台
- 外部化配置 ,微服务底盘
- 服务发现(服务器端 ,客户端),服务注册表,远程过程调用
- 每个服务一个数据库 ,共享数据库
- 微服务:从设计到部署
- 微服务资源指南
- API 网关
- 模式:API 网关/面向前端的后端
- 为什么需要 API 网关?
- 从 REST 迁移到 GraphQL / 从 REST 到 GraphQL / GraphQL 与 REST
- 无服务器与 GraphQL:新云范式下的完美匹配
- 无服务器
- 无服务器部署模式
- 无服务器的微服务
- 云计算的下一层抽象是无服务器
- 无服务器技术和架构的必备指南 , 服务器无状态生态系统指南
- 无状态架构:五种设计模式 , 无状态代码模式
- 云 / 分布式
- 架构
- AWS 架构最佳实践
- Azure 云基础 - 架构风格 , 软件质量支柱, 设计原则
- 静态
- 静态内容托管 ,保管箱密钥,内容分发网络
- 队列 / 任务
- 基于队列的负载均衡 ,竞争消费者,优先队列
- 后台任务
- 解构
- 联合身份
- 管道和过滤器
- 计算资源整合
- 配置
- 外部配置存储 , 运行时重新配置
- 存储 / 查询
- 缓存旁路 , 缓存
- CQRS , Event Sourcing
- Index Table , Materialized View
- Data partitioning , Sharding
- Resiliency / Availability
- 重试 , 断路器, 瞬态故障处理
- 补偿事务
- 健康端点监控 , 领导者选举, 调度代理监督器
- 响应式宣言
- 多租户
- 多租户应用程序中的身份管理
- 传统的网页托管 / 非分布式
- 网页托管的终极指南 / 网页托管新手指南
- 认证 / 授权
- Cookies 与 Tokens:权威指南 , 基于 Token 的认证的方方面面
- JSON Web Tokens 简介
- OAuth 2 简介 , 理解 OAuth2
- OAuth 宝典
- Auth0 使用的令牌
- 理解刷新令牌
- 如何安全地存储密码 , 你不会用 Base64 编码密码 - 密码学解码, 如何安全地散列密码?
- 弱签名算法
- 安全
- 开发者安全指南
- 理解 CSRF ,CSRF 解密
- 跨站脚本攻击 (XSS)
- OWASP Top Ten Cheat Sheet
- WebAppSec/Secure Coding Guidelines
- Node.js Security Checklist
- 工具 - 请参见 工具 > 测试 > 分析
- 日志记录 / 监控
- 日志记录终极指南
- 监控 Node.js 应用的权威指南
- 监控和诊断
- 工具 - 请参见 工具 > 工作流 > 监控
- DevOps
- 部署最佳实践
- 开始您的 DevOps 之旅
- 《实用 DevOps 指南》
- 工具 - 查看 工具 > 工作流 > 部署 > DevOps]
微服务 / API 服务 (Node.js)
- 框架
- RESTful API
- 中间件框架
- Express / Koa
- Express 中间件
- 日志记录器
- morgan , express-winston, errorhandler, response-time
- HTTP 解析器
- body-parser , multer, raw-body, cookie-parser
- HTTP 头部和动词
- cors , method-override
- 性能
- compression , connect-timeout
- 安全
- helmet , express-validator
- 认证
- express-jwt / passport.js
- 代理
- http-proxy-middleware / rocky
- GraphQL
- apollo-server-express / express-graphql
- 丰富框架
- 配置 - Hapi
- 实时 - Feathers
- 微服务
- Micro / Seneca / StdLib
- 无服务器
- Serverless Framework
- IronFunctions
- 机器人
- Botkit
- GraphQL
- 模式与类型
- GraphQL 模式语言速查表
- GraphQL 全栈教程
- 服务器
- Apollo Server
- graphql-tools
- 解析器
- graphql-resolvers
- DocGen + CodeGen
- API Blueprint / Swagger / RAML
- Parser - Protagonist / Drafter
- 渲染器 - Aglio
- 验证器 - Dredd
- JSON Schema
- 理解 JSON Schema
- 基于 JSON Schema 的编辑器
- 查看 工具 > 文档
- 框架 / 模板 / 生成器
- Nodal
- Fuge
- Botpress
- nodecube (作者自己的项目)
服务器端库(Node.js)
- 配置
- dotenv
- jsonfile
- 调试
- winston
- verror
- longjohn , stackman
- why-is-node-running
- 协议
- form-data , formidable
- iconv-lite
- 网络
- WebSocket - ws / Socket.IO / Engine.IO / SockJS-node
- Server-Sent Event - faye-websocket
- HTTP/2 - spdy
- gRPC - grpc
- AMQP - amqplib
- download
- Email - Nodemailer
- Email HTML - mailgen
- 加密货币
- hasha
- md5
- bcrypt
- 认证
- JWT - jsonwebtoken
- 无密码
- oauth
- OAuth 提供商 - hello.js / grant
- svg-captcha
- 存储
- NOSQL
- Redis 客户端 - ioredis
- MongoDB ORM - Mongooose
- DynamoDB ORM - vogels
- HBase 客户端 - hbase
- RDS
- RDS ORM - Sequelize
- SQL Builder - Knex.js
- Jobs
- 并行 - webworker-threads
- 队列 - kue / bull
- 调度器 - node-schedule
- 抓取
- HTML 遍历 - cheerio , jsdom
- HTML 解析 - parse5 / htmlparser2
- 提取文章 - read-art / node-readability
- 提取元数据 - url-unshort / embedza
- 网络爬虫 - simplecrawler / x-ray / scrape-it / Headless Chrome Crawler
- 无头浏览器自动化 - 参考 工具 > 测试 > 网络测试 > 功能测试 > 无头浏览器自动化
- 图片
- Canvas / WebGL API - node-canvas / gl
- 图像处理 - gm / sharp
- 截图 - pageres
- 二维码 / 条形码 - qr-image
- 计算机视觉 - tracking.js / opencv
- 解析 / 生成
- 文本 - unified
- Markdown - remark
- PDFKit
- csv
- xml2js
- NLP
- natural / retext / NodeJieba
云服务(全球)
- 计算
- FaaS / 无服务器 / WebHook
- AWS Lambda / Google Cloud Functions
- webtask / hook.io
- Graphcool Functions
- Amazon API Gateway
- PaaS
- 查看 工具 > 工作流 > 部署 > DevOps > PaaS
- CaaS
- Amazon ECS / Google Container Engine
- 存储
- 对象存储
- Amazon S3 / Google Cloud Storage
- imgix
- DBaaS
- In-Memory Key-Value NoSQL - Amazon ElastiCache
- Redis - Compose / Redise Cloud / Heroku Redis
- 文档 NoSQL - Amazon DynamoDB / Google Cloud Datastore
- MongoDB - Compose / mLab / MongoDB Atlas
- CouchDB - Couchbase / Cloudant
- 广列 NoSQL - Google Bigtable
- SQL - Amazon RDS / Google Cloud SQL
- PostgreSQL - Compose / Heroku Postgres
- MySQL - Compose
- NewSQL - Google Cloud Spanner
- 队列 - Amazon SQS / Amazon Kinesis / Google Cloud Pub/Sub
- Kafka - Heroku Kafka
- RabbitMQ - Compose
- 分析 - Amazon CloudSearch
- Elasticsearch - Amazon Elasticsearch Service / Elastic Cloud / Bonsai
- Warehouse - Amazon Redshift / Google BigQuery
- BaaS
- CRUD
- 实时
- Firebase 实时数据库
- GraphQL
- Graphcool / Scaphold
- 内容管理系统 (CMS)
- WordPress.com REST API / Contentful / DatoCMS / GraphCMS / Baasic
- 身份验证 (Auth)
- Auth0 / Amazon Cognito / Firebase Authentication
- OAuth.io
- CAPTCHA
- reCAPTCHA
- 搜索 - Algolia
- 邮件 - SendGrid / Mailgun / Mandrill / Amazon SES
- 短信 - Nexmo / Twilio / Amazon SNS
- 支付 - Stripe
- 地图 - Mapbox
- 客户支持 - Intercom / Zendesk
- 即时通讯 - Discord
- 表单 - Typeform.io / Form.io
- AI 即服务 / BD 即服务
- 自然语言
- NLP - Google 自然语言 API
- 语音识别 / 语音合成
- Amazon Lex / Google Cloud Speech API
- Amazon Polly
- 翻译 - Google Cloud Translation API
- 计算机视觉
- Amazon Rekognition / Google Cloud Vision API
- Google Cloud Video Intelligence API
云服务(中国)
中国防火长城 内部的邪恶双胞胎
- 计算
- FaaS / 无服务器 / WebHook
- 阿里云-函数计算 / 腾讯云-无服务器云函数 SCF
- 阿里云-API 网关
- PaaS
- 查看 工具 > 工作流 > 部署 > DevOps > PaaS
- CaaS
- 阿里云-容器服务 / 腾讯云-容器服务 CCS / DaoCloud
- 存储
- 对象存储
- 阿里云-对象存储 OSS / 腾讯云-对象存储 COS
- DBaaS
- 内存键值 NoSQL
- Redis - 阿里云-云数据库 Redis 版 / 腾讯云-云存储 Redis
- 非关系型数据库
- MongoDB - 阿里云-云数据库 MongoDB 版 / 腾讯云-文档数据库 MongoDB
- 列式非关系型数据库 - 阿里云-表格存储 OTS
- HBase - 阿里云-云数据库 HBase 版 / 腾讯云-列式数据库 HBase
- SQL
- PostgreSQL - 阿里云-云数据库 PostgreSQL 版 / 腾讯云-云数据库 CDB for PostgreSQL
- MySQL - 阿里云-云数据库 MySQL 版 / 腾讯云-云数据库 CDB for MySQL
- Queue - 阿里云-消息服务 MNS / 腾讯云-消息服务 CMQ
- Kafka - 腾讯云-消息服务 CKAFKA
- Analytics - 阿里云-开放搜索 OpenSearch / 腾讯云搜 TCS
- Warehouse - 阿里云-MaxCompute (ODPS) / 腾讯云-大数据处理套件 TBDS
- BaaS
- CRUD
- LeanCloud-数据存储
- Realtime
- 野狗-实时通信引擎 / LeanCloud-实时通信
- 认证
- 野狗-身份认证
- 验证码
- 极验 / 腾讯云-验证码服务 YY
- 搜索 -
- 邮件 - 阿里云-邮件推送 / SendCloud
- 短信 - 阿里云-短信服务 / 腾讯云-短信 SMS / 云片 / 野狗-短信
- 支付 - Ping++
- Maps - 高德开放平台 / 百度地图开放平台
- 客户支持 - 美洽 / 微金小云客服
- 即时通讯 - 野狗-即时通讯 / 腾讯云-云通信 IM
- 表单 - 金数据
- AIaaS / BDaaS
- 自然语言
- NLP
- 腾讯云-文智自然语言处理 NLP
- 阿里云-机器学习 PAI-文本分析
- 语音识别 / 语音合成
- 阿里云-智能语音交互 / 腾讯云-智能语音服务 AAI
- 翻译 - 腾讯云-机器翻译
- 计算机视觉
- 腾讯云-万象优图 CI
- 阿里云-印刷文字识别
- 图表 / 网络 / 集群
- 阿里云-推荐引擎 / 腾讯云-云推荐引擎 CRE
- 阿里云-关系网络分析
- 阿里云-机器学习 PAI-网络分析
- 人物模型
- 阿里云-画像分析 / 腾讯云-智能推荐 IR
工具
测试
- 单元测试 / 测试运行器
- Jest
- AVA
- Mocha + Chai
- Cypress
- Karma
- 网络测试
- 集成测试
- 组件 - Enzyme
- Reducers
- redux-test-utils + enzyme-redux
- redux-testkit
- 功能测试 / 端到端测试
- 无头浏览器自动化
- DevTools API
- 无头 Chrome - Puppeteer / Chromy
- 使用 Puppeteer 进行不令人讨厌的端到端测试
- AWS Lambda - Chromeless
- electron-prebuilt - Nightmare
- WebDriver API - Selenium WebDriverJS / WebDriverIO / Nightwatch.js / CasperJS / Protractor
- AWS Lambda - Lambdium
- 云 - BrowserStack Automate / Sauce Labs
- 可视化测试
- React Storybook / React Cosmos
- BrowserStack
- Monkey Testing
- gremlins.js
- Headless Browsers
- 浏览器
- Chromium - Headless Chrome/Chromium
- Chromium + Node.js - electron-prebuilt
- WebKit - PhantomJS
- 为什么你应该停止使用 PhantomJS
- Gecko - SlimerJS
- 内存中的 X11 显示服务器
- xvfb - xvfb-run / headless
- Docker
- lighthouse-ci/builder/Dockerfile.headless
- electron-headless
- 服务器端测试
- 功能测试
- supertest
- 负载测试
- k6
- loadtest
- 基准测试
- JS
- Benchmark.js
- Speedracer
- stats.js
- 网络
- wrk / httpstat
- 测试替身 (Fakes, Mocks, Stubs 和 Spies)
- 伪造数据
- Faker.js / Chance.js
- JSON Schema Faker
- placeholder.com
- HTTP Mocking - Nock
- 动态修改 - Mockery , babel-plugin-rewire
- SinonJS / testdouble.js
- Sinon.js 中间谍、桩和模拟的最佳实践
- testdouble.js vs. sinon.js
- 分析
- 代码覆盖率
- Istanbul
- 软件复杂度
- escomplex / complexity-report
- Node.js 安全性
- nsp / snyk
- NSP Advisories / Snyk - Vulnerability DB
- 网页
- Lighthouse / pwmetrics
- PageSpeed Insights
- Varvy SEO 工具
文档
- JS
- JSDoc3 + documentation.js / jsdox / dox
- ESDoc
- React DocGen
- API
- apiDoc
- GraphQL Voyager
- CLI
- Ronn
- Docopt
- Style Guide
- Markdown + JSX - docz
- JS - Storybook
- JS comments - React Styleguidist
- CSS comments - KSS (Knyle Style Sheets)
- kss-node
- SC5 Style Guide Generator
- 写作
- 静态网站生成器 - GitBook / ReadMe
- 客户端渲染 - Docute / Docsify
工具链
- 编译器 / 转译器 / 预处理器
- Babel
- 设置 ES6
- Babel 用户手册 ,Babel 插件手册
- 预设
- Preset Env
- Browserslist
- React 预设
- React 优化
- 插件
- 建议
- Babel 对 ECMAScript 提案的进展
- 补丁 - @babel/polyfill (useBuiltIns) / core-js
- async/await - fast-async (NoDent)
- 阶段 3 , 阶段 2, 阶段 1, 阶段 0
- 类属性
- 对象剩余展开
- 传统装饰器 / 阶段 2 装饰器
- 动态导入- 语法 , 适用于 Node.js
- 可选链操作符
- Node.js
- add-module-exports
- Root Import / Webpack Alias
- React
- JSX 控制语句
- React CSS Modules
- 库
- lodash , ramda
- 优化
- transform-remove-console
- TypeScript
- TypeScript: 缺失的介绍
- PostCSS
- 标准
- Autoprefixer
- CSSNext / postcss-preset-env
- 将更改
- 规范化
- 工具类
- 工具库 , Rucksack
- LostGrid
- Quantity Queries
- Easing Gradients
- Pxtorem
- 品牌颜色 / 日本色彩 / 谷歌色彩
- 对比度 / 获取颜色
- 资产
- 资产
- Inline SVG , SVGO
- Font Magician
- 语法
- PreCSS
- SCSS Parser
- JS
- node-sass
- PostHTML
- 加载器 / 构建器 / 打包器
- Webpack
- webpack-howto
- SurviveJS Webpack
- webpack-blocks
- Loaders
- babel-loader , ts-loader / awesome-typescript-loader, vue-loader
- imports-loader
- 粒度适配
- exports-loader
- 全局导出
- css-loader , style-loader / isomorphic-style-loader
- postcss-loader , scss-loader, less-loader
- resolve-url-loader
- workerize-loader / worker-loader
- raw-loader
- html-loader
- markdown-loader / handlebars-loader
- shader-loader / glslify-loader
- image-webpack-loader / img-loader
- svg-react-loader , react-markdown-loader
- url-loader , svg-url-loader
- file-loader
- thread-loader , cache-loader, val-loader
- 插件
- Extract Text 插件 , Webpack Manifest 插件
- Copy Webpack 插件 , Clean Webpack 插件
- HTML Webpack 插件
- HTML Webpack 模板
- 插件
- Favicons
- Harddisk
- Inline Source , Preload
- Include Assets + Exclude Assets
- Inline Chunk Manifest
- Define Plugin / Environment Plugin
- 提供插件
- 全局模拟
- 忽略插件 , 监视忽略插件
- 模块合并插件 , Lodash 插件
- UglifyJS Webpack 插件 / Babel Minify Webpack 插件
- Workbox Webpack 插件 , Offline 插件
- Bundle Analyzer
- Fork TS Checker Webpack 插件 , HappyPack
- Rollup
- Webpack 和 Rollup:相同但不同
- 格式化工具
- 带自动修复功能的 ESLint - 请参阅静态分析
- Prettier
- prettier-eslint
- Codemod - Effective JavaScript Codemods
- jscodeshift
- react-codemod
- Recast
- stylefmt
- 静态分析
- ESLint
- ESLint 规则
- eslint-index , eslint-find-rules
- 插件
- prettier
- babel , import, eslint-comments, unicorn, no-use-extend-native
- filenames
- eslint-import-resolver-webpack
- compat
- node , security
- react , jsx-a11y, graphql, mongodb
- jsdoc , flowtype
- jest , ava, mocha, chai-expect
- fp , lodash, lodash-fp, immutable
- promise , optimize-regex
- 预设
- eslint-config-webcube (作者自己的项目)
- eslint-config-airbnb
- eslint-config-react-app
- Flow
- flow-typed
- Flow Runtime
- StyleLint
- doiuse
- Colorguard
- postcss-bem-linter
- HTMLHint
- 压缩器 / 压缩工具 / 优化器
- Prepack
- babel-minify / uglify-es / UglifyJS 3 / UglifyJS 2
- cssnano / clean-css / CSSO
- HTMLMinifier
- Critical / Penthouse
- imagemin
- gifsicle
- jpegtran / mozjpeg
- optipng / pngquant
- svgo
- webp
- fontmin , font-spider
- 任务自动化
- npm-run-script , npm-scripts
- 使用 npm run 进行任务自动化 , 如何将 npm 作为构建工具使用
- 为什么我放弃了 Gulp 和 Grunt,转而使用 npm 脚本
- Git 钩子
- Husky
- lint-staged
- Make linting great again!
- 环境变量 - env-cmd , cross-env
- get-port , public-ip
- Gulp
- gulp - The vision, history, and future of the project
- Why you shouldn’t create a gulp plugin
- Gulpfile API
- 工具
- gulp-util 的问题
- through2 , gulp-load-plugins
- gulp-size , gulp-count, gulp-notify
- gulp-debug
- gulp-if , gulp-filter, merge-stream
- gulp-changed / gulp-cached
- gulp-exec , gulp-git
- gulp-rename
- gulp-replace / gulp-inject / gulp-useref, gulp-inline-source
- gulp-sourcemaps
工作流
- 开发
- 微型生成器
- Plop
- 实时重载 / 监控 / 预览
- webpack-serve
- webpack-dev-server
- webpack-dashboard
- webpack-dev-middleware
- 热模块替换 / React Hot Loader
- Browsersync
- Electron - Electron Connect
- React Native - Expo
- Node.js - nodemon
- Dev Tools
- Chrome DevTools / Firefox Developer Tools / Safari Web Inspector / Microsoft Edge F12 Dev Tools
- 控制台 - 控制台 API , 命令行 API
- 第三方面板
- React DevTools / AngularJS Batarang / Augury / Vue.js DevTools
- React Perf
- Redux DevTools
- Immutable DevTools , Immutable.js Object Formatter
- Apollo Client Devtools , GraphQL Network
- JWT Inspector
- WebGL Insight , Three.js Editor Extension
- Reactotron
- Electron - Devtron
- React Native Debugger
- HTTP Inspector
- Paw / Postman / HTTPie
- Debugging Proxy
- AnyProxy / Fiddler
- Tamper Chrome
- 部署
- 发布应用
- 服务器端渲染
- Hypernova
- React Isomorphic Render
- React Engine
- Express React Views
- 静态网站
- 动态路由 + CDN
- Superstatic
- 对象存储 + CDN
- 全球
- Amazon S3 + CloudFront - aws-sdk / awscli
- Google Cloud Storage + Cloud CDN - google-cloud / gcloud
- Firebase Hosting - firebase-tools
- Netlify - netlify-cli
- Surge - surge cli client
- 中国
- 阿里云 OSS + CDN - aliyun-sdk / oss-nodejs-sdk
- 腾讯云 COS + CDN - cos-nodejs-sdk-v5
- 打包应用
- Electron Builder
- 自动更新
- CodePush
- DevOps
- Process Supervisor
- pm2
- pm2-docker
- 进程文件
- 容器
- Docker
- 学习
- 使用 docker 教室
- Docker 课程大纲
- Docker 指南速查表 / Docker 指南速查表
- Dockerfile 参考
- Docker run reference
- Docker Compose
- Docker Images
- node / risingstack/alpine / keymetrics/pm2-docker-alpine
- docker-lambda
- 容器集群
- Docker Engine in Swarm Mode
- Compose file reference
- wait-for-it.sh / dockerize
- Kubernetes
- Kubernetes Cheat Sheet
- PaaS
- 全球
- now
- heroku - heroku-cli
- 中国
- LeanCloud-云引擎 (云函数, 网站托管) - lean-cli
- 监控
- 错误追踪
- 捕获客户端 JavaScript 错误 , 前端错误处理
- JavaScript 中正确的错误处理指南
- 服务
- TrackJS / Errorception
- Sentry / Rollbar / Bugsnag / Airbrake / Raygun
- 日志记录
- 全局
- Amazon CloudWatch / Google Stackdriver
- PM2 Plus
- 中国
- 阿里云-云监控 / 腾讯云-基础监控 BCM
- APM (应用性能管理)
- 全球
- New Relic / AppDynamics / Datadog APM
- Pingdom / SpeedCurve / AppNeta
- Trace
- 中国
- OneAPM / 听云
- 监控宝 / 百度云观测 / 360网站服务监控 / 腾讯云-云拨测 CAT
- 阿里云 Node.js 性能平台
命令行环境 (Mac)
- 简介
- 命令行艺术
- Bash 指南
- Linux Shell 脚本教程(LSST)
- 终端
- iTerm2
- iTerm Color Schemes
- Hyper
- Awesome Hyper
- 包管理器
- Homebrew
- Shell
- Oh My Zsh
- Spaceship ZSH Theme
- Zsh 插件
- zsh-better-npm-completion
- Awesome Zsh Plugins
- Vim
- Vimtutor
- spf13-vim / YVim
- Git
- Git-it , TryGit Simulator
- Become a git guru , Git Glossary
- Pro Git - 命令索引
- commitizen
- Docker for Mac
- dotfiles
- 工具
- 分析 - cloc
- 查找 - rg (ripgrep) / ag (The Silver Searcher), peco, jq, fzf
- 进程 - glances / vtop, fkill
- 帮助 - tldr / howdoi
命令行库 (Node.js)
- 输入
- 选项/参数解析器 - minimist / commander / yargs
- 交互式 - inquirer
- 快速构建 - vorpal / cli
- 配置 - Liftoff
- 输出
- 颜色 / 样式 - Chalk
- 图标 - log-symbols / figures
- 更新日志
- 低级 - log-update
- 指示器 - ora / progress / pace
- 美观日志 - DraftLogs / listr
- 提示 - boxen , cfonts
- 列表 - cli-table / columnify
- 类 curses - blessed
- 绘制 - drawille-canvas
- 图像 - term-img
- 传输
- update-notifier
- 报告使用情况 - insight
- 自包含可执行文件 - pkg
- 框架
- 生成器 - Yeoman
- 操作系统
- Shell 命令 - ShellJS
- 文件系统
- 文件系统 API - fs-extra / fs-jetpack
- 通配符匹配 - glob / globby, matcher
- 虚拟文件系统 - vinyl
- 临时文件 - tmp
- 文件锁定 - proper-lockfile
- 查找 - find-up , readdirp
- 监控 - chokidar / gaze
- 本地
- network-address
- clipboardy
- API
- Git - simple-git / nodegit
- Docker - dockerode
- SSH - ssh2
- 解析器
- JS - Acorn / Babylon / Espree / Esprima
集成开发环境 / 编辑器
- VS Code 插件
- 用户界面
- vscode-icons
- Indenticator
- 操作
- VSCodeVim
- Search node_modules
- Path Intellisense
- npm Intellisense
- Lorem ipsum / Chinese Lorem Ipsum
- 代码片段
- JavaScript (ES6) 代码片段
- JavaScript Snippet Pack
- Reactjs 代码片段
- React Redux ES6 Snippets
- eslint-disable-snippets
- HTML Snippets
- SVG Icons
- 图标字体
- 格式化
- ESLint
- Prettier / stylefmt
- EditorConfig
- change-case
- Align
- 静态分析
- Flow Language Support
- Stylelint
- HTMLHint
- 语法
- CSS Modules
- vscode-styled-components
- GraphQL for VSCode
- Docker
- 文档
- Dash
- Regex Previewer
- Color Picker
- Swagger Viewer
- API Elements extension
- 助手
- Settings Sync
- 项目管理器
- 书签
- TODO 高亮
- Quokka.js - JavaScript 的实时沙盒
- 集成
- VCS
- Git Lens
- Git History
- 在 GitHub 中打开
- 分享代码
- 调试
- Chrome 调试器
- Node Debug 2
- Jest
- React Native Tools
- Cordova Tools
- 写
- Markdown Preview Enhanced
- Mermaid Preview
- Atom 插件
- UI
- fonts
- file-icons
- highlight-line , highlight-selected
- indent-guide-improved , trailing-spaces
- 运行
- vim-mode-plus , jumpy
- Sublime-Style-Column-Selection
- Emmet
- 代码片段
- turbo-javascript
- 格式化
- auto-detect-indentation , editorconfig
- prettier-atom
- atom-stylefmt / postcss-sorting / atom-beautify
- aligner / atom-alignment
- toggle-quotes
- 静态分析
- file-types
- language-babel , atom-ternjs
- language-postcss
- language-mjml
- linter-eslint , linter-flow, linter-stylelint, linter-htmlhint, linter-mjml, linter-jsonlint, linter-js-yaml
- 文档
- dash
- Hyperclick , js-hyperclick
- keybinding-cheatsheet
- 助手
- 项目管理器
- todo-show / imdone-atom
- 集成
- GitHub for Atom
- Build
- AtomBuild
- Markdown Preview Plus
- 开箱即用的 Atom IDE
- YAtom (作者自己的项目)
- Nuclide
- Reactide
- 其他基于 Electron 的 IDE
- Deco
- WebStorm
- 编程字体
- Hack
- Anonymous Pro
- Source Code Pro
- Fira Mono
- Google Noto Mono
- Droid Sans Mono
- Space Mono
- M+
- Mononoki
- Profont
有用的应用
- Playground
- CodePen / CodeSandbox
- npm 的 CDN - unpkg
- RunKit
- RequestBin
- jsPerf
- CSS in JS Playground
- GraphQL Playground , Apollo Launchpad
- GLSL Sandbox
- ImmutableJS REPL
- 可视化工具
- 性能
- Cuzillion
- Critical Path CSS Generator
- CSS
- cssreference.io
- EnjoyCSS
- 缓动 - cubic-bezier / Ceaser CSS 缓动动画工具 / 自定义缓动函数 / 缓动函数
- Flexbox - Fibonacci Flexbox Composer / CSS Flexbox Please! / Flexy Boxes / Flexbox Playground / flexplorer
- 动画 - CSS3 关键帧动画生成器 / Mantra / Bounce.js
- 渐变 - Ultimate CSS 渐变生成器
- 数量查询构建器
- 形状 - CSS 三角形生成器 , Tridiv CSS 3D 编辑器
- HTML Table Generator
- JS
- Keyboard Event Viewer
- Web Audio Playground
- Regex101 / Debuggex
- Viewer
- JSON Viewer , XML Tree
- JS Nice / JS Beautifier
- GraphQL Voyager , GraphQL Docs, GraphQL Visualizer / graphqlviz / graphqlviz
- AST Explorer
- DevTools Timeline Viewer
- JavaScript 中的文本转义和解转义
- HTML 实体查询 / HTML 箭头
- 文档
- Dash / DevDocs / Velocity / Zeal
- 自动化
- RobotJS
协作
- 版本控制
- 工作流
- 比较工作流
- 理解 GitHub 流
- 一个成功的 Git 分支模型
- GUI
- SourceTree
- Github
- GitHub Cheat Sheet
- Github Help
- 我们如何组织 GitHub 问题:一个关于标记的简单风格指南
- Chrome 扩展
- OctoLinker , Octotree, Code Climate
- GitHub 的精彩浏览器扩展
- ChatOps
- 什么是 ChatOps?以及如何开始使用? , 什么是 ChatOps?其演变、采用和重要性的指南
- Hubot
- 适配器 - Slack / Discord / IRC / Wechat / QQ
- Kanban
- Kanban 是什么? - A , B
- 使用 Trello 入门
- Github 项目看板
- 演示文稿
- Markdown
- 精通 Markdown
- Markdown:语法
- 图表
- Mermaid
- Mermaid Live Editor
- 幻灯片
- 备注
- remarker
- 设计
- Sketch / Figma
- InVision / Atomic / Proto.io
- Zeplin / Sympli / Avocode
- After Effects + Lottie / bodymovin / Inspector Spacetime + Sketch2AE