发布于 2026-01-05 15 阅读
0

🚀10 Trending projects on GitHub for web developers - 21st January 2022 React-Text-transition SunCalc Simple.css {} canvas-datagrid Vest - Declarative validations framework Vanta JS Lazy Load Remastered DEV's Worldwide Show and Tell Challenge Presented by Mux: Pitch Your Projects!

🚀GitHub 上面向 Web 开发人员的 10 个热门项目 - 2022 年 1 月 21 日

React-Text-transition

SunCalc

Simple.css {}

canvas-datagrid

Vest——声明式验证框架

Vanta JS

Gest——一款实用的GraphQL测试命令行工具。

Lazy Load Remastered

由 Mux 主办的 DEV 全球展示挑战赛:展示你的项目!

《热门项目》以每周新闻简报的形式发布,请在Stargazing.dev注册,以确保您不会错过任何一期。

1. React-Text-transition

为文本变化添加动画效果。

GitHub 标志 WinterCore / react-text-transition

为文本变化添加动画效果

React-Text-transition

为文本变化添加动画效果

文本过渡

编辑 r03264p26n

安装

npm install -S react-text-transition

使用演示版

npm run dev

如何使用

例子

import React from 'react';
import TextTransition, { presets } from 'react-text-transition';
const TEXTS = ['Forest', 'Building', 'Tree', 'Color'];

