下拉刷新
JavaScript 项目
分类

这里是按照「分类」阅读往期的 HelloGitHub 月刊内容, 您目前在查看 HelloGitHub JavaScript 项目 集合。

Star 2.8w
Fork 4.6k

实现浏览器内截屏的 JavaScript 库。该项目可以让你在浏览器内对整个网页或部分内容进行截图,原理是通过读取 DOM 和样式,将当前页面渲染成一个画布图像。

html2canvas(document.querySelector("#capture")).then(canvas => { document.body.appendChild(canvas) });
html2canvas
Star 4.5k
Fork 522

教你从零构建前端算法体系。学习算法不仅是为了面试,也是每个前端进阶必备的技能之一。该项目包含了前端的进阶算法、常见面试题、手写源码等,帮你构建完整的数据结构和算法的知识体系。

Star 3.1k
Fork 273

视觉上令人愉悦的番茄时钟。这是一款 Vue 写的拥有超高颜值的番茄计时器,支持自定义时间、回合数、提示音、桌面通知等功能。

pomotroid
4
satori
Star 7k
Fork 110

能够将 HTML 和 CSS 转换为 SVG 的库。由 Vercel 团队开源的可根据 HTML 和 CSS 代码生成 SVG 图像的库。支持 JSX 语法,使用起来十分方便和顺手。

import satori from 'satori' const svg = await satori( <div style={{ color: 'black' }}>hello, world</div>, { width: 600, height: 400, fonts: [ { name: 'Roboto', data: robotoArrayBuffer, weight: 400, style: 'normal', }, ], }, )
satori
Star 2.7w
Fork 5.6k

强大的 JavaScript 函数库。该库提供了 100 多个实用的函数,包括常用的 map、filter、reduce、invoke 以及更专业的辅助函数,比如函数绑定、JavaScript 模板功能、创建快速索引等,让我们可以更加方便地在 JavaScript 中实现函数式编程。

// countBy _.countBy([1, 2, 3, 4, 5], function(num) { return num % 2 == 0 ? 'even': 'odd'; }); // 输出:{odd: 3, even: 2}
underscore
Star 3.9k
Fork 123

一款帮助团队同步环境变量的工具。该项目可用于团队成员之前同步环境变量,拥有简单易懂的操作界面,支持端到端加密、自托管、权限控制、集成 CI/CD 等功能。

infisical
7
outils
Star 2.4k
Fork 603

前端业务代码的工具库。该项目包含了前端开发中,经常会用到的日期格式化、浏览器类型判断、检测是否为手机号等函数。

/** * * @desc 获取操作系统类型 * @return {String} */ function getOS() { var userAgent = 'navigator' in window && 'userAgent' in navigator && navigator.userAgent.toLowerCase() || ''; var vendor = 'navigator' in window && 'vendor' in navigator && navigator.vendor.toLowerCase() || ''; var appVersion = 'navigator' in window && 'appVersion' in navigator && navigator.appVersion.toLowerCase() || ''; if (/iphone/i.test(userAgent) || /ipad/i.test(userAgent) || /ipod/i.test(userAgent)) return 'ios' if (/android/i.test(userAgent)) return 'android' if (/win/i.test(appVersion) && /phone/i.test(userAgent)) return 'windowsPhone' if (/mac/i.test(appVersion)) return 'MacOSX' if (/win/i.test(appVersion)) return 'windows' if (/linux/i.test(appVersion)) return 'linux' }
Star 373
Fork 26

和你的好友一起在线听播客。该项目无需注册和登录,即可创建/进入房间和三五好友,一起收听同一个博客,支持收听小宇宙、Apple Podcast 中国区等音源。

podcast-together
Star 1.4w
Fork 488

强大的终端录制工具。该项目可以轻松记录下你在命令行的操作,并将录制好的内容输出成 gif 图像或直接分享到网上。

terminalizer
Star 1.3k
Fork 32

让 DOM 像眼睛一样注视的 JS 动画库。这是一个简易的动画库,主要用于计算一个 DOM 与观察目标,比如鼠标、DOM、输入框值之间的位置,从而做出一些有趣的动画,比方说让它变成跟眼睛一样。

watching-you