☰
Galaxy 开源 UI 组件库解析:Uiverse.io 社区驱动的 3000+ 免费 UI 元素合集
2026/10/14 2:14:32 网站建设 项目流程
  • 示例工程
  • UI组件
  • 前端

【免费下载链接】galaxy

The largest Open-Source UI Library! Community-made and free to use. Made with either CSS or Tailwind.

项目地址:https://gitcode.com/gh_mirrors/gal/galaxy
点击查看免费下载

Galaxy 是 Uiverse.io 官方维护的开源 UI 组件库,将社区设计师在平台上提交并通过审核的 3000+ 个 UI 元素自动汇聚到 GitHub 仓库中。本文以仓库 README 为骨架,结合 3795 个真实组件文件的结构分析,带你全面理解该库的目录组织、单文件组件实现方式、使用与二次开发方法,以及它独特的“平台审核、自动入库”协作模式与 MIT 许可规则。

一、项目定位:社区驱动的 UI 元素“星系”

根据仓库根目录下的 README.md,galaxy是一个包含超过 3000 个独特 UI 元素的集合,所有元素均来自开源社区平台Uiverse.io。项目的核心理念是“Community-made and free to use”——由社区设计、免费使用,实现方式既包含纯 CSS 也包含 Tailwind CSS。

与多数需要手动合并 PR 的组件库不同,galaxy 的更新是全自动的:当设计师和爱好者在 Uiverse.io 上分享作品并通过审核后,平台会自动策展(curate)并将这些作品上传到该仓库,供所有人直接访问与落地实现。换言之,这个仓库本质上是一份“可持续增长的开源 UI 元素归档”,而非一个需要人工维护的开发仓库。

需要说明的是,README 声称“超过 3000 个”,而当前仓库镜像实际包含3795 个 HTML 组件文件(分布在 11 个分类目录下),数量仍在持续增长。

二、仓库结构:11 大分类的目录总览

整个仓库没有构建工具链、没有依赖清单,所有内容就是一个个自包含的 HTML 文件,按 UI 元素的类型分目录存放。以下为仓库根目录下的真实结构:

目录组件数量说明
Buttons1227各类按钮,覆盖 brutalist、neumorphism、3D、社交图标、hover 动效等风格
loaders716加载动画,包含纯 CSS 动画与复合多图层动画
Cards726卡片组件,如订阅卡、资料卡、产品卡等
Inputs226输入框,含聚焦动效、placeholder 交互等实现
Forms180表单,如支付表单、注册表单等复合型结构
Checkboxes171复选框
Toggle-switches260开关组件,常见于主题切换(明暗模式)
Radio-buttons102单选按钮,含 Tailwind 实现
Patterns103背景纹理、重复图案
Tooltips61提示气泡
Notifications23通知/弹窗组件

按源码中的分类注释统计(Tags:字段),组件可进一步细分为 3D 效果、玻璃拟态、Brutalism 粗野主义、Material Design、明暗双主题等更细的风格标签,方便按设计语言精准检索。

三、单文件组件的通用解剖:HTML +<style>自包含结构

所有组件文件都遵循零外部依赖的规范:单个.html文件中同时包含结构标记与完整 CSS,没有引用的图片、字体或 JS 依赖(个别使用图标内联 SVG)。以 Buttons/0xnihilism_pretty-fireant-33.html 为例,文件由三部分组成:

  1. HTML 结构:组件标记直接挂在根节点下,便于嵌入任意页面;
  2. 注释标签:文件内的<style>注释携带元信息——/* From Uiverse.io by 0xnihilism - Tags: button, button hover effect, brutalism, minimalism, openai */,指明了原作者与风格标签,这对检索和署名至关重要;
  3. CSS 样式:完整定义组件的尺寸、配色、过渡与关键帧动画。

3.1 示例剖析:Brutalist OpenAI 风格按钮

该按钮使用.brutalist-button包裹内联 OpenAI 的 SVG logo 与双层文字:

  • 静态态:深绿背景#063525、3px solid #42c498边框、4px 4px 1px #000000硬阴影,体现粗野主义(Brutalism)的“硬边 + 硬阴影”语言;
  • :hover态:整体translate(-6px,-6px) rotate(1deg)位移旋转,阴影扩展为双层10px 10px 0 #000, 15px 15px 20px rgba(...);
  • 伪元素动画:.button-1::before/::after以swipeRight/swipeLeft关键帧实现扫光掠过效果,logo 在 hover 时执行spin-and-zoom旋转缩放,文字从opacity:0、max-height:0展开到可见——整个过渡曲线统一使用cubic-bezier(0.25, 0.8, 0.25, 1)。

这一解剖说明了 galaxy 组件的通用创作套路:用伪元素叠加动效层、用max-height控制展开收起、用统一缓动函数保持手感一致。这些技巧可以在任何项目里直接复用。

