{"id":15652107,"url":"https://github.com/technote-space/gh-actions-template","last_synced_at":"2025-04-30T20:08:03.138Z","repository":{"id":35410215,"uuid":"205171703","full_name":"technote-space/gh-actions-template","owner":"technote-space","description":"Template for GitHub Actions","archived":false,"fork":false,"pushed_at":"2023-01-09T05:52:00.000Z","size":23047,"stargazers_count":32,"open_issues_count":1,"forks_count":5,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-30T20:07:55.651Z","etag":null,"topics":["github-actions","template"],"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/technote-space.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null},"funding":{"custom":"https://paypal.me/technote0space"}},"created_at":"2019-08-29T13:35:38.000Z","updated_at":"2024-12-19T08:13:41.000Z","dependencies_parsed_at":"2023-01-15T20:28:15.290Z","dependency_job_id":null,"html_url":"https://github.com/technote-space/gh-actions-template","commit_stats":{"total_commits":543,"total_committers":4,"mean_commits":135.75,"dds":0.576427255985267,"last_synced_commit":"75c700085cd8688aacf6ac568eb54142bdbb799e"},"previous_names":[],"tags_count":144,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technote-space%2Fgh-actions-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technote-space%2Fgh-actions-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technote-space%2Fgh-actions-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technote-space%2Fgh-actions-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/technote-space","download_url":"https://codeload.github.com/technote-space/gh-actions-template/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251774896,"owners_count":21641731,"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-actions","template"],"created_at":"2024-10-03T12:41:22.431Z","updated_at":"2025-04-30T20:08:03.116Z","avatar_url":"https://github.com/technote-space.png","language":"TypeScript","funding_links":["https://paypal.me/technote0space"],"categories":[],"sub_categories":[],"readme":"# GitHub Actions Template\n\n[![CI Status](https://github.com/technote-space/gh-actions-template/workflows/CI/badge.svg)](https://github.com/technote-space/gh-actions-template/actions)\n[![codecov](https://codecov.io/gh/technote-space/gh-actions-template/branch/master/graph/badge.svg)](https://codecov.io/gh/technote-space/gh-actions-template)\n[![CodeFactor](https://www.codefactor.io/repository/github/technote-space/gh-actions-template/badge)](https://www.codefactor.io/repository/github/technote-space/gh-actions-template)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/technote-space/gh-actions-template/blob/master/LICENSE)\n\nTemplate for GitHub actions.\n\n## Table of Contents\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n\u003cdetails\u003e\n\u003csummary\u003eDetails\u003c/summary\u003e\n\n- [Setup](#setup)\n  - [yarn](#yarn)\n  - [npm](#npm)\n- [Workflows](#workflows)\n  - [ci.yml](#ciyml)\n  - [add-version-tag.yml](#add-version-tagyml)\n  - [toc.yml](#tocyml)\n  - [issue-opened.yml](#issue-openedyml)\n  - [pr-opened.yml](#pr-openedyml)\n  - [pr-updated.yml](#pr-updatedyml)\n  - [project-card-moved.yml](#project-card-movedyml)\n  - [broken-link-check.yml](#broken-link-checkyml)\n  - [update-dependencies.yml](#update-dependenciesyml)\n  - [add-test-tag.yml](#add-test-tagyml)\n  - [Secrets](#secrets)\n- [Test release](#test-release)\n- [Helpers](#helpers)\n- [Author](#author)\n\n\u003c/details\u003e\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n## Setup\n### yarn\n- `yarn setup`\n### npm\n- `npm run setup`\n\n## Workflows\n\nSome `workflows` are included by default.  \n\n### ci.yml\nCI Workflow\n\n1. ESLint\n1. Jest\n   - Send coverage report to codecov if `CODECOV_TOKEN` is set.\n1. Release GitHub Actions\n   - if tag is added.\n1. Publish package\n   - if tag is added and `NPM_AUTH_TOKEN` is set.\n1. Publish release\n   - if 3 and 4 jobs are succeeded.\n1. Notify by slack\n   - if workflow is failure\n\n[ACCESS_TOKEN](#access_token) is required.  \n[SLACK_WEBHOOK_URL](#slack_webhook_url) is required.  \n\n### add-version-tag.yml\nAdd the release tag when pull request is merged.\n\n1. Get next version from commits histories.  \n   see [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/)\n1. Add tag.\n1. Create branch for next version.\n\n[ACCESS_TOKEN](#access_token) is required.\n\n### toc.yml\nCreate TOC (Table of contents)\n\n[ACCESS_TOKEN](#access_token) is required.\n\n### issue-opened.yml\n- Assign the issue to project  \n   default setting:  \n   ```\n   Project: Backlog\n   Column: To do\n   ```\n- Assign author to issue\n\n### pr-opened.yml\n- Assign the PR to project  \n   default setting:  \n   ```\n   Project: Backlog\n   Column: In progress\n   ```\n   [ACCESS_TOKEN](#access_token) is required.\n- Assign author to PR\n- Add labels by branch  \n   [setting](.github/pr-labeler.yml)\n\n### pr-updated.yml\n- Add labels by changed files\n   [setting](.github/labeler.yml)\n- Create PR histories\n- Manage PR by release type  \n   [ACCESS_TOKEN](#access_token) is required.\n- Check version in package.json  \n   [ACCESS_TOKEN](#access_token) is required.\n- Check if it can be published to npm  \n   if `NPM_AUTH_TOKEN` is set\n\n### project-card-moved.yml\nManage labels by moving project cards\n\n### broken-link-check.yml\nCheck broken link in README\n\n### update-dependencies.yml\nUpdate package dependencies\n\n- schedule\n- PR opened, closed\n- repository dispatch\n\n### add-test-tag.yml\nAdd tag for test release\n\n### Secrets\n#### ACCESS_TOKEN\n[Personal access token](https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line) with the public_repo or repo scope  \n(repo is required for private repositories)\n\n#### SLACK_WEBHOOK_URL\nhttps://api.slack.com/messaging/webhooks\n\n## Test release\n[![technote-space/release-github-actions-cli - GitHub](https://gh-card.dev/repos/technote-space/release-github-actions-cli.svg)](https://github.com/technote-space/release-github-actions-cli)\n\n1. Create `.env`  \n   Set [Personal access token](https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line)\n   ```dotenv\n   token=1234567890abcdef1234567890abcdef12345678\n   ```\n1. Run `yarn release`\n   - Dry run: `yarn release -n`\n   - Help: `yarn release -h`\n\n![cli](https://github.com/technote-space/gh-actions-template/raw/images/cli.gif)\n\nThen, you can use your `GitHub Actions` like follows:\n\n```yaml\non: push\nname: Test\njobs:\n  toc:\n    name: Test\n    runs-on: ubuntu-latest\n    steps:\n      - uses: owner/repo@gh-actions\n```\n\n## Helpers\n[![technote-space/github-action-helper - GitHub](https://gh-card.dev/repos/technote-space/github-action-helper.svg)](https://github.com/technote-space/github-action-helper)\n\n[![technote-space/github-action-test-helper - GitHub](https://gh-card.dev/repos/technote-space/github-action-test-helper.svg)](https://github.com/technote-space/github-action-test-helper)\n\n[![technote-space/filter-github-action - GitHub](https://gh-card.dev/repos/technote-space/filter-github-action.svg)](https://github.com/technote-space/filter-github-action)\n\n## Author\n[GitHub (Technote)](https://github.com/technote-space)  \n[Blog](https://technote.space)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechnote-space%2Fgh-actions-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftechnote-space%2Fgh-actions-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechnote-space%2Fgh-actions-template/lists"}