const App = () => {
  const [index, setIndex] = React.useState(0);

  React.useEffect(() => {
    const intervalId = setInterval(
      () => setIndex((index) => index + 1),
      3000, // every 3 seconds
    );
    return () => clearTimeout(intervalId);
  }, []);

  return (
    <h1>
      <TextTransition springConfig={presets.wobbly}>{TEXTS[index % TEXTS.length]}</TextTransition>
    </h1
Enter fullscreen mode Exit fullscreen mode

2. SunCalc

一个用于计算太阳/月亮位置和相位的微型 JavaScript 库。

GitHub 标志 哀悼者/太阳计算器

一个用于计算太阳/月亮位置和相位的微型 JavaScript 库。

SunCalc

构建状态

SunCalc 是一个小型 BSD 许可的 JavaScript 库,用于计算给定位置和时间的太阳位置、日照相位(日出、日落、黄昏等时间)、月亮位置和月相,由Vladimir Agafonkin ( @mourner ) 创建,是SunCalc.net 项目的一部分

大多数计算都基于天文学问答网站上关于太阳行星位置的优秀文章中给出的公式。您可以在维基百科的“暮光”条目中阅读SunCalc计算出的不同暮光阶段

使用示例

// get today's sunlight times for London
var times = SunCalc.getTimes(new Date(), 51.5, -0.1);
// format sunrise time from the Date object
var sunriseStr = times.sunrise.getHours() + ':' + times.sunrise.getMinutes();

// get position of the sun (azimuth and
Enter fullscreen mode Exit fullscreen mode

3. Simple.css

Simple.css 是一个无类 CSS 模板,可让您快速创建一个美观的网站。

GitHub 标志 kevquirk / simple.css

Simple.css 是一个 CSS 模板,可让您快速创建一个美观的网站。

Simple.css {}

Simple.css 是一个 CSS 模板,可让您快速创建一个美观的网站。

了解更多信息,请访问https://simplecss.org

Simple.css 的屏幕截图

支持的浏览器

任何一款主流浏览器都比IE11强(IE为什么现在还有人用?)





4. Danfo.js

Danfo.js 是一个开源的 JavaScript 库,提供高性能、直观易用的数据结构,用于操作和处理结构化数据。

GitHub 标志 javascriptdata / danfojs

Danfo.js 是一个开源的 JavaScript 库,提供高性能、直观易用的数据结构,用于操作和处理结构化数据。



Danfojs:强大的 JavaScript 数据分析工具包

Node.js CI 覆盖范围状态 叽叽喳喳 Patreon捐赠按钮

那是什么?

Danfo.js是一个 JavaScript 包,它提供快速、灵活且富有表现力的数据结构,旨在让处理“关系型”或“带标签”数据变得轻松直观。它深受Pandas库的启发,并提供类似的 API。这意味着熟悉Pandas的用户可以轻松上手 Danfo.js。

主要特点

  • Danfo.js 速度很快,并且开箱即用地支持 Tensorflow.js 张量。这意味着您可以将 Danfo 数据结构转换为张量。
  • 轻松处理浮点数据和非浮点数据中的缺失数据(表示为)。NaN
  • 大小可变性:可以向 DataFrame 中插入/删除列。
  • 自动和显式对齐:对象可以显式地与一组标签对齐,或者用户可以忽略标签SeriesDataFrame让算法在计算中自动对齐数据。
  • 强大而灵活的分组功能……

5. canvas-datagrid

基于 Canvas 的数据网格 Web 组件。能够在单个 Canvas 元素上显示数百万个连续的分层行和列,无需分页或加载。

GitHub 标志 TonyGermaneri / canvas-datagrid

基于 Canvas 的数据网格 Web 组件。能够在单个 Canvas 元素上显示数百万个连续的分层行和列,无需分页或加载。

canvas-datagrid

演示

canvas-datagrid

NPM 执照 发布于 webcomponents.org

  • 适用于 Firefox、Edge、Safari 和 Chrome 浏览器。
  • 原生支持触摸设备(手机和平板电脑)。
  • 丰富的文档教程Slack 支持
  • 单个 canvas 元素,以即时模式绘制,数据大小不影响性能。
  • 支持无限行和列,无需分页或加载。
  • 使用熟悉的 W3C DOM 接口提供丰富的事件、方法和属性 API。
  • 可扩展的样式、筛选、格式化、调整大小、选择和排序功能。
  • 支持行级内部网格以及单元格网格的分层钻取样式。
  • 可自定义的层级式上下文菜单。
  • 内置样式和自定义样式。
  • W3C Web组件。可在所有框架中使用。
  • 使用 localStorage 实现每个用户的样式、列大小、行大小、视图偏好和设置。
  • 文件大小小

文档

教程

Slack 支持(请联系作者获取邀请)

风格构建器

下载最新版本(精简版)

测试

源代码

最新测试覆盖率

安装

使用npm

npm install canvas-datagrid
Enter fullscreen mode Exit fullscreen mode

将单个源文件./dist/canvas-datagrid.js放在您的……


6. 背心

Vest 是一个受 Mocha 或 Jest 等单元测试库启发而设计的表单验证框架;它通过引入声明式语法,使其易于使用和学习。

GitHub 标志 ealush /背心

Vest ✅ 声明式验证框架

Vest——声明式验证框架

背心

背心文档

加入 Discord GitHub 之星 下一个标签 版本 下载 捆绑恐惧症 地位


Vest 是一个声明式验证框架,旨在简化 Web 应用程序表单验证的编写和维护过程。Vest 的灵感来源于 Mocha 和 Jest 等流行的单元测试库,它允许开发人员使用类似套件的语法来描述验证需求,将验证逻辑与功能逻辑分离,从而创建更易于维护和阅读的代码。

Vest 的框架无关性意味着它可以与任何 UI 框架配合使用,也可以完全不使用任何框架。借助 Vest,您可以减少代码臃肿,提高功能可读性和可维护性,并增强 Web 应用程序的用户体验。

test('username', 'Username is required', () => {
  enforce(data.username).isNotBlank();
});
test('username', 'Username must be at least 3 chars', () => {
  enforce(data.
Enter fullscreen mode Exit fullscreen mode

7. Vanta JS

为您的网站制作动态 3D 背景

GitHub 标志 腾宝/万塔

为您的网站制作动态 3D 背景

Vanta JS

替代文字

Vanta是什么?/ 常见问题解答

  • 只需几行代码,即可为任何网页添加 3D 动画数字艺术。
  • 工作原理:Vanta 将动画效果作为背景插入到任何 HTML 元素中。
  • 可与原生JS、React、Angular、Vue等框架配合使用。
  • 特效由three.js(使用 WebGL)或p5.js渲染
  • 特效可以与鼠标/触摸输入进行交互。
  • 效果参数(例如颜色)可以轻松修改,以匹配您的品牌。
  • 压缩和 gzip 处理后,新增文件大小约为 120kb(主要是 three.js),比同等大小的背景图片/视频要小。
  • Vanta 内置了许多预设特效供您尝试。更多特效即将推出!

script 标签的基本用法:

<script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/r134/three.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vanta/dist/vanta.waves.min.js"></script>
<script
Enter fullscreen mode Exit fullscreen mode

8. 格斯特

一款实用的 GraphQL 测试工具——可在本地和云端测试您的 GraphQL schema

GitHub 标志 mfix22 / gest

👨‍💻 一款实用的 GraphQL 测试工具 - 在本地和云端测试您的 GraphQL schema

Gest——一款实用的GraphQL测试命令行工具。

一款实用的GraphQL测试工具。

欢迎提交公关稿 使用 Jest 测试 用孕激素测试 MIT许可证

用法

$ npm install -g gest
Enter fullscreen mode Exit fullscreen mode

然后发送查询gest(发音为guest [/ɡest/])。

$ gest [options] [query | pathToFileWithQuery]
Enter fullscreen mode Exit fullscreen mode
示例
$ gest '{ test }'
Enter fullscreen mode Exit fullscreen mode

或者

$ gest test.graphql

# with `test.graphql` containing
{
  test
}
Enter fullscreen mode Exit fullscreen mode

或多个

$ gest test.graphql '{ test }' introspection.graphql
# will run all three queries!
Enter fullscreen mode Exit fullscreen mode

REPL

如果运行命令gest时不带任何参数,它将打开一个 REPL 界面供您运行查询:

$ gest

Query: { test }

{
  data: {
    test: "success!"
  }
}
Enter fullscreen mode Exit fullscreen mode

HTTP

如果您baseURL在请求中指定了 URL configgest则会发送一个POST请求,并将您的查询正确编码到请求体中。您的baseURLURL 必须是有效的 URL。

您可以使用-H key=value 标志来指定 HTTP 标头。

如果您正在使用Now工作流程,这将特别方便。

例子
$
Enter fullscreen mode Exit fullscreen mode

9. 假

在浏览器和NodeJS中创建海量虚假数据。支持树摇算法且完全类型化。

GitHub 标志 ngneat / falso

满足您所有真实需求的虚假数据🙂

满足您所有真实需求的虚假数据🙂

在浏览器和NodeJS中创建海量虚假数据。支持树摇算法且完全类型化。


@ngneat/falso 承诺人 公关人员 coc徽章 语义释放 搭配更漂亮的

✅ 203 个函数
✅ 支持摇树优化
✅ 完全类型化
✅ 工厂函数
✅ 实体函数
✅ 单个结果和数组结果

🤓 请访问文档网站了解详情

赞助 ngneat

赞助有助于ngneat库的持续开发和维护。请考虑邀请贵公司赞助ngneat,因为ngneat是贵公司业务和应用开发的核心。

黄金赞助商

成为黄金赞助商,提升您的支持力度,您的徽标将醒目地出现在我们前 5 个存储库的 README 文件中。

白银赞助商

成为黄金赞助商,即可提升您的支持力度,您的徽标将在我们的 README 文件前 3 个存储库中显著展示,让您备受瞩目。

铜牌赞助商

角度之家

成为铜牌赞助商,即可将您的徽标添加到我们在 GitHub 上的 README 文件中。

StackBlitz


10. 延迟加载

这是一个使用原生 JavaScript 实现图片懒加载的插件。它可以延迟加载较长网页中的图片。位于视口外的图片只有在用户滚动页面后才会加载。这与图片预加载的作用相反。

GitHub 标志 tuupola /懒加载

用于图片懒加载的原生 JavaScript 插件

Lazy Load Remastered

延迟加载会延迟加载长网页中的图片。位于视口外的图片只有在用户滚动页面后才会加载。这与图片预加载相反。

这是基于原生 JavaScript 编写的现代版Lazy Load插件。它使用Intersection Observer API来检测图片何时进入浏览器视口。原始代码的灵感来源于Matt Mlinac 的YUI ImageLoader工具。新版本大量借鉴了 Dean Hume 的一篇博客文章

基本用法

默认情况下,延迟加载会假定原始高分辨率图像的 URL 存在于data-src属性中。您还可以在该属性中包含一个可选的低分辨率占位符src

<script src="https://cdn.jsdelivr.net/npm/lazyload@2.0.0-rc.2/lazyload.js"></script>
<img class="lazyload" data-src="img/example.jpg" width="765" height="574" />
<img class="lazyload" 
Enter fullscreen mode Exit fullscreen mode

观星📈

过去7天涨幅最大的股票🔗

  1. 公共 API +1,525 星
  2. Tauri +949 颗星
  3. 免费供开发者使用+686 星
  4. Cyber​​Chef +649 星
  5. 超赞+636 星

过去 7 天增长最快的百分比🔗

  1. p +18%
  2. 节点集成测试+14%
  3. React Preview +13%
  4. riju +10%
  5. Vitest +9%

过去30天涨幅最大的股票🔗

  1. 超赞+4,507 星
  2. 超棒的自托管房源+3,757 星
  3. 公共 API +3,521 星
  4. Tabby +3,183 颗星
  5. 30 天 JavaScript 挑战+3,163 颗星

过去 30 天增长最快的百分比🔗

  1. Iconoir +117%
  2. Vitest +111%
  3. 基础电脑游戏+96%
  4. 富特+95%
  5. TinySpy +52%

想要查看最新排名,请访问Stargazing.dev


《热门项目》以每周新闻简报的形式发布,请在Stargazing.dev注册,以确保您不会错过任何一期。

如果你喜欢这篇文章,可以关注我的推特账号,我会定期发布关于HTML、CSS和JavaScript的内容。

文章来源:https://dev.to/iainfreestone/10-trending-projects-on-github-for-web-developers-21st-january-2022-1727