Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lcjnil/github-notion-star
https://github.com/lcjnil/github-notion-star
github github-actions notion
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/lcjnil/github-notion-star
- Owner: lcjnil
- Created: 2021-07-18T10:47:52.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-02-02T09:14:44.000Z (9 months ago)
- Last Synced: 2024-07-15T12:52:54.166Z (4 months ago)
- Topics: github, github-actions, notion
- Language: TypeScript
- Homepage:
- Size: 30.3 KB
- Stars: 121
- Watchers: 2
- Forks: 144
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# github-notion-star
使用 Notion 和 Github Actions 同步和管理你的 Github Star.
## Breaking Change
从 [#4](https://github.com/lcjnil/github-notion-star/issues/4) 版本开始,增加了 `Primary Language` 和 `Repository Topics` 两个参数(by @imfycc),需要在原有 database 中增加这两个选项,否则同步会失败。
## 功能
- (可选)支持全量同步所有的 star 到 notion
- (可选)支持使用 Github Actions 定时同步增量的 star 到 notion## 设置
- 在 Notion 上复制这个[模板](https://lcj.notion.site/Github-Notion-Star-f07e2f086e4d4f5b9f25693814c836de)
- Fork 当前的这个 Repo
- 在 Repo 的设置里面,新建一个名为 notion-sync 的 Environment,需要设置以下环境变量
- `NOTION_API_KEY` 申请的 Notion API 的 Key,注意,你的模板需要被共享给这个 API
- `NOTION_DATABASE_ID` 对应的 Notion Database ID
- `TOKEN_OF_GITHUB` Github 的用户 token,用于获取当前用户的 API除此之外,还可以修改环境变量的形式修改当前的配置,例如:
- `FULLSYNC_LIMIT` 全量同步的最大 Repo 个数,默认为 2000 个
- `PARTIALSYNC_LIMIT` 增量同步的最大 Repo 个数,每次增量同步会从后往前取若干条数据,默认为 10 个
- `REPO_TOPICS_LIMIT` Repo 添加的话题数量,默认取前 50 个需要在 `github/workflows/*.yml` 中,修改这个配置
如何找到 NOTION_API_KEY?
请参考:https://www.notion.so/Add-and-manage-integrations-with-the-API-910ac902372042bc9da38d48171269cd#eeaa235ffe834d4f9a89a5893398f341如何找到 NOTION DATABASE ID
请参考:https://stackoverflow.com/questions/67728038/where-to-find-database-id-for-my-database-in-notion如何申请 Github API TOKEN
请参考:https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token.这里不需要勾选任何权限。
## 开始同步
### (可选)全量同步
可以在当前的 Github Actions 里面找到 `FullSync Notion Star`,执行即可全部你之前所有的 Star 信息
### (可选)增量同步
1. (可选)当前默认的轮询时间是十分钟。如果你想要修改增量同步轮询的时间,需要修改 `.github/workflows/partial-sync.yml`,在 `on.schedule.cron` 里面设置你的轮询时间。
2. 在 Github Actions 里面开启 `Partial Sync Notion Star` (对于 Fork 的 repo,会自动禁用所有轮询的 Actions,所以需要手动开启)