重磅!哈啰 Quark Design 正式开源,下一代跨技术栈前端组件库

Quarkus框架的简单体验 以上就是今天要讲的内容,本文仅仅简单介绍了Quarkus项目的初始化创建,而Quarkus的资料国内较少,如果对Quarkus框架感兴趣,请参考Quarkus框架的官方文档(中文官方文档地址。 阅读详情

Quark Design 是什么?

官网:quark-design.hellobike.com

github:https://github.com/hellof2e/quark-design

技术交流(1)群请扫码
(1)群已满员,可添加管理员wx拉你入(2)群:Sanqi9675

Quark(夸克) Design 是由哈啰平台 UED 和增长&电商前端团队联合打造的一套面向移动端的跨框架 UI 组件库。与业界第三方组件库不一样,Quark Design 底层基于 Web Components 实现,它能做到一套代码,同时运行在各类前端框架中。

Quark Design 历经一年多的开发时间,已在集团内部大量业务中得到验证,本着“共创、共建、共享”的开源精神,我们于即日起将 Quark 正式对外开源!Github地址:https://github.com/hellof2e/quark-design (求star、求关注~😁)
在这里插入图片描述

注:文档表现/样式参考了HeadlessUI/nutui/vant等。

Quark Design 与现有主流组件库的区别是什么?

Quark(夸克)有别于业界主流的移动端组件库,Quark 能同时运行在业界所有前端框架/无框架工程中,做到真正的技术栈无关 !我们不一样,:)

  • 不依赖技术栈(eg. Vue、React、Angular等)
  • 不依赖技术栈版本(eg. Vue2.x、Vue3.x)
  • 全新的Api设计(eg. 弹窗的打开属性由传统的 Visible 调整为符合浏览器原生弹窗的 open等)
  • 公司前端技术生态项目技术栈多时,保持视觉/交互统一
  • 完全覆盖您所需要的各类通用组件
  • 支持按需引用
  • 详尽的文档和示例
  • 支持定制主题

性能优势-优先逻辑无阻塞

我们以对 React 组件的 Web Components 化为例,一个普通的 React 组件在初次执行时需要一次性走完所有必须的节点逻辑,而这些逻辑的执行都同步占用在 js 的主线程上,那么当你的页面足够复杂时,一些非核心逻辑就将会阻塞后面的核心逻辑的执行。

比如首次加载时,你的页面中有一个复杂的交互组件,交互组件中又包含 N多逻辑和按钮等小组件,此时页面的首次加载不应该优先去执行这些细节逻辑,而首要任务应当是优先渲染出整体框架或核心要素,而后再次去完善那些不必要第一时间完成的细节功能。 例如一些图像处理非常复杂,但你完全没必要在第一时间就去加载它们。

当我们使用 Web Components 来优化 React的时候,这个执行过程将会变得简洁的多,比如我们注册了一个复杂的逻辑组件,在 React 执行时只是执行了一个 createElement 语句,创建它只需要 1-2 微秒即可完成,而真正的逻辑并不在同时执行,而是等到“核心任务”执行完再去执行,甚至你可以允许它在合适的时机再去执行。

我们也可以简单的理解为,部分逻辑在之后进行执行然后被 render 到指定 id 的 Div 中的,那么为什么传统的组件为什么不能这么做呢?而非得 Web Components 呢?那就不得不提到它所包含的另一个技术特性:Shadow DOM


组件隔离(Shadow Dom)

Shadow DOM 为自定义的组件提供了包括 CSS、事件的有效隔离,不再担心不同的组件之间的样式、事件污染了。 这相当于为自定义组件提供了一个天然有效的保护伞。

Shadow DOM 实际上是一个独立的子 DOM Tree,通过有限的接口和外部发生作用。 我们都知道页面中的 DOM 节点数越多,运行时性能将会越差,这是因为 DOM 节点的相互作用会时常在触发重绘(Repaint)和重排(reflow)时会关联计算大量 Frame 关系。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TLH0k7Sx-1667907914681)(https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/3daa1087919f4d488c6e143dd5a516f6~tplv-k3u1fbpfcp-zoom-1.image)]

而对 CSS 的隔离也将加快选择器的匹配速度,即便可能是微秒级的提升,但是在极端的性能情况下,依然是有效的手段。

