{"id":13659995,"url":"https://github.com/Souvikns/Notion-Board","last_synced_at":"2025-04-24T15:31:30.272Z","repository":{"id":42718207,"uuid":"378229615","full_name":"Souvikns/Notion-Board","owner":"Souvikns","description":"Sync GitHub issue to you notion database. ","archived":false,"fork":false,"pushed_at":"2022-03-27T16:33:22.000Z","size":9344,"stargazers_count":22,"open_issues_count":7,"forks_count":10,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-10-30T04:30:03.508Z","etag":null,"topics":["automation","github-actions","notion"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Souvikns.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-06-18T18:03:24.000Z","updated_at":"2024-07-13T20:32:57.000Z","dependencies_parsed_at":"2023-01-05T04:49:39.676Z","dependency_job_id":null,"html_url":"https://github.com/Souvikns/Notion-Board","commit_stats":{"total_commits":83,"total_committers":3,"mean_commits":"27.666666666666668","dds":0.08433734939759041,"last_synced_commit":"8870b730f05af0e1d95c35b2d4c1543308e67413"},"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Souvikns%2FNotion-Board","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Souvikns%2FNotion-Board/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Souvikns%2FNotion-Board/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Souvikns%2FNotion-Board/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Souvikns","download_url":"https://codeload.github.com/Souvikns/Notion-Board/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223555264,"owners_count":17164527,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","github-actions","notion"],"created_at":"2024-08-02T05:01:14.709Z","updated_at":"2024-11-10T13:31:36.392Z","avatar_url":"https://github.com/Souvikns.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003ch1\u003e\n\u003cimg src=\"./screenshots/iterative.png\" width=\"20\" /\u003e Notion Board\n\u003c/h1\u003e\n\n**Notion-Board** brings Notion and GitHub closer than before. Notion-board lets you sync your GitHub Issues with notion database, so whenever a new issue is opened or existing issue is updated in GitHub it syncs your notion database accordingly. \n\n\u003e Currently **Notion-Board** syncs issue title, lables and state. In future we are going to support more features so stay tuned. \n\nYou can try it out by opening a new issue in this repository and see it get synced in this [Notion Database](https://souvikns.notion.site/64bc98b98e6242c9bbc1cbedf9c93261?v=621cc0ced4614c56831a21f8cf974674). \n\n## Table of Contents \n- [Setup Guide](#setup-guide)\n  - [Setting up GitHub workflow](#setting-up-github-workflow)\n  - [Adding `env` Variables](#adding-env-variables)\n  - [Setting up Notion Database Properties](#setting-up-notion-database-properties)\n  - [Sync Your Existing Issues](#sync-your-existing-issues)\n- [Notion Template](#notion-template)\n- [Reporting Issues](#reporting-issues)\n- [Contributing](#contributing-guide)\n  - [Contributing Guide](#contributing-guide)\n    - [Getting Started Quick](#getting-started-quick)\n- [Community Support](#community-support)\n- [License](#license)\n\n\n## Setup Guide\nTo use **Notion-Board** you need to write a GitHub workflow and setup some unique properties in your notion database as well. In this guide we are going to help you setup Notion-board and get started. \n\n### Setting up GitHub workflow\nCreate a file `notion.yaml` in the foler `.github/workflows` and add these lines - \n\n```yaml\nname: Notion Board\non:\n  issues:\n  issue_comment:\n  workflow_dispatch:\n    inputs:\n      setup:\n        description: 'Populate your notion database with all the requried properties'\n        type: boolean\n      syncIssues:\n        description: 'sync all other existing issues in this repo'\n        type: boolean\n      issueType:\n        type: choice\n        description: 'The issue type you want to sync'\n        options:\n          - all\n          - open\n          - closed\n        default: open\njobs:\n  build:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v2\n      - name: Notion Board\n        uses: Souvikns/Notion-Board@2.2.0\n        with:\n          setup: ${{github.event.inputs.setup}}\n          syncIssues: ${{github.event.inputs.syncIssues}}\n          issueType: ${{github.event.inputs.issueType}}\n        env: \n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n          NOTION_API_KEY: ${{ secrets.NOTION_API_KEY }}\n          NOTION_DATABASE: ${{ secrets.NOTION_DATABASE }}\n          \n```\n\n### Adding `env` Variables\n\nNow you need to setup some `env` vairables for the workflow to run properly - \n\n|variable name | Description| Requried |\n|--------------|------------|----------|\n|`GITHUB_TOKEN`|Github workflow token, this is added by default| `true`|\n|`NOTION_API_KEY`| Notion Integration token|`true`|\n|`NOTION_DATABASE`| Notion Daatabase ID| `true`|\n\n- To learn how to add cusotom env variables follow [this blog](https://damienaicheh.github.io/github/actions/2021/04/15/environment-variables-secrets-github-actions-en.html).\n\n- To learn how you can create a new `notion integration api key` you can follow [this](https://developers.notion.com/docs/getting-started) step by step guide from Notion.\n\n- You can grab your notion `database id` from the url\n```\nhttps://www.notion.so/myworkspace/a8aec43384f447ed84390e8e42c2e089?v=...\n                                  |--------- Database ID --------|\n```\n\n- To get the url you can right click on the database name from the side bar and copy the link\n\n\u003cimg src=\"./screenshots/sidebar.png\" width=\"400\" /\u003e\n\n### Setting up Notion Database Properties \nNow that you have successfully completed setting up GitHub side of things you have to add some requried [notion properties](https://www.notion.so/help/guides/database-properties-help-organize-your-teams-information) for **Notion-Board** to run properly. \n\n**Notion Properties** \n|Property| Type|\n|--------|-----|\n|State| `Select`|\n|URL| `url`|\n|Label| `multi-select`|\n|ID| `number`|\n\nYou can also use the notion `workflow_dispatch` to automatically setup your notion database\n**Steps**\n- Just head over to the `actions` tab and go to `Notion Board` workflow\n- click the `Run workflow` button and select the first option that you see. \n\u003cimg src=\"./screenshots/run_workflow.png\" width=\"400\" /\u003e\n- This will create the requried properties in your notion database. \n\n### Sync Your Existing Issues\nIf you are adding **Notion-Board** to project that already has some existing issue, you have to set them up manually. All you have to do is run the `workflow` with `sync all other existing issues in this repo` checked. \n\n\u003cimg src=\"./screenshots/sync.png\" width=\"400\" /\u003e\n\n---\n\n## Notion Template\n\u003e I hope to make a list of different useful notion templates for you to pick from, you can even submit the one you are using by opening a new Issue. \n\nHere is a simple barebones [Notion Template](https://souvikns.notion.site/64bc98b98e6242c9bbc1cbedf9c93261?v=621cc0ced4614c56831a21f8cf974674) that you can duplicate to quickly get started. You can also share your notion template that you are using by opening a new issue and we can create a notion template library right here. \n\n**Notion Templates**\n- [Minimal](https://souvikns.notion.site/64bc98b98e6242c9bbc1cbedf9c93261?v=621cc0ced4614c56831a21f8cf974674)\n- More coming soon...\n\n## Reporting Issues\nCurrently **Notion-Board** is under development and it has a lot of bugs that we are fixing as they come up. Feel free to let us know if you find and bug, it would help the tool get better. I report a bug just open a [Issue](https://github.com/Souvikns/Notion-Board/issues) describing the bug. \n\n## Contributing\nPlease take a moment to read our [contributing guide](#contributing-guide) to learn about our development process. I would suggest to open an [issue](https://github.com/Souvikns/Notion-Board/issues) first to discuss potential changes/addition.\n\n### Contributing Guide\nThis project is build using [typescript](https://www.typescriptlang.org/) so you need to have [nodeJS](https://nodejs.org/en/) installed in your system. You can download nodeJS from [here](https://nodejs.org/en/download/). \n\n#### Getting Started Quick \nIn order to contribute to this project, you should:\n\n1. Clone this repository from your fork \n2. Run `npm install` in the project directory to install all the requried dependencies. (You have to have npm on your system, if you have nodejs you most probably have npm installed as well)\n3. Create a new branch with a meaningful name. \n4. Develop a new feature or fix a bug you want. \n5. Open a pull request to the `main` branch\n  - Remember to build and package the code before you commit run -\n    - `npm run build` \n    - `npm run package` \n\n\n## Community Support \nCurrently [I](https://github.com/Souvikns/) am the sole maintainer of the project, you can star this project to follow it's development. Feel free to open issues for any new feature that you want, and I will try to build it. Feel free to fork the project and build the feature for yourself if I am too slow. \n\n\n## License\nThis software is licensed under Apache-2.0, see the [LICENSE](./LICENSE) file for more information. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSouvikns%2FNotion-Board","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSouvikns%2FNotion-Board","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSouvikns%2FNotion-Board/lists"}