- 示例工程
- UI组件
- 前端
【免费下载链接】galaxy
The largest Open-Source UI Library! Community-made and free to use. Made with either CSS or Tailwind.
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 元素的类型分目录存放。以下为仓库根目录下的真实结构:
| 目录 | 组件数量 | 说明 |
|---|---|---|
| Buttons | 1227 | 各类按钮,覆盖 brutalist、neumorphism、3D、社交图标、hover 动效等风格 |
| loaders | 716 | 加载动画,包含纯 CSS 动画与复合多图层动画 |
| Cards | 726 | 卡片组件,如订阅卡、资料卡、产品卡等 |
| Inputs | 226 | 输入框,含聚焦动效、placeholder 交互等实现 |
| Forms | 180 | 表单,如支付表单、注册表单等复合型结构 |
| Checkboxes | 171 | 复选框 |
| Toggle-switches | 260 | 开关组件,常见于主题切换(明暗模式) |
| Radio-buttons | 102 | 单选按钮,含 Tailwind 实现 |
| Patterns | 103 | 背景纹理、重复图案 |
| Tooltips | 61 | 提示气泡 |
| Notifications | 23 | 通知/弹窗组件 |
按源码中的分类注释统计(Tags:字段),组件可进一步细分为 3D 效果、玻璃拟态、Brutalism 粗野主义、Material Design、明暗双主题等更细的风格标签,方便按设计语言精准检索。
三、单文件组件的通用解剖:HTML +<style>自包含结构
所有组件文件都遵循零外部依赖的规范:单个.html文件中同时包含结构标记与完整 CSS,没有引用的图片、字体或 JS 依赖(个别使用图标内联 SVG)。以 Buttons/0xnihilism_pretty-fireant-33.html 为例,文件由三部分组成:
- HTML 结构:组件标记直接挂在根节点下,便于嵌入任意页面;
- 注释标签:文件内的
<style>注释携带元信息——/* From Uiverse.io by 0xnihilism - Tags: button, button hover effect, brutalism, minimalism, openai */,指明了原作者与风格标签,这对检索和署名至关重要; - 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,集成成本极低:
- 选择组件:在 Buttons、Cards、loaders 等目录中按文件名(
作者_形容词-动物-编号.html)浏览,或借助文件内Tags:注释按风格筛选; - 复制文件:将目标
.html文件中<div>...</div>结构部分与<style>...</style>样式部分整体复制到你的页面; - 微调定制:修改样式块中的 CSS 变量(如开关组件里的
--color-dark、--transition)或尺寸、配色即可完成二次设计; - 本地验证:直接在浏览器中打开该 HTML 文件即可预览,无需安装任何依赖。
克隆方式:git clone本仓库后,所有组件即为本地静态文件,适合离线浏览与批量检索。
六、贡献机制:仅通过 Uiverse.io 平台,不接受直接 PR
README 明确规定了贡献流程,这与一般开源仓库截然不同:
- 创建并提交:在 Uiverse.io 平台创作你的 UI 元素并提交;
- 平台审核:作品在平台上通过审核后,会被自动上传到本仓库。
重要限制:对仓库发起的直接贡献(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.
相关推荐
如何15分钟完成智能黑苹果配置:OpCore-Simplify自动化EFI生成终极指南
如何15分钟完成智能黑苹果配置:OpCore Simplify自动化EFI生成终极指南 OpCore Simplify是一款革命性的黑苹果配置工具,通过智能自动
开发工具CLI终极Galaxy UI组件库指南:3000+社区共创元素的快速上手教程
终极Galaxy UI组件库指南:3000+社区共创元素的快速上手教程 Galaxy(GitHub加速计划)是一个拥有3000+免费UI元素的开源组件库,全部由
示例工程UI组件前端Galaxy开源UI组件库:3000+免费元素的终极设计指南
Galaxy开源UI组件库:3000+免费元素的终极设计指南 Galaxy(也称为GitHub加速计划)是一个拥有3000+社区贡献的免费UI元素库,全部使用C
示例工程UI组件前端
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考