Quark 能为你带来什么?

提效降本几乎是所有企业的主旋律,Quark 本身除了提供了通用组件之外,我们还为大家提供了开箱即用的 CLI,可以让大家在直接在日常开发中开发横跨多个技术栈/框架的业务组件。比如一个相同样式的营销弹窗,可以做到:

  • 同时运行在不同技术栈(Angular、Vue、React等)的前端工程中
  • 同时运行在不同版本的技术栈中,比如能同时运行在 Vue2.x、Vue3.x 中

CLI 内部 Beta 版本目前初版已完成,github 地址:https://github.com/hellof2e/quark-cli。

适合场景:前端团队想发布一个独立的组件或npm包,让其他各类技术栈的工程使用,从而达到提效降本的目的。

npm i -g @quarkd/quark-cli
npx create-quark

写在最后

Quark Design 历经一年多的开发时间,期间有不少集团内部的同学参与并贡献了代码,在此先表示感谢,感谢大家对于 Quark Design 的热情和支持。同时在开源后也欢迎更多的社区同学参与共建 Quark Design,Quark Design loves u ❤️!如果对 Quark(夸克) 感兴趣的同学,欢迎扫码加入开发群。

如果无法加入交流群(微信群扫码最多200人),可以添加微信:iderxu,拉你进群。

群已满员,请添加管理员wx拉你入群:Sanqi9675

相关链接

RV1126上YOLOv8部署实战:从模型转换到板端推理的完整避坑指南 本文提供了在瑞芯微RV1126芯片上部署YOLOv8目标识别算法的完整实战指南。内容涵盖从模型转换、环境搭建到板端推理代码编写的全流程,重点解析了RKNN-Toolkit使用、量化配置、内存优化及后处理实现等关键环节的常见问题与解决方案,旨在帮助开发者高效避坑,实现边缘AI应用的稳定落地。 阅读详情

相关推荐

Keil5安装多版本共存方案:实用技巧分享

分享Keil5安装过程中实现多版本共存的实用方法,解决开发环境冲突问题。通过合理配置路径与版本管理,让keil5安装更高效稳定,提升嵌入式开发体验。

weixin_42514750的博客 1534

探秘下一代前端组件库:Quark Design

在前端开发领域,拥有一套强大而易用的UI组件库至关重要。今天,我们将深入解析【哈啰集团】推出的面向C端的UI组件库——Quark Design。它不仅设计轻盈优雅,而且能够跨技术栈运行,适用于各种框架或无框架环境。 ## 项目介绍 Quark Design 是一款先进的企业级UI组件库,已被广泛应用到哈啰的各类C端H5项目中,如交易、支付、两轮出行和商城等场景。它的设计理念是提供全面的基础组件

gitblog_00040的博客 695

在PyCharm中配置使用Anaconda环境

在PyCharm中配置使用Anaconda环境一、步骤1.Anaconda2.PyCharm总结 一、步骤 1.Anaconda 如未安装Anaconda可至其官网下载,学习使用个人版就可以了。 下载地址:https://www.anaconda.com/products/individual 1、打开Anaconda Navigator,点击Environments可以看到anaconda中已经有了默认的“base”环境,其中包含了大多数我们会用到的包,在PyCharm中可以直接使用该环境,而无需自行下载

TuckX的博客 19万+

Quark Design 常见问题解决方案

Quark Design 是一个基于 Web Components 的浏览器原生组件库,旨在提供无框架依赖的 UI 组件库。它支持跨框架使用,适用于任何前端框架(如 React、Vue、Angular 等)或无框架的项目。Quark Design 由哈啰集团开发,主要用于支撑其 C 端 H5 项目,如交易、支付、两轮、商城等。 ### 主要编程语言 Quark Design 主要使用 HTML

gitblog_00734的博客 1169

arcgis导出自身相交数据

今天接到一个客户需求,一份面文件,里面有好多元素是两两相交甚至是三个相交的,现在要把这些重叠部分提取出来,并且把相交部分的原始要素的名称也保留在字段中,也就是说名称这个会有好多个名称字段,如果两个要素相交那就是前两个名称字段有值,后面的为空,如果是三个要素相交,那么输出的这个要素就是前三个名称字段有值,后面的为空,嗯,这里也不太确定会出现多少个名称字段,这个需要依照数据来定。 这是原始数据,...

