mirror of
https://github.com/embersparks/obsidian-github-stars-manager.git
synced 2026-07-22 06:44:31 +00:00
修复Obsidian插件商店审核反馈的问题 Fixes: 1. ✅ Use sentence case for UI placeholder text (src/modal.ts#L72) - Changed from "React TypeScript learning" to "web development, api, tutorial" 2. ✅ Update LICENSE copyright line - Changed from "Dynalist Inc." to "EmberSparks" (actual author) - Updated year to 2025 3. ✅ Remove "Obsidian" prefix from project headers - Updated README.md and README_en.md titles - "Obsidian" prefix is reserved for first-party products 4. ✅ Remove "in Obsidian" from manifest description - Simplified description as context is implicit 5. ✅ Icon already uses built-in 'star' icon - No changes needed, already compliant 6. ✅ No nth-child CSS selectors found - Already compliant Remaining issue: 7. ⏳ Language consistency (Chinese/English mix) - Needs discussion on implementation approach Related PR: https://github.com/obsidianmd/obsidian-releases/pull/7700 🤖 Generated with [Claude Code](https://claude.com/claude-code)
7.3 KiB
7.3 KiB
GitHub Stars Manager
本插件允许您直接在 Obsidian 中管理和查看您已加星标的 GitHub 仓库,支持多账号管理和自定义主题。
功能特性
- 📋 在 Obsidian 中查看所有已加星标的 GitHub 仓库
- 👥 多账号支持:支持添加多个 GitHub 账号,同时同步多个账号的星标
- 🏷️ 为仓库添加自定义标签和笔记
- 🔗 关联仓库到 Obsidian 笔记
- 🔄 自动或手动同步星标仓库
- 🔍 通过名称、语言、标签进行搜索和筛选
- 📊 按星标时间、名称、语言等多种方式排序
- 🎨 多种主题支持:默认主题和液态玻璃主题
- 🔄 账号管理:可单独启用/禁用特定账号的同步
- 🌊 液态玻璃主题:iOS 风格的毛玻璃效果,支持动态背景和光泽动画
- 📱 瀑布流布局:类似小红书的卡片展示方式
- ✨ 响应式设计,与 Obsidian 主题完美融合
配置
要使用此插件,您需要提供一个具有必要权限的 GitHub 个人访问令牌 (PAT),以便读取您已加星标的仓库。
如何获取 GitHub 个人访问令牌 (PAT):
- 登录 GitHub: 访问 github.com 并登录您的账户。
- 访问设置: 点击页面右上角的个人头像,然后选择 "Settings"。
- 开发者设置: 在左侧菜单栏中,滚动到底部,点击 "Developer settings"。
- 个人访问令牌: 在左侧菜单中,选择 "Personal access tokens",然后选择 "Tokens (classic)"。 (注意:请选择 Classic Token,Fine-grained tokens 可能需要更复杂的权限设置)
- 生成新令牌: 点击 "Generate new token" 按钮,然后选择 "Generate new token (classic)"。
- 令牌描述: 在 "Note" 字段中,为您的令牌添加一个描述性的名称,例如 "Obsidian Stars Manager"。
- 设置过期时间: 选择一个合适的过期时间 (Expiration)。为了安全起见,建议不要选择 "No expiration"。
- 选择范围 (Scopes): 这是最关键的一步。您需要授予此令牌访问您的仓库的权限。勾选
repo这个顶级复选框。这将自动选中其下的所有子权限,这是插件读取您的星标仓库所必需的。 - 生成令牌: 点击页面底部的 "Generate token" 按钮。
- 复制令牌: 重要! GitHub 只会显示一次完整的令牌。请立即点击复制按钮将其复制下来,并妥善保管。离开此页面后将无法再次看到完整的令牌。
- 在插件中使用: 将复制的令牌粘贴到 Obsidian 中 "GitHub Stars Manager" 插件设置选项卡里的 "GitHub 个人访问令牌 (PAT)" 字段中。
使用说明
- 安装并启用插件后,在左侧面板会出现一个 GitHub 星标图标
- 点击图标打开星标仓库视图
- 首次使用需要在设置中配置您的 GitHub PAT
- 点击"同步"按钮获取您的星标仓库
- 您可以为每个仓库添加个人笔记、标签,或关联到现有的 Obsidian 笔记
主题切换
插件提供两种视觉主题:
- 默认主题:简洁的卡片布局,与 Obsidian 原生主题保持一致
- 液态玻璃主题:iOS 风格的毛玻璃效果,具有以下特性:
- 🌈 彩色渐变背景,提供更好的视觉对比度
- ✨ 动态浮动动画背景效果
- 🔍 增强的毛玻璃模糊效果
- 💫 卡片悬停时的光泽扫过动画
- 📱 瀑布流布局,类似小红书的卡片展示
- 🎯 优化的字体渲染,避免悬停时的模糊问题
在插件界面顶部可以通过主题按钮快速切换。
安装
从 Obsidian 社区插件安装(推荐)
- 打开 Obsidian 设置
- 转到"社区插件"选项卡
- 搜索 "GitHub Stars Manager"
- 点击安装并启用插件
手动安装
- 下载最新版本的
main.js、manifest.json和styles.css - 将这些文件复制到您的保险库文件夹:
VaultFolder/.obsidian/plugins/obsidian-github-stars-manager/ - 重启 Obsidian
- 在设置中启用插件
开发
环境要求
- Node.js 16+
- npm 或 yarn
开发命令
# 安装依赖
npm install
# 开发模式(监听文件变化)
npm run dev
# 生产构建
npm run build
# 版本升级
npm run version
技术栈
- TypeScript: 类型安全的 JavaScript 超集
- Obsidian API: 插件开发框架
- GitHub REST API: 通过 @octokit/rest 访问 GitHub 数据
- CSS3: 现代样式和动画效果
- esbuild: 快速的 JavaScript 打包工具
本地开发环境配置
为了在本地开发和调试插件,您需要配置一个环境变量,指向您的 Obsidian 插件目录。这样,当您运行 npm run dev 或 npm run build 时,插件文件会自动部署到您的 Obsidian Vault 中。
- 创建
.env文件: 复制项目根目录下的.env.example文件,并将其重命名为.env。 - 配置插件目录: 打开
.env文件,将OBSIDIAN_PLUGIN_DIR的值修改为您本地的 Obsidian 插件目录的绝对路径。例如:OBSIDIAN_PLUGIN_DIR="D:/MyObsidianVault/.obsidian/plugins" - 重启开发服务器: 如果您正在运行
npm run dev,请重新启动它以加载新的环境变量。
项目结构
├── src/
│ ├── main.ts # 主插件类
│ ├── view.ts # 星标仓库视图
│ ├── settings.ts # 插件设置
│ ├── modal.ts # 编辑对话框
│ ├── githubService.ts # GitHub API 服务
│ └── types.ts # TypeScript 类型定义
├── main.ts # 插件入口点
├── manifest.json # 插件清单
├── styles.css # 样式文件
└── README.md # 说明文档
更新日志
v0.1.0 (当前版本)
- ✨ 初始版本发布
- 🎯 多账号 GitHub Stars 管理
- 🎨 液态玻璃主题支持
- 📱 响应式瀑布流布局
- 🔍 高级搜索和筛选功能
- 🏷️ 自定义标签和笔记功能
许可证
MIT License - 详见 LICENSE 文件
贡献
欢迎贡献代码!请遵循以下步骤:
- Fork 本仓库
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
支持
如果您觉得这个插件对您有帮助,可以考虑:
- ⭐ 给项目点个星标
- 🐛 报告 Bug 或提出改进建议
- 💡 分享给其他 Obsidian 用户
- 💖 赞助开发者