181 lines
6.0 KiB
Plaintext
181 lines
6.0 KiB
Plaintext
---
|
||
description: "版权与许可合规 — 确保所有依赖、素材、字体均为开源可商用,防止法律纠纷"
|
||
alwaysApply: false
|
||
---
|
||
|
||
# ⚖️ Licensing & Copyright Compliance
|
||
|
||
> **核心原则**:项目中使用的所有第三方代码、组件、字体、图标、图片和素材,
|
||
> 必须为**开源、免费、可商用**的许可证,不得引入任何可能导致法律纠纷的资源。
|
||
|
||
## 许可证白名单
|
||
|
||
以下许可证允许在商业项目中使用:
|
||
|
||
```
|
||
✅ 允许使用:
|
||
MIT / ISC / 0BSD / BSD-2-Clause / BSD-3-Clause
|
||
Apache-2.0 / Unlicense / WTFPL / Zlib / PostgreSQL
|
||
CC0-1.0 (公共领域) / CC-BY-4.0 (署名即可)
|
||
SIL OFL 1.1 (字体专用) / BlueOak-1.0.0
|
||
MPL-2.0 (仅修改的文件需开源,不传染整个项目)
|
||
```
|
||
|
||
## 许可证黑名单
|
||
|
||
以下许可证**禁止使用**,因其传染性或商用限制:
|
||
|
||
```
|
||
🚫 禁止使用:
|
||
GPL-2.0 / GPL-3.0 — 强传染,要求整个项目开源
|
||
AGPL-3.0 — 网络使用也触发传染
|
||
SSPL — MongoDB 的限制性许可
|
||
BSL (Business Source License) — 商用限制
|
||
CC-BY-NC-* — 禁止商用
|
||
CC-BY-SA-* — 用于代码时有传染性
|
||
任何标注 "Non-Commercial" / "Personal Use Only" 的许可
|
||
任何标注 "Proprietary" / "All Rights Reserved" 的资源
|
||
```
|
||
|
||
## 灰名单 — 需要确认
|
||
|
||
```
|
||
⚠️ 需人工确认:
|
||
LGPL-2.1 / LGPL-3.0 — 动态链接通常可以,静态链接有传染风险
|
||
Artistic-2.0 — 条款复杂,需逐案评估
|
||
EPL-2.0 — 弱传染,需评估使用方式
|
||
无许可证的开源项目 — 默认 All Rights Reserved,禁止使用
|
||
```
|
||
|
||
**遇到灰名单许可证时**:停止安装,向用户说明风险,等待确认。
|
||
|
||
## NPM / Composer 依赖
|
||
|
||
安装任何新依赖前,必须检查许可证:
|
||
|
||
```bash
|
||
# NPM: 查看包的许可证
|
||
npm info <package-name> license
|
||
|
||
# Composer: 查看包的许可证
|
||
composer show <vendor/package> | grep -i license
|
||
```
|
||
|
||
**安装前检查清单**:
|
||
1. 确认许可证在白名单中
|
||
2. 如果许可证在灰名单中 → 停止并告知用户
|
||
3. 如果许可证在黑名单中 → 拒绝安装并推荐替代方案
|
||
4. 如果没有许可证 → 视为 All Rights Reserved,拒绝使用
|
||
|
||
**推荐开源替代**:
|
||
|
||
| 避免使用 | 推荐替代 | 许可证 |
|
||
|---------|---------|--------|
|
||
| Moment.ts (许可证安全但已弃用) | Day.ts / date-fns | MIT |
|
||
| Font Awesome Pro | Lucide / Heroicons / Phosphor | ISC / MIT |
|
||
| ag-Grid Enterprise | AG Grid Community / TanStack Table | MIT |
|
||
| Highcharts (商用付费) | ECharts / Chart.ts / Recharts | Apache-2.0 / MIT |
|
||
| Ant Design Pro (部分模板付费) | Element Plus / Naive UI | MIT |
|
||
| Quill 某些插件 (付费) | Tiptap / Editor.ts | MIT |
|
||
|
||
## 字体规范
|
||
|
||
**允许使用的字体来源**:
|
||
|
||
| 来源 | 许可证 | 示例 |
|
||
|------|--------|------|
|
||
| Google Fonts | SIL OFL 1.1 | Inter, Noto Sans SC, Roboto |
|
||
| Adobe Source 系列 | SIL OFL 1.1 | Source Han Sans (思源黑体) |
|
||
| 阿里巴巴普惠体 | 免费可商用 | Alibaba PuHuiTi |
|
||
| OPPO Sans | 免费可商用(需注册) | OPPO Sans |
|
||
| 鸿蒙字体 | 免费可商用 | HarmonyOS Sans |
|
||
|
||
```
|
||
🚫 禁止使用:
|
||
微软雅黑 (Windows 自带≠可商用) / 宋体 (方正版权)
|
||
苹方 (仅限 Apple 设备内置使用)
|
||
方正系列字体 (需购买商用授权)
|
||
汉仪系列字体 (需购买商用授权)
|
||
造字工房系列 (需购买商用授权)
|
||
任何从网络下载的无明确授权字体
|
||
```
|
||
|
||
**中文字体推荐方案**:
|
||
- 正文:`"Noto Sans SC", "Source Han Sans SC", "Alibaba PuHuiTi", system-ui, sans-serif`
|
||
- 代码:`"JetBrains Mono", "Fira Code", "Source Code Pro", monospace`
|
||
|
||
## 图标规范
|
||
|
||
**允许使用的图标库**:
|
||
|
||
| 库 | 许可证 | 适用场景 |
|
||
|----|--------|---------|
|
||
| Element Plus Icons | MIT | 与 Element Plus 配套 |
|
||
| Lucide | ISC | 通用线性图标 |
|
||
| Heroicons | MIT | Tailwind 生态 |
|
||
| Phosphor Icons | MIT | 多粗细变体 |
|
||
| Material Design Icons | Apache-2.0 | Google 风格 |
|
||
| Tabler Icons | MIT | 线性图标 |
|
||
| Iconify (聚合平台) | 取决于具体图标集 | 需逐集检查许可证 |
|
||
|
||
```
|
||
🚫 禁止使用:
|
||
Font Awesome Pro (付费版)
|
||
Flaticon (免费版需署名,部分禁止商用)
|
||
IconFinder (大部分需购买)
|
||
Iconfont (阿里) — 个人上传的图标版权不可控
|
||
任何从设计网站截图或扒取的图标
|
||
```
|
||
|
||
## 图片与媒体素材
|
||
|
||
**允许使用的图片来源**:
|
||
|
||
| 来源 | 许可证 | 注意事项 |
|
||
|------|--------|---------|
|
||
| Unsplash | Unsplash License | 免费商用,无需署名 |
|
||
| Pexels | Pexels License | 免费商用,无需署名 |
|
||
| Pixabay | Pixabay License | 免费商用,部分需检查 |
|
||
| 自行创建/AI 生成 | 自有版权 | 确认 AI 工具的商用条款 |
|
||
| unDraw | MIT | 开源插画 |
|
||
| Storyset | Freepik 免费协议 | 需署名 |
|
||
|
||
```
|
||
🚫 禁止使用:
|
||
Google 图片搜索直接下载 (版权不明)
|
||
百度图片搜索直接下载
|
||
Getty Images / Shutterstock / 视觉中国 (付费)
|
||
Pinterest / Dribbble 上的作品 (他人版权)
|
||
任何来源不明的图片
|
||
竞品产品的截图用于商业用途
|
||
```
|
||
|
||
**AI 生成图片注意**:使用 AI 生成图片时,确认所用工具的商用条款允许商业使用。
|
||
|
||
## 代码引用规范
|
||
|
||
从外部来源引用代码片段时:
|
||
|
||
1. **StackOverflow** — CC-BY-SA 4.0 许可,引用需署名,大段引用有传染风险,建议理解后重写
|
||
2. **GitHub 开源项目** — 遵循项目许可证,MIT/Apache 可直接使用
|
||
3. **技术博客** — 版权归作者,参考思路后自行实现,不要直接复制
|
||
4. **AI 生成的代码** — 通常归使用者,但需确认工具的 ToS
|
||
|
||
## 违规处理
|
||
|
||
当检测到以下情况时,**立即停止并警告用户**:
|
||
|
||
1. 即将安装黑名单许可证的依赖
|
||
2. 代码中引用了版权受限的字体名称
|
||
3. 推荐了付费/非商用的素材来源
|
||
4. 从未知来源复制大段代码
|
||
|
||
警告格式:
|
||
|
||
```
|
||
⚠️ 版权风险: [描述问题]
|
||
许可证: [具体许可证]
|
||
风险: [可能的法律后果]
|
||
替代方案: [推荐的开源可商用替代]
|
||
```
|