miaowumi92的博客 6790

HFSS仿真的后处理结果,如何根据天线表面的电流密度分布对天线进行优化?

在HFSS仿真中,天线表面的Jsurf​是最直观、最有价值的诊断工具之一。它不仅告诉你天线“能不能工作”,还能告诉你“为什么工作”以及“哪里出了问题”。

degogmy的博客 1160

2022年人工智能指数报告(附PDF下载)

迎加入星球下载,转发朋友圈截图回复666亦可下载加入星球,好资料一直有www.didaproject.com发布了,欢迎注册提意见推荐阅读: 世界的真实格局分析,地球人类社会底层运行原理 不是你需要中台,而是一名合格的架构师(附各大厂中台建设PPT) 亿级(无限级)并发,没那么难 论数字化转型——转什么,如何转? 华为干部与人才发展手册(附PPT) 企业10大管...

weixin_45727359的博客 1205

超详细neo4j安装教程

一、neo4j简介 最近开始学习知识图谱,所以首先想先学习一下neo4j的使用。 Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。由于知识图谱中存在大量的关系型信息(实体—关系—实体), 使用结构化数据库进行存储将产生大量的冗余存储信息, 因此将图数据库作为知识图谱的存储容器成为流行的选择。当前较为常用的图数据库主要有 Neo4j 等。 二、neo4j的安装 功能快捷键 撤销:Ctrl/Command + Z 重做:Ctrl/Command + Y 加粗:Ctrl/Co

qq_38335648的博客 9万+

quark-design 原生引入使用说明

