Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GithubX: 一个 Github 体验增强插件 #57

Open
riskers opened this issue Apr 24, 2022 · 0 comments
Open

GithubX: 一个 Github 体验增强插件 #57

riskers opened this issue Apr 24, 2022 · 0 comments
Labels
FE web 前端 tools 工具、小技巧

Comments

@riskers
Copy link
Owner

riskers commented Apr 24, 2022

最近开发了一款增强 Github 体验的 Chrome 插件 - GithubX

代码也开源了: https://github.com/riskers/github-plus-extension

痛点

解决了我个人的一个痛点:Github 原生对 stars 和 gists 无法分组和打标签,这样让我每次在查一些不常用库的时候,总是会花很长时间查找。

看看效果

可以在后台在 star 分组和打标签了:

然后在 github 页面展示出来:

上面是对已经 star 过的项目,如果你有新的 star,会自动弹窗让你操作:

自我总结

这个项目其实应该 2 年前就做完了,一直拖到现在,也主要是自己的拖验症比较严重。

这次迭代了 3 个版本,差不多 2 周一个版本,主要用业务时间来做这件事情。

学到了什么

复盘

这次技术选型的思考:一开始想得太多,导致进度很慢。

  1. 存储选型

    最开始本地数据是存在 localStorage 里的,不过后面分组的时候,要做到类似 One To Many 的关系查询,会很麻烦,我勉强克服了。直到要打标签的时候,我绝望了,因为这是 Many To Many 关系,用 localStorage 太麻烦了。于是,使用 indexedDB 解决这种问题。

  2. 状态管理选型

    一开始我认为这只是一个小项目,没打算上 redux。所有的状态管理都放在 context 里,结果,因为数据管理太复杂,使用 context 反而让状态越来越复杂,得不偿失,于是用 redux 替换。查看这个 commit会更清楚。

说了这么多,如果你感兴趣,不妨试试吧。下载地址


向我捐助 | 关于我 | 工作机会


@riskers riskers added FE web 前端 tools 工具、小技巧 端周边 labels Apr 24, 2022
Repository owner deleted a comment from codeLiuFang Apr 24, 2022
Repository owner deleted a comment from WWBingBing Apr 24, 2022
@riskers riskers removed the 端周边 label Sep 2, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
FE web 前端 tools 工具、小技巧
Projects
None yet
Development

No branches or pull requests

1 participant