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

🚀GitHub 上 10 个热门 Web 开发项目 - 2021 年 5 月 28 日 Comlink Notion SDK for JavaScript daisyUI 4 演示灵感功能 安装 govuk-react

🚀2021年5月28日,GitHub上面向Web开发者的十大热门项目

通讯链路

Notion SDK for JavaScript

雏菊UI 4

演示

灵感

特征

安装

govuk-react

《热门项目》以每周新闻简报的形式提供,请访问www.iainfreestone.com注册,以确保您不会错过任何一期。

1. 通讯链路

Comlink 让 Web Workers 的使用变得轻松愉快。Comlink 是一个体积小巧(仅 1.1kB)的库,它消除了你对 postMessage 的思考障碍,并隐藏了你正在使用 Workers 的事实。

GitHub 标志 GoogleChromeLabs / comlink

Comlink 让 WebWorker 的使用体验更加愉快。

通讯链路

Comlink 让Web Workers 的使用变得轻松愉快。Comlink 是一个体积小巧(仅 1.1kB)的库,它消除了用户在使用 Workers 时产生的心理障碍postMessage,并隐藏了用户正在使用 Workers 的事实。

从更抽象的层面来说,它是 RPCpostMessageES6 代理的实现。

$ npm install --save comlink

Comlink 正在运行

浏览器支持及软件包大小

Chrome 56+ Edge 15+ Firefox 52+ Opera 43+ Safari 10.1+ 三星互联网 6.0+

不支持ES6 Proxy 的浏览器可以使用proxy-polyfill

大小:约 2.5k,压缩后约 1.2k,brotli 压缩后约 1.1k

介绍

在移动设备上,尤其是在低端移动设备上,保持主线程尽可能空闲至关重要,这样才能快速响应用户交互,提供流畅的用户体验。UI线程应该只用于 UI 操作。WebWorker 是一种 Web API,允许你在单独的线程中运行代码。WebWorker 提供了一个postMessageAPI,用于与其他线程通信。你可以发送 JavaScript 对象……


2. Notion JavaScript SDK

官方 Notion JavaScript 客户端。一款简单易用的 Notion API 客户端。

GitHub 标志 makenotion / notion-sdk-js

官方 Notion JavaScript 客户端

Notion SDK for JavaScript

一个简单易用的Notion API客户端


构建状态 npm 版本

安装

npm install @notionhq/client

用法

请使用 Notion 的入门指南来设置使用 Notion 的 API。

使用集成令牌或 OAuth访问令牌导入并初始化客户端

const { Client } = require("@notionhq/client")

// Initializing a client
const notion = new Client({
  auth: process.env.NOTION_TOKEN,
})
Enter fullscreen mode Exit fullscreen mode

向任何 Notion API 端点发出请求。

请参阅API 参考文档中的完整端点列表

;(async () => {
  const listUsersResponse = await notion.users.list({})
})()
Enter fullscreen mode Exit fullscreen mode

每个方法都会返回一个Promise用于解析响应的结果。