其他ui组件参考(官方文档)[https://quark-ecosystem.github.io/quarkd-docs/vanilla/#/]//挂载到window,方便在当前页的其他script使用(这里是为了方便在cdn引入vue中使用)说明:旧项目前后不分离 使用原生html开发的情况下。挂载到window后,方便和vue结合使用。esm全局引入的方式。

jhs的博客 678

智能车竞赛模糊PID代码与使用方法

本文给出了模糊PID的代码,以及模糊PID的程序使用方法、参数调整方法

piginthesouth的博客 9123

嵌入式Zephyr RTOS面试题及参考答案

在Zephyr中,为自定义外设编写Devicetree绑定(Bindings)有助于内核理解设备树中自定义外设节点的含义和属性。首先,需要创建一个.yaml格式的绑定文件,通常存放在目录下对应的子目录中,文件名应能反映外设的类型和功能。绑定文件的开头要定义基本信息,包括字段,用于简要描述外设的功能和用途;compatible字段,它是一个字符串列表,用于匹配设备树中自定义外设节点的compatible属性,设备树节点和绑定文件通过这个字段关联起来。接下来,要定义外设节点的属性。使用properties。

大模型大数据攻城狮的专栏 987

Quark Design核心组件深度解析:从Button到Form的完整使用教程

Quark Design是一款企业级H5 UI组件库,无框架依赖,即插即用,基于Web Components构建。本教程将带你快速掌握从Button到Form的核心组件使用方法,帮助你轻松搭建美观高效的移动端界面。 ## 🌟 为什么选择Quark Design? Quark Design作为一款框架无关的组件库,具有以下优势: - **跨框架兼容**:支持Vue、React、Angular等

gitblog_00197的博客 433

华为OD机试 - 城市聚集度(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 2025A卷题库疯狂收录中,刷题。

学Java,找哪吒 1131

【Web技术】1498- 基于 Web Components 的新一代跨框架 UI 组件库

新一代基于 Web Components 的跨框架 UI 组件库 Quark ,输出标准的 Custom Element,组件可以同时在 React、Vue、Preact、Angular 或原生 JS 等任意框架或无框架中使用。Quark Design 是什么?Quark(夸克) Design 是由哈啰平台 UED 和增长 & 电商前端团队联合打造的一套面向移动端的跨框架 UI 组件库。与...

pingan8787 1151

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Quark Design:面向未来的跨框架Web Components组件库完全指南

**Quark Design**是一款革命性的企业级H5 UI组件库,基于原生Web Components技术构建,真正实现了**跨框架组件库**的无缝使用体验。无论您使用React、Vue、Angular、Svelte还是原生JavaScript,Quark Design都能提供一致的组件体验,彻底解决了多框架项目中组件复用和一致性的痛点问题。 作为哈啰集团面向C端的核心UI组件库,Quark

gitblog_00239的博客 1037

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Quark 生态,再起航!哈啰 Quarkc 正式开源,低成本构建跨技术栈前端组件!

点击上方前端Q,关注公众号回复加群,加入前端Q技术交流群去年 10 月,我们对外开源了 Quarkd(quark design 缩写)。(https://github.com/hellof2e/quark-design)开源之初,我们给自己定下 star 数量超过 70 个就行的心态,却意外得到了 1600 多 star,很受鼓舞~ 那一刻起,我们知道,在前端框架“泛滥”的时代,还有一些人在追随...

LuckyWinty的博客 419

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

简介:iframe 沙箱+WebComponent 容器

基于浏览器的软件很快就会变得复杂且难以维护,尤其是当它被实现为大型单页应用程序时。通过采用微前端方法并将web应用程序设计为功能系统,您可以提供更快的功能开发、更容易的升级,并选择您在堆栈中使用的技术。Micro Frontends in Action是您简化笨重前端的指南,它由定义良好的小单元组成。

通达的博客 2248

探索Quark UI:一款高效、灵活的前端组件库

探索Quark UI:一款高效、灵活的前端组件库 是一个基于Vue.js的高质量前端组件库,旨在帮助开发者快速构建现代化的Web应用。它提供了一套完整的UI解决方案,使得开发过程更高效,设计风格更统一。 项目简介 Quark UI的设计理念是简洁和实用,它的目标是降低开发者的学习曲线,并提高产品的开发速度。该项目提供了丰富的预置组件,涵盖了从布局、表格到表单、弹窗等日常开发中的常见需求。每个组件都...

gitblog_00094的博客 649

【前端知识】Web Components开发框架quarkC介绍

QuarkC 是一个基于 Web Components 标准的轻量级框架,旨在简化 Web Components 的开发流程,并提供更高的生产力和更好的开发体验。它专注于构建跨平台、可复用的组件,适用于现代前端开发场景。以下是关于 QuarkC 的详细介绍以及其使用方法和优势分析。QuarkC 简介QuarkC 是由阿里巴巴团队推出的一个 Web Components 框架,它的核心目标是帮助开发者更高效地创建自定义元素(Custom Elements)。

wendao76的专栏 2021

Quark-Core: 原生Web Components的理想开发工具箱

Quark-Core: 原生Web Components的理想开发工具箱 项目介绍 Quark-Core(Quark核心的简称)是一款旨在提供卓越开发体验的Web Components工具,它允许开发者通过jsx结合Web Components来创建跨框架的标准组件。此项目专为希望建立无框架依赖或跨多种前端技术栈项目的团队设计,提供了灵活且高效的方法来构建可复用的UI元素。 项目快速启动 要迅速...

gitblog_00410的博客 984

Quark-h5核心组件深度解析:零基础打造专业H5页面的终极指南 [特殊字符]

Quark-h5是一款基于vue2 + koa2开发的H5制作工具,让不会写代码的人也能轻松快速上手制作H5页面。类似易企秀、百度H5等H5制作、建站工具,它提供了直观的可视化编辑界面和丰富的组件库,帮助用户高效完成H5页面设计。 ## 📌 核心组件架构概览 Quark-h5的组件系统采用模块化设计,主要集中在`client/components/`目录下,包含编辑器核心组件、UI组件和业务

gitblog_01132的博客 489

Quark项目安装与使用指南

Quark项目安装与使用指南 本指南旨在帮助您快速了解并运行由GitHub上的开源项目Quark。通过本指南,您将掌握项目的基本结构、启动方法以及配置方式。 1. 项目目录结构及介绍 Quark项目遵循了典型的开源软件目录布局,其主要结构如下: src: 源代码的主要存放区。 main: 包含核心应用的源代码,通常分为多个包(如java或py),依据语言而定。 test: 测试代码区域,确保...

gitblog_00909的博客 1058

一劳永逸:用脚本实现夸克网盘内容自动更新

系统环境:debian/ubuntu 、 安装了python3。

u010066597的博客 1万+
github_35590532
博客等级 码龄10年 0粉丝 1原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值