marichu-kt/PrivScore

GitHub: marichu-kt/PrivScore

一个浏览器扩展与可视化前端,自动化评估网站的隐私健康度并给出 A–E 等级评分。

Stars: 6 | Forks: 0

# PrivScore [![仓库](https://img.shields.io/badge/GitHub-marichu--kt%2FPrivScore-111827?logo=github)](https://github.com/marichu-kt/PrivScore) [![Web 演示](https://img.shields.io/badge/GitHub%20Pages-PrivScore-4f46e5?logo=githubpages)](https://marichu-kt.github.io/PrivScore/) [![扩展程序](https://img.shields.io/badge/Chrome%20%7C%20Edge%20%7C%20Brave-Compatible-16a34a)](#instalación-de-la-extensión) ![PrivScore — banner](https://raw.githubusercontent.com/marichu-kt/PrivScore/main/images/banner.png) ## 演示 - **仓库:** https://github.com/marichu-kt/PrivScore - **已发布的网站:** https://marichu-kt.github.io/PrivScore/ ## PrivScore 是什么 PrivScore 将两个部分整合为一种体验: - 一个包含可视化服务目录和编辑页面的 **frontend** - 一个用于分析浏览器中当前打开网页的 **扩展程序** 当你通过扩展程序分析网页并点击 **查看详情** 时,前端会直接打开一个页面,包含: - **0–100** 的评分 - **A–E** 的等级 - cookies 及类似技术 - 第三方服务与 trackers - 同意信号或 CMP - 检测到的本地存储 - 法律链接与隐私政策(如果存在) - Web 界面中清晰且可复用的摘要 如果该域名已存在于目录中,动态页面将复用其编辑基础。如果不存在,前端将使用相同的视觉语言生成一个新页面。 ## 截图 ### 扩展程序 ![PrivScore — 初始状态](https://raw.githubusercontent.com/marichu-kt/PrivScore/main/images/cap-1.png) ![PrivScore — 分析后的结果](https://raw.githubusercontent.com/marichu-kt/PrivScore/main/images/cap-2.png) ### 已发布的 Frontend ![PrivScore — 网站首页](https://static.pigsec.cn/wp-content/uploads/repos/cas/a7/a78f36d5fc88e93d7c69c24037e7dd2ccb1af2a5a4e852945a387ce691667c05.png) ![PrivScore — 服务目录](https://static.pigsec.cn/wp-content/uploads/repos/cas/e2/e269ca0eeb52cd145334e44834fdb0f941681eddc277506e5f30bb42f33f782e.png) ![PrivScore — 详情页面](https://static.pigsec.cn/wp-content/uploads/repos/cas/49/49ba4ac9806e13dad2dd7693c91ed3b521e36af4842f15bb68ba7245ca87638f.png) ## 项目包含的内容 ### Frontend - 可视化服务目录 - 包含 A–E 等级的完整页面 - 用于从扩展程序打开分析的动态详情页 - 兼容 **GitHub Pages** 的导航 - 使用 `HashRouter` 路由,避免刷新时报错 ### 扩展程序 - 分析当前标签页 - 读取 cookies 和跟踪信号 - 检测外部资源与第三方域名 - 查找隐私政策及其他法律链接 - 在 frontend 中直接打开详情页 ### Backend 后端作为支持和演进基础包含在内,但 **扩展程序 → frontend** 的主要流程并不强制依赖于它。 ## 项目结构 ``` PrivScore/ ├─ .github/ │ └─ workflows/ ├─ backend/ │ ├─ src/ │ │ ├─ config/ │ │ ├─ controllers/ │ │ ├─ data/ │ │ ├─ lib/ │ │ ├─ middleware/ │ │ ├─ models/ │ │ ├─ routes/ │ │ ├─ app.js │ │ └─ server.js │ ├─ .env.example │ └─ package.json ├─ extension/ │ ├─ icons/ │ ├─ src/ │ │ ├─ background/ │ │ ├─ content/ │ │ ├─ detail/ │ │ ├─ options/ │ │ ├─ popup/ │ │ └─ shared/ │ └─ manifest.json ├─ frontend/ │ ├─ src/ │ │ ├─ api/ │ │ ├─ app/ │ │ ├─ assets/ │ │ ├─ components/ │ │ ├─ data/ │ │ ├─ layout/ │ │ ├─ lib/ │ │ ├─ pages/ │ │ └─ styles/ │ ├─ dist/ │ ├─ index.html │ ├─ vite.config.js │ └─ package.json ├─ images/ │ ├─ banner.png │ ├─ cap-1.png │ ├─ cap-2.png │ ├─ website.png │ ├─ services.png │ └─ detail_page_brave.png ├─ LICENSE ├─ PrivScore_Estructura_Codigo.md └─ README.md ``` ## 如何在本地运行 ### 1. Frontend ``` cd frontend npm install npm run dev ``` 打开 Vite 显示的本地 URL,通常是: ``` http://localhost:5173/ ``` ### 2. 扩展程序 1. 打开 `chrome://extensions/` 或 `edge://extensions/` 2. 开启 **开发者模式** 3. 点击 **加载已解压的扩展程序** 4. 选择 `extension` 文件夹 ### 3. 在扩展程序中配置 frontend 的 base URL 在扩展程序的选项中,使用此 URL 进行开发: ``` http://localhost:5173/ ``` ### 4. 测试完整流程 1. 打开任意公开网站 2. 点击扩展程序 3. 点击 **分析网站** 4. 等待结果显示 5. 点击 **在网页中查看详情** 6. 前端将打开并显示该分析的动态页面 ## 发布到 GitHub Pages Frontend 已针对 GitHub Pages 进行了适配,包含: - `HashRouter` - 相对 assets - 从 `.github/workflows/` 部署的流程 ### 发布 ``` cd frontend npm install npm run build ``` 随后发布 `frontend/dist` 中的内容,或直接从仓库中使用 GitHub Actions。 ### 用于扩展程序的生产环境 base URL 当网站已发布后,在扩展程序的选项中使用: ``` https://marichu-kt.github.io/PrivScore/ ``` 这样,当你点击 **在网页中查看详情** 时,扩展程序将直接在公开网站中打开动态页面。 ## 集成流程 1. 扩展程序分析当前页面。 2. 生成结构化报告。 3. 将该报告打包以打开前端。 4. 前端解析报告并将其渲染为完整的详情页。 5. 你可以从该页面返回到总目录。 ## PrivScore 评估的内容 最终评级基于以下信号: - cookies 的数量与特征 - 存储的持久性 - 检测到的第三方 - 外部资源与 trackers - 是否存在可见的控制选项 - 关于删除、访问或偏好的清晰度 - 链接或检测到的法律信息 最终等级以 **A–E** 格式显示,以便于快速直观地阅读。 ## 项目状态 PrivScore 目前已支持: - 浏览内容丰富的可视化目录 - 从前端打开完整页面 - 通过扩展程序分析真实网站 - 将分析结果以相同的视觉风格带到前端 - 将 Web 层发布到 GitHub Pages
标签:Cookie分析, 前端开发, 合规性分析, 浏览器扩展, 网络安全, 自定义脚本, 追踪检测, 隐私保护