{"id":16672539,"url":"https://github.com/hankei6km/reposition","last_synced_at":"2025-04-09T19:53:06.450Z","repository":{"id":80362157,"uuid":"603726485","full_name":"hankei6km/reposition","owner":"hankei6km","description":"reposition is a command line tool to send a repository list to Notion database.","archived":false,"fork":false,"pushed_at":"2025-04-08T10:44:28.000Z","size":711,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-08T11:32:46.753Z","etag":null,"topics":["github","notion"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hankei6km.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-19T11:58:26.000Z","updated_at":"2025-04-08T10:44:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"a5c49d7b-3f88-4425-8aec-d0df197b5001","html_url":"https://github.com/hankei6km/reposition","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hankei6km%2Freposition","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hankei6km%2Freposition/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hankei6km%2Freposition/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hankei6km%2Freposition/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hankei6km","download_url":"https://codeload.github.com/hankei6km/reposition/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248103914,"owners_count":21048245,"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":["github","notion"],"created_at":"2024-10-12T12:06:31.530Z","updated_at":"2025-04-09T19:53:06.426Z","avatar_url":"https://github.com/hankei6km.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# reposition\n\n`reposition` is a command line tool to send a repository list to Notion database.\n\n## Requirement\n\n- GitHub CLI with authenticated to GitHub\n- Notion Database\n- Notion Integration\n\n## Install\n\n```diff\nnpm install -g @hankei6km/reposition\n```\n\n## Setup\n\nCreate a database with following properties in Notion workspace.\n\n| name               | type           |\n| ------------------ | -------------- |\n| `title`            | `title`        |\n| `isPrivate`        | `checkbox`     |\n| `name`             | `text`         |\n| `owner`            | `text`         |\n| `url`              | `url`          |\n| `description`      | `text`         |\n| `repositoryTopics` | `multi_select` |\n| `createdAt`        | `date`         |\n| `updatedAt`        | `date`         |\n| `pushedAt`         | `date`         |\n\n## Usage\n\n```bash\n$ export REPOSITION_API_KEY=\u003cIntegration API KEY\u003e\n$ export REPOSITION_DATABASE_ID=\u003cDatabase Id\u003e\n$ gh repo list \\\n  --json nameWithOwner,isPrivate,name,owner,url,description,repositoryTopics,createdAt,updatedAt,pushedAt,openGraphImageUrl \\\n  --jq .[] | reposition\n```\n\nAdd `-L` option to `gh` if you hava many repositories.\n\n```bash\n$ gh repo list -L 50 \\\n  --json nameWithOwner,isPrivate,name,owner,url,description,repositoryTopics,createdAt,updatedAt,pushedAt,openGraphImageUrl \\\n  --jq .[] | reposition\n```\n\nWhen updating the database, use the `--filter-time-range` option to reduce the number of repositories to be send.\n\n```bash\n$ gh repo list -L 50 \\\n  --json nameWithOwner,isPrivate,name,owner,url,description,repositoryTopics,createdAt,updatedAt,pushedAt,openGraphImageUrl \\\n  --jq .[] | reposition --filter-time-range 172800 # repositories updated(pushed) within 2 days.\n```\n\nNote: `reposition` does not have the function to remove pages from the database.\n\n## License\n\nMIT License\n\nCopyright (c) 2023 hankei6km\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhankei6km%2Freposition","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhankei6km%2Freposition","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhankei6km%2Freposition/lists"}