3.2 更多风格样本

  • 卡片:Cards/0xnihilism_average-mole-62.html展示 8px 黑色硬边框 +15px 15px 0 #000硬阴影 + 旋转-2deg的卡片,带角部 banner 双文字切换与shake关键帧;
  • 加载器:loaders/0xnihilism_brown-puma-30.html是“Orwellian(老大哥)加载器”,通过.eye/.pupil/.eyelid瞳孔动画、.spotlight锥形扫光、.scan-lines扫描线、.tv-effect抖动与glitch文字抖动多层叠加,并附带@media (max-width: 480px)响应式降级与user-select:none可访问性处理;
  • 输入框:Inputs/0xnihilism_calm-baboon-55.html实现“Smooth Brutalist”输入框,聚焦时叠加glitch、focus-pulse、glitch-slice(clip-path 逐帧切片)三重动画,聚焦时 placeholder 变透明、label 位移变色;
  • 开关:Toggle-switches/3bdel3ziz-T_honest-deer-30.html用<input type="checkbox">+:checked状态驱动太阳/月亮 SVG 切换,核心是appearance:none隐藏原生控件并用left: calc(100% - 24px)移动滑块,switch:has(.circle:checked)实现容器变色。

从源码结构看,这类“纯 CSS + HTML 状态选择器”的实现方式无需任何 JavaScript,是 galaxy 组件的普遍范式。

四、Tailwind 与纯 CSS 双轨实现

虽然 README 将本库定位为 “Made with either CSS or Tailwind”,但实际文件是已编译的自包含 HTML:纯 CSS 组件自带<style>块;Tailwind 组件(全库约 220 个文件提及 tailwind,其中 Buttons 目录占 66 个)则直接使用class="flex flex-col gap-3 ..."这类工具类标记,并配合peer、has-[:checked]等 Tailwind 高级变体。

以 Radio-buttons/3bdel3ziz-T_curly-duck-62.html 为例,这是一组用 Tailwind 实现的导航单选组:通过peer/expand命名的 peer 机制,让隐藏的 radio input 控制兄弟元素的缩放与配色(peer-checked/expand:scale-125、peer-checked/expand:text-blue-400),并用has-[:checked]:border为被选中项描边。它展示了 galaxy 中 Tailwind 组件的典型用法:依赖 Tailwind 官方 Play CDN 或本地构建环境来解析这些工具类。

使用提示:纯 CSS 文件可直接复制进任何页面;Tailwind 文件则需要项目已配置 Tailwind(Play CDN 或构建管线)才能正常渲染。

五、如何使用:复制粘贴即用,无构建步骤

由于组件是自包含的 HTML+CSS,集成成本极低:

  1. 选择组件:在 Buttons、Cards、loaders 等目录中按文件名(作者_形容词-动物-编号.html)浏览,或借助文件内Tags:注释按风格筛选;
  2. 复制文件:将目标.html文件中<div>...</div>结构部分与<style>...</style>样式部分整体复制到你的页面;
  3. 微调定制:修改样式块中的 CSS 变量(如开关组件里的--color-dark、--transition)或尺寸、配色即可完成二次设计;
  4. 本地验证:直接在浏览器中打开该 HTML 文件即可预览,无需安装任何依赖。

克隆方式:git clone本仓库后,所有组件即为本地静态文件,适合离线浏览与批量检索。

六、贡献机制:仅通过 Uiverse.io 平台,不接受直接 PR

README 明确规定了贡献流程,这与一般开源仓库截然不同:

  1. 创建并提交:在 Uiverse.io 平台创作你的 UI 元素并提交;
  2. 平台审核:作品在平台上通过审核后,会被自动上传到本仓库。

重要限制:对仓库发起的直接贡献(Direct contributions)或 Pull Request会被忽略。Galaxy 完全由 Uiverse.io 平台独家管理,以保证元素质量与来源一致性。这意味着如果你想向该库贡献,正确的路径是在 Uiverse.io 创作并通过审核,而不是改动本仓库代码。

七、许可与署名:MIT 协议下的自由使用与社区回馈

仓库根目录的 LICENSE 为标准的MIT License(Copyright (c) 2023 Uiverse.io),README 确认库内所有 UI 元素均在此协议下发布,你拥有使用、修改、分发的自由。

同时 README 强调:虽然不是强制要求,但 Uiverse.io 非常珍视署名(attribution)。在实际使用时,建议:

  • 在代码注释或项目文档中保留组件文件内已有的From Uiverse.io by {作者}来源注释;
  • 同时致谢原作者与 Uiverse.io 平台。

这不仅是对设计师劳动的认可,也延续了开源社区“共享与致敬”的精神,同时能帮助后续开发者追溯组件出处(仓库中每个文件开头的 Tags 注释即为现成的署名载体)。

八、小结

Galaxy 以“平台策展、自动归档”的模式,将 Uiverse.io 社区的海量免费 UI 元素沉淀为一个零依赖、即拿即用的 HTML 组件库。通过本文对 README.md、LICENSE 以及 11 个分类目录(Buttons、Cards、loaders 等)中真实组件的剖析可以看到:无论是快速原型阶段的样式参考,还是生产环境中的组件移植,这个 3000+ 元素的“UI 星系”都能提供覆盖面极广的现成方案,且 MIT 许可让商用与二次创作没有任何法律负担。

  • 示例工程
  • UI组件
  • 前端

【免费下载链接】galaxy

The largest Open-Source UI Library! Community-made and free to use. Made with either CSS or Tailwind.

项目地址:https://gitcode.com/gh_mirrors/gal/galaxy
点击查看免费下载

相关推荐

上一篇:Grafana Mimir 水平扩展与安全缩容实战指南:从单体到微服务的有状态组件缩容流程
下一篇:Windows 10任务栏增强利器:7+ Taskbar Tweaker隐藏功能大揭秘

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询