console.log(listUsersResponse)
Enter fullscreen mode Exit fullscreen mode
{
  results: [
    {
      object: 'user'
      id: 'd40e767c-d7af-4b18-a86d-55c61f1e39a4',
      type: 'person',
      person: {
        email: 'avo@example.org',

3. 电容器

构建适用于 iOS、Android 和 Web 的跨平台原生渐进式 Web 应用

GitHub 标志 离子团队/电容器

构建适用于 iOS、Android 和 Web 的跨平台原生渐进式 Web 应用 ⚡️


⚡️使用 JavaScript 和 Web 开发跨平台应用程序⚡️


Capacitor 允许您使用单一代码库和跨平台 API 在 iOS、Android、Web 等平台上原生运行 Web 应用程序。

Capacitor 提供了一个跨平台 API 和代码执行层,让您可以轻松地从 Web 代码调用原生 SDK,并编写应用所需的自定义原生插件。此外,Capacitor 还提供一流的渐进式 Web 应用 (PWA) 支持,因此您只需编写一个应用,即可将其部署到应用商店移动 Web 端。

Capacitor 提供了一个插件 API,用于构建原生插件。插件既可以编写在 Capacitor 应用内部,也可以打包成 npm 依赖项供社区使用。我们鼓励插件作者使用 Swift 开发 iOS 插件,使用 Kotlin(或 Java)开发 Android 插件。

入门

Capacitor 的设计理念是即插即用,可以轻松集成到任何现有的现代 Web 应用程序中。运行以下命令即可初始化 Capacitor……





4. 雏菊界面

Tailwind CSS 组件。为 Tailwind CSS 添加 btn、card 等组件类。

GitHub 标志 saadeghi / daisyui

🌼 🌼 🌼 🌼 🌼 最流行的免费开源 Tailwind CSS 组件库





5. Notistack

高度可定制的通知栏(提示框),可以相互堆叠

GitHub 标志 iamhosseindhv / notistack

高度可定制的通知栏(提示框),可以相互堆叠

notistack 标志

Notistack:通过调用函数显示通知。

易于使用、可自定义、过渡流畅、可堆叠和排队

目录

入门

使用您偏好的软件包管理器:

npm install notistack
yarn add notistack

版本指南

版本 笔记
v3.x.x 最新稳定版本。独立版本(即不依赖于material-ui)。
<=v2.0.8 需要 Material-UI v5 作为对等依赖项。npm install notistack@2.0.8
<=1.0.10 需要 Material-UI <= v4 作为对等依赖项。npm install notistack@latest-mui-v4

如何使用

实例化SnackbarProvider组件并开始显示提示栏:(有关可用属性的完整列表,请参阅文档)

import { SnackbarProvider, enqueueSnackbar } from 'notistack';
const App = () => {
  return (
    <div>
      <SnackbarProvider />
      <button onClick={() => enqueueSnackbar('That was easy!')}>Show snackbar</button>
Enter fullscreen mode Exit fullscreen mode

6. 德拉古拉

拖放操作简单到令人难以置信。

GitHub 标志 贝瓦夸/德拉古拉

👌 拖放操作简单到令人难以置信

logo.png

拖放操作简单到令人难以置信。

浏览器支持包括所有主流浏览器以及IE7+(前提是您已使用ES5中的函数式Array方法进行polyfill)

框架支持包括原生 JavaScript、Angular 和 React。

演示

demo.png

试试演示版

灵感

你是否曾经想要一个开箱即用的拖放库?它不依赖于臃肿的框架,而且拥有强大的支持?它能够真正理解元素拖放后应该放置在哪里?它不需要你做很多设置才能正常工作?嗯,我也是!

特征

  • 设置起来超级简单
  • 没有臃肿的依赖项
  • 自行确定排序顺序
  • 物品掉落位置的阴影可以提供视觉反馈。
  • 触摸事件!
  • 无需任何配置即可无缝处理点击操作

安装

你可以…


7. SimpleBar

SimpleBar 只做一件事:在不损失性能的前提下,用自定义 CSS 样式的滚动条替换浏览器的默认滚动条。

GitHub 标志 Grsmto / simplebar

自定义滚动条原生 JavaScript 库,具有原生滚动功能,简单、轻量、易用且跨浏览器兼容。

SimpleBar

NPM 版本 NPM下载 构建状态

SimpleBar 的功能只有一个:在不影响性能的前提下,用自定义 CSS 样式的滚动条替换浏览器的默认滚动条。与一些流行的插件不同,SimpleBar 不使用 JavaScript 模拟滚动,因此不会出现卡顿和奇怪的滚动行为。您可以保留原生滚动的流畅体验……同时拥有自定义滚动条。SimpleBar并未实现自定义滚动行为,它保留了原生 overflow: auto滚动,替换了滚动条的视觉外观。

请我喝杯咖啡

按你的意愿设计

SimpleBar 使用纯 CSS 来设计滚动条样式。您可以轻松地根据需要进行自定义!甚至可以在同一页面上使用多种样式……或者保留默认样式(“Mac OS”滚动条样式)。

轻巧且性能优异

压缩后仅 6kb。SimpleBar 不使用 JavaScript 处理滚动,因此可以保留原生滚动条的性能和行为。

各地均有支持

SimpleBar 已在以下平台上进行过测试……


8. govuk-react

使用 CSSinJS 在 React 中实现 GOV.UK 设计系统

GitHub 标志 govuk-react / govuk-react

使用 CSSinJS 在 React 中实现 GOV.UK 设计系统

govuk-react

使用CSSinJS和对象表示法(使用styled-components )在React中实现GOV.UK 设计系统

代码发现 加入Spectrum社区

我们计划按优先级顺序跟踪以下项目,确定需要实现的组件以及它们的外观和行为。我们会尽可能使用现有的 CSS 作为参考。如果需要修改以适应自定义标记,我们会在代码中添加注释,说明修改原因。

该项目目前或曾经被以下机构使用:


9. htmx

htmx 允许您使用属性直接在 HTML 中访问 AJAX、CSS 过渡、WebSocket 和服务器发送事件,因此您可以利用超文本的简洁性和强大功能构建现代用户界面。

GitHub 标志 bigskysoftware / htmx

</> htmx - 强大的 HTML 工具

</> htmx

用于 HTML 的高级工具

Discord Netlify 捆绑恐惧症 捆绑恐惧症

介绍

htmx 允许您使用属性直接在 HTML 中访问AJAXCSS 过渡、 WebSocket服务器发送事件,因此您可以利用超文本的简洁性强大功能构建现代用户界面。

htmx 文件很小(压缩后最小约 14k,无依赖项可扩展。

动机

  • 为什么只有<a>主机<form>才能发起HTTP请求?
  • 为什么只有click&submit事件才会触发它们?
  • 为什么只允许使用 GET 和 POST 方法?
  • 为什么只能更换整个屏幕?

通过移除这些任意约束,htmx 将 HTML 完善为超文本。

快速入门

  <script src="https://unpkg.com/htmx.org@2.0.3"></script>
  <!-- have a button POST a click via AJAX -->
  <button hx-post="/clicked" hx-swap="outerHTML">
    Click Me
  </button>
Enter fullscreen mode Exit fullscreen mode

andhx-post属性hx-swap告诉 htmx:

“当一个…


10. Vuestic UI

适用于 Vue 3 的免费开源 UI 库

GitHub 标志 epicmaxco / vuestic-ui

Vuestic UI 是一个开源的 Vue 3 组件库,旨在实现快速开发、易于维护和高可访问性。由 Epicmax (@epicmaxco) 维护。

Vuestic UI 标志
Vue.js 3.0 UI 库,由Epicmax
开发,Vasili Savitski设计。

CI徽章 执照 版本

文档| Discord

Vuestic UI 永久免费,并欢迎大家贡献代码。请参阅我们的问题 贡献指南,并加入我们的Discord讨论,帮助我们改进 Vuestic UI 的使用体验。

快速入门

使用以下命令,即可借助VuesticVuestic Admin快速搭建新的 Vite 或 Nuxt 项目。

npm create vuestic@latest
Enter fullscreen mode Exit fullscreen mode

文档

ui.vuestic.dev上提供了文档、指南、示例和教程。

合作伙伴和赞助商❤️

Epicmax、vuejobs、ag-grid、flatlogic、browserstack 和 jetbrains

由 Netlify 部署

感谢BrowserStack提供基础设施,使我们能够使用所有可能的浏览器进行测试。

感谢Chromatic提供视觉测试平台,帮助我们审查 UI 更改并防止视觉回归。

成为合作伙伴:hello@epicmax.co

社区

如有任何疑问,欢迎随时提问或通过官方社区Discord 服务器联系我们。

Vuestic 管理员

观看 Vuestic UI 库的实际应用。Vuestic Admin就是一个很好的例子……


观星📈

过去7天涨幅最大的股票

  1. Appwrite +1,890 星
  2. 编程面试大学+1,234 星
  3. 代码服务器+1,103 星
  4. +926 颗星
  5. 免费编程书籍+908 星

过去 7 天增长幅度最大(%)

  1. 使用状态机+164%
  2. +69%
  3. Appwrite +27%
  4. 复原力+7%
  5. 脉轮模板️ +7%

过去 30 天涨幅最大的股票

  1. 公共 API +5,557 星
  2. 编程面试大学+5,500 星
  3. 免费编程书籍+3,678 星
  4. WinBox.js +3,668 星
  5. 开发者路线图+3,609 星

过去 30 天增长幅度最大(%)

  1. WinBox.js +653%
  2. github-elements +160%
  3. +159%
  4. Supabase 实时性+42%
  5. Supabase +36%

《热门项目》以每周新闻简报的形式提供,请访问www.iainfreestone.com注册,以确保您不会错过任何一期。

如果你喜欢这篇文章,可以关注我的推特账号,我会定期发布与HTML、CSS和JavaScript相关的实用技巧。

文章来源:https://dev.to/iainfreestone/10-trending-projects-on-github-for-web-developers-28th-may-2021-2411