awesome-dev-web-front-end
Awesome-Web-Front-End-List
:heart: 收藏列表 - :+1: 很棒的 Web 前端基本技术 JavaScript、CSS、HTML 相关框架、库、工具等。
Favorites list - Great basic web front-end technologies JavaScript, CSS, HTML related frameworks, libraries, tools, etc.
(Recommend)推荐看看 W3C(World Wide Web Consortium,万维网联盟) 官方网站,👉 https://www.w3.org/
目录
Resource navigation list.
- 技术标准规范(Technical Standard Specification)
- 技术参考文档(Technical Reference Document)
- HTML
- CSS
- JavaScript
- TypeScript
- 构建工具(Build Tools)
- UI 资源(UI Resources)
- 数据可视化(Data Visualization)
- 开发框架(Framework)
- 应用状态管理(Application State Management)
- Progressive web apps
- WebAssembly
- 深入探索(Explore In Depth)
- 更多(More)
技术标准规范
Technical standard specification.
- W3C - 万维网联盟创建于 1994 年,是 Web 技术领域最具权威和 影响力的国际中立性技术标准机构。
- WHATWG community - 网络超文本应用技术工作组(WHATWG)维护的一些规范性文档。
- Promises/A+ Specification
More others 👉 Awesome-Development-Technical-Standard-Specifications
技术参考文档
Official and unofficial technical reference documents.
-
标准实现状态(Standard implementation status)
- 官方(Official)
- Chrome Blink status - Google Chrome 的 Blink 引擎功能特性的官方实现和标准化的开发状态查询列表,官方网站。
- Firefox status - Firefox 的 Web 平台功能的官方实现和标准化路线图查询列表,官方网站。
- Webkit - Webkit 浏览器引擎的官方网站,可查询其功能特性的实现和标准化状态,官方网站。
- 社区(Community)
- Can I use - 可以查询特定 Web API(H5、CSS3)在各个浏览器平台的实现和标准化状态,非官方网站。
- Web Platform Status
- Can I email - 可以查询特定 Web API(H5、CSS3)在各个邮件客户端平台的实现和标准化状态,非官方网站。
- compatibility table - 可以查询 ECMAScript API 在各平台实现的状态,非官方网站。
- web-platform-tests
- Dataset
- browser-compat-data - MDN 网站上的 Web 技术兼容性数据。
- web-features
- 官方(Official)
-
开发文档(Dev docs)
- MDN Developer Document - MDN Web Docs 网站提供开放网络(Open Web)技术有关的信息,包括用于网站和渐进式网络应用的 HTML、CSS 和 API,是提供给 Web 开发者最好的学习资料和技术文档,可作为官方标准参阅学习。
- Chrome Developers - Chrome 开发者中心,Chrome 官方站点。
- Google Developers for Web - 谷歌开发者中心,Web 站点,众多工具和资源。
- web.dev - Web 关键概念学习、实践。
- The Front-End Checklist - 前端清单,前端知识点及其最佳实践。
-
路线图(Roadmap)
- Frontend Developer Roadmap - 前端开发技术路线图。
-
备忘单与代码片段(Cheatsheet & Code Snippets)
- this vs that - 类似概念区分理解。
HTML
HTML 代码风格规范
Code Style Specifications.
HTML 在线资源
HTML related online tools and documents, etc.
- HTML Reference - HTML 指南。
- HTML DOM - 有用的 HTML 代码片段。
- Entity Code - 快速的实体代码索引查询。
HTML 工具库
HTML tool library, dealing with compatibility issues, etc.
- HTML Boilerplates - HTML 文件模板。
- HTML5 Boilerplate - HTML5 文件模板。
CSS
- css-modules - CSS 模块。( ⚠️ 没有被标准化)
CSS 代码风格规范
Code Style Specifications.
-
CSS 代码风格(CSS Code Style)
-
CSS 类命名规则(CSS class naming rules)
CSS 在线资源
CSS related online tools and documents, etc.
-
文档(Documentation)
- cssdb - CSS 新特性列表。
- CSS Triggers - 一些改变会导致重绘、重布局的 CSS 属性。
- What forces layout / reflow - 一些会导致重绘、重布局的 DOM 操作。
- CSS Reference - CSS 视觉指南。
-
工具(Tools)
- CSS Layout - 流行的 CSS 布局方案参考。
- 动画(Animation)
- Animista - 在线生成 CSS 动画样式代码。
- easings.co - 测试 CSS 动画函数效果。
- Keyframes - CSS 效果预览小工具集合。
- enjoyCSS - 便捷的组件样式设计输出在线工具。
- CSS 渐变(Gradient)
- Gradient Magic - 渐变设计,CSS 渐变画廊。
- Conic.css - CSS 渐变。
- 毛玻璃效果(Frosted Glass Effect)
- Glassmorphism CSS Generator - 毛玻璃效果。
- Glassmorphism CSS Generator - 毛玻璃效果。
- Animated Backgrounds - CSS 动画背景。
- My Device - 测量当前设备相关的 CSS 值,例如视区宽度等等。
- bienvenida al laboratorio - 一些 CSS 特性相关的用例。
- Scrollbar.app - 调试自定义滚动条样式。
-
其它(Others)
- CSS Script - 设计现代 Web 的 CSS 脚本。
CSS 工具库
CSS tool library, dealing with compatibility issues, etc.
-
CSS 重置(CSS Reset)
- Normalize.css - 现代化的 Reset CSS 工具库,统一浏览器默认样式。( ⚠️ 不再更新)
- @csstools/normalize.css
- modern-normalize
- sanitize.css
- ress
-
Utility-first CSS
- Tailwind CSS - 可定制设计的低级 CSS 框架,不提供组件样式,仅提供预设的工具类,来进行组合创建样式。
- Tailwind CSS Cheat Sheet
- Hypercolor - 渐变色集合。
- Tailwind Components - 使用 TailwindCSS 构建的组件,社区支持。
- daisyUI - 使用 TailwindCSS 构建的组件,支持多种主题配色。
- headlessUI - 一组完全无样式、可访问的组件,与 TailwindCSS 集成使用,TailwindCSS 官方发布。
- Twind.style - 将 Tailwind 与 CSS-in-JS 相结合。
- UnoCSS
- Windi CSS
- Tailwind CSS - 可定制设计的低级 CSS 框架,不提供组件样式,仅提供预设的工具类,来进行组合创建样式。
-
实用工具(Utils)
- Masonry -
grid
布局工具。 - clsx - 非常轻量的 CSS 类名拼接工具。
- polished - CSS 样式辅助工具。
- Font Face Observer - 使用
@font-face
加载第三方字体可用检测。 - finder - CSS 选择器生成。
- Masonry -
-
交互效果
- Hover.css - 添加鼠标悬停动画效果。( ⚠️ 不再更新)
- Imagehover.css - 添加鼠标悬停,图片动画效果。( ⚠️ 不再更新)
- CSShake - 抖动效果。
-
加载器(Loading / Spinners)
- Whirl - CSS Loading 动画。
JavaScript
ECMAScript 官方规范标准(ECMAScript Official Specification Standard)
(Recommend)推荐一个其它的收藏库,👉 https://github.com/sorrycc/awesome-javascript
- TC39 ECMAScript proposals - TC39 对 ECMAScript 标准制定提案的记录。
- OpenJS Foundation - 开源 JS 基金会,由 Node 基金会和 JS 基金会合并而成。
JS 代码风格规范
Code Style Specifications.
- JavaScript Standard Style - 支持 JSX 等语法,社区维护。
- Airbnb JavaScript Style Guide - 支持 React 技术栈,Airbnb 公司发布。
- Google JavaScript Style Guide - 仅支持原生 JavaScript,Google 公司发布。
- xo
- Principles of Writing Consistent, Idiomatic JavaScript
- clean-code-javascript - 如何编写干净简洁的 JavaScript 代码。
JS 在线资源
JavaScript related online tools.
-
关键概念(Key concepts)
- DOM Events - DOM 事件运行机制的可视化。
- SJSJ - JavaScript 术语介绍。
- Modern JS Cheatsheet - 现代 JavaScript 概念要点。👉 中文翻译
- What the f*ck JavaScript? - JavaScript 中有趣且易错的要点。
- 33 js concepts - 包含了丰富的 JavaScript 相关的知识概念,学习资源。
-
技巧(Skills)
- Tips, Tricks, Best Practices - 前端技巧和最佳实践。
- Favorite JavaScript Utilities - JavaScript 编程技巧,一行代码。
- Vanilla JavaScript Toolkit - 原生 JS 代码片段集合。
- JS The Right Way - 一些 JavaScript 最佳实践。
-
工具集(Toolset)
- JavaScripting - JavaScript 库、插件、框架资源。
- Javascript.FUN - 在线网站,JavaScript 开发资源集合。
- best of js
-
其它(Other)
- ECMAScript 6 — New Features: Overview & Comparison - ES6 新特性与旧代码差异对比。
- The Modern JavaScript Tutorial - 现代 JavaScript 教程。
- Learn Vanilla JavaScript - 原生 JS 学习资源。
- JSchallenger - 在线 JavaScript 编程训练。
JS 工具库
JavaScript tool libraries (browser-side), such as file manipulation, Canvas drawing, HTTP requests, etc.
see also 👉 Node.JS-工具库
-
实用工具(Utils)
-
文档对象模型(DOM)
- jQuery - 前几年非常流行的 DOM 操作工具库,处理了兼容性的细节问题。
- You might not need jQuery
- Zepto.js - 兼容 jQuery API 的轻量级工具库,适合移动端使用。( ⚠️ 不再更新)
- cash-dom - 轻量级 DOM 工具库,可作为 jQuery 的替代,但仅支持现代浏览器。
- Umbrella JS - 可替代 jQuery 的轻量级工具库。
- Bliss.js - 基于原生 API 的轻量级工具库。
- Lazy load
- Lozad.js - 轻量、高性能图片懒加载工具,使用了 Intersection Observer API。
- unlazy
- clipboard.js - 现代的粘贴板工具库。
- share-url - 现代的链接分享。
- Tether - 元素跟踪定位工具。
- popper.js - 元素定位工具。
- Quicklink - 预请求视区内的资源,加快页面加载速度。
- Dom operation
- Canvas
- print.js - 网页打印工具。
- DOM to Image - 利用 HTML5 Canvas 生成 DOM 节点的快照图片。
- signature_pad - 手写签名。
- atrament - 手绘。
- linkifyjs - 处理文本中的链接、邮箱地址等,将其转为相应的 HTML 标签。
- jQuery - 前几年非常流行的 DOM 操作工具库,处理了兼容性的细节问题。
-
事件(Event)
- BOM / Browser
- history - 管理页面路由。
- screenfull.js - 跨浏览器的
Fullscreen API
。
- Mobile Event / Gestures
- Hammer.js - 支持移动端触摸事件,以及手势操作、多点触控。( ⚠️ 不再维护)
- zingtouch - ( ⚠️ 不再维护)
- interact.js
- @use-gesture/vanilla - 轻量级。
- Keyboard Event
- Selecto.js - 拖动选择元素,支持鼠标和触摸事件。
- Swapy - 使布局支持拖动交换。
- BOM / Browser
-
Cookie
- js-cookie - 轻量的 Cookie 处理工具库。
- universal-cookie
-
搜索(Search)
- lunr.js - ( ⚠️ 不再更新)
- fuzzy - ( ⚠️ 不再更新)
- Stork
- Orama Search
- Fuse.js - 模糊搜索工具。
- fuzzysort - 模糊搜索并排序。
- FlexSearch
- search-index
- MiniSearch
- pagefind - 页面搜索工具。
-
客户端数据库(Client Database)
- localForage - 离线存储,对 IndexedDB、WebSQL、localStorage 的封装。
- SQL.js
- LokiJS - 文档型内存数据库。
- lowdb - 本地 JSON 数据库。
- Dexie - 对 IndexedDB API 的轻量级封装。
-
多线程(Web Worker)
- Comlink - 使
Web Worker
的使用更加简单、方便,Chrome 实验室发布。 - web-worker - 跨平台的
Web Worker
实现, 支持 Node.js 与 Web 浏览器环境。
- Comlink - 使
-
文件(File)
- utils
- FileSaver.js - Web 浏览器客户端文件保存 api 实现。
- StreamSaver.js - Web 浏览器客户端异步保存文件 api 实现,解决了 FileSaver 的大小限制问题。
- image
- Jimp - 图片操作库。
- Pica - 图片质量调整。
- merge-images - 图片拼接合并。
- blurify - 图片模糊化。
- Compressor.js - 图片压缩。
- Lena.js - 图片滤镜。
- image-js - 图片数据科学处理。
- audio
- howler.js - 强大的音频处理工具库,支持所有的编解码器,跨浏览器支持。
- svg
- Trianglify - 通过算法生成三角网 SCG 背景图。( 👉 https://trianglify.io/)
- utils
-
套接字(Socket / TCP)
- socket.io-client - 优秀的实时通信客户端框架。
- sockjs-client - 实时工具库,支持多种语言实现的后端。
-
WebRTC
- PeerJS - 对
WebRTC
API 的简单抽象。
- PeerJS - 对
-
其它(Other)
- HyperFormula - 计算引擎,商业产品 Handsontable 团队维护。
TypeScript
TypeScript 官网 - JavaScript 超集,强类型语言。
-
TypeScript Performance Tips - TypeScript 性能优化,官方。
-
typescript-cheatsheet - TypeScript 备忘单。
-
TypeScript Deep Dive - 深入理解 TypeScript 相关概念知识。
-
工具(Tools)
- TypeScriptToLua - 用 TypeScript 编写 Lua。
- type-fest - 包含一系列工具类型的库。
- api-extractor - 帮助更好的管理 TypeScript 编写的包。
- ts-reset - 增强内置类型。
- tsdiagram - 可视化类型定义。
UI 资源
UI resources.
字体图标
UI 设计系统
Some open source, shared UI design kits.
- Primer - GitHub 设计,包含组件库、图标等资源,GitHub 官方发布。
- Material Design - Material 设计,包含组件库、图标等资源,Google 公司发布。
- Fluent UI - Fluent UI,包含组件库、图标等资源,Microsoft 公司发布。
- Carbon - Carbon 设计,包含组件库、图标、数据可视化工具等资源,IBM 公司发布。
- Spectrum - Spectrum 设计,包含组件库、图标、字体等资源,Adobe 公司发布。
- Ant Design - Ant 设计,包含组件库、图标、数据可视化工具等资源,阿里巴巴公司发布。
- TOAST UI - 包含日历、编辑器、网格组件,以及图表库,NHN 公司发布。
UI 组件
UI Component
Bit,共享组件发布平台。
组件库
UI component library, providing a set of components with consistent design style.
Bootstrap
- Bootstrap - 最流行的 CSS UI 框架,Twitter 公司发布。
- Bootswatch - 开源免费的 Bootstrap 主题集合,非官方。
- MDB - 基于 Bootstrap 实现 Material Design 的 UI 组件库,非官方。