{"id":13756358,"url":"https://github.com/travi/github-scaffolder","last_synced_at":"2025-03-17T15:30:20.603Z","repository":{"id":33151276,"uuid":"146847963","full_name":"travi/github-scaffolder","owner":"travi","description":"VCS scaffolder for projects to be hosted on GitHub","archived":false,"fork":false,"pushed_at":"2024-05-22T14:29:17.000Z","size":15864,"stargazers_count":1,"open_issues_count":7,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-05-22T18:31:55.214Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://npm.im/@travi/github-scaffolder","language":"JavaScript","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/travi.png","metadata":{"funding":{"github":"travi","patreon":"travi","open_collective":"travi"},"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":"2018-08-31T05:56:59.000Z","updated_at":"2024-05-28T22:55:59.859Z","dependencies_parsed_at":"2023-09-22T03:07:36.964Z","dependency_job_id":"e008aea4-a6f7-4903-9682-86f3014c820e","html_url":"https://github.com/travi/github-scaffolder","commit_stats":null,"previous_names":[],"tags_count":66,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travi%2Fgithub-scaffolder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travi%2Fgithub-scaffolder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travi%2Fgithub-scaffolder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travi%2Fgithub-scaffolder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/travi","download_url":"https://codeload.github.com/travi/github-scaffolder/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243864822,"owners_count":20360360,"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":[],"created_at":"2024-08-03T11:00:42.912Z","updated_at":"2025-03-17T15:30:20.176Z","avatar_url":"https://github.com/travi.png","language":"JavaScript","funding_links":["https://github.com/sponsors/travi","https://patreon.com/travi","https://opencollective.com/travi"],"categories":["Scaffolding"],"sub_categories":["Official"],"readme":"# github-scaffolder\n\n\u003e [!WARNING]\n\u003e This package has been deprecated in favor of [`@form8ion/github`](https://github.com/form8ion/github)\n\nVCS scaffolder for projects to be hosted on GitHub\n\n\u003c!--status-badges start --\u003e\n\n[![Codecov][coverage-badge]][coverage-link]\n[![Node CI Workflow Status][github-actions-ci-badge]][github-actions-ci-link]\n![SLSA Level 2][slsa-badge]\n\n\u003c!--status-badges end --\u003e\n\n## Table of Contents\n\n* [Features](#features)\n  * [Creation of GitHub repository](#creation-of-github-repository)\n  * [Configuration of GitHub Repository](#configuration-of-github-repository)\n  * [Filing of issues](#filing-of-issues)\n* [Usage](#usage)\n  * [Installation](#installation)\n  * [Enabling actions against the GitHub API](#enabling-actions-against-the-github-api)\n  * [Enabling repository configuration with `probot/settings`](#enabling-repository-configuration-with-probotsettings)\n    * [Account-level settings](#account-level-settings)\n  * [Example](#example)\n    * [Import](#import)\n    * [Scaffold](#scaffold)\n  * [API](#api)\n    * [`projectRoot` __string__ (_required_)](#projectroot-string-required)\n    * [`name` __string__ (_required_)](#name-string-required)\n    * [`owner` __string__ (_required_)](#owner-string-required)\n    * [`description` __string__ (_optional_)](#description-string-optional)\n    * [`homepage` __string__ (_optional_)](#homepage-string-optional)\n    * [`visibility` __string__ (_optional_)](#visibility-string-optional)\n    * [`tags` __list of strings__ (_optional_)](#tags-list-of-strings-optional)\n    * [`nextSteps` __list of objects__ (_optional_)](#nextsteps-list-of-objects-optional)\n      * [`summary` __string__ (_required_)](#summary-string-required)\n      * [`description` __string__ (_optional_)](#description-string-optional-1)\n* [Contributing](#contributing)\n  * [Dependencies](#dependencies)\n  * [Verification](#verification)\n\n## Features\n\n### Creation of GitHub repository\n\nWhen [authentication is provided](#enabling-actions-against-the-github-api),\na repository will be created on GitHub, assuming one does not already exist.\n\n### Configuration of GitHub Repository\n\nThis tool configures repository settings by generating the settings file for\nuse by [probot/settings](https://github.com/probot/settings). The settings in\nthe file will be applied, along with those in the [account-level file](#account-level-settings),\nonce the generated file is pushed to GitHub in the default branch.\n\n### Filing of issues\n\nIssues will be created in the repository for tasks that should be completed\nafter acaffolding is complete\n\n## Usage\n\n\u003c!--consumer-badges start --\u003e\n\n[![npm][npm-badge]][npm-link]\n[![MIT license][license-badge]][license-link]\n![node][node-badge]\n\n\u003c!--consumer-badges end --\u003e\n\n### Installation\n\n```sh\n$ npm install @travi/github-scaffolder --prod\n```\n\n### Enabling actions against the GitHub API\n\nThis plugin leverages the [.netrc strategy](https://github.com/travi/octokit-auth-netrc)\nfor [octokit](https://github.com/octokit/rest.js/). Be sure to\n[add your personal access token](https://github.com/travi/octokit-auth-netrc#defining-your-token)\nto leverage the GitHub API integration benefits of this plugin.\n\n### Enabling repository configuration with `probot/settings`\n\n* Be sure to [install](https://github.com/apps/settings) for the user or\n  organization account that you are scaffolding the new project for.\n* Enable the settings app for all repositories in the account\n\n#### Account-level settings\n\nThe settings file generated by this tool assumes that it is extending an\n[account level config](https://github.com/probot/probot-config#recipes)\n\n* Ensure that you have created a `.github` repository in your account\n* Create an [account-level settings file](https://github.com/probot/settings#inheritance)\n  in the `.github` repository at the location `.github/settings.yml` within the\n  repository\n  * for an organization account, [this is a good example](https://github.com/form8ion/.github/blob/master/.github/settings.yml)\n  * for a user account, [this is a good example](https://github.com/travi/.github/blob/master/.github/settings.yml)\n\n### Example\n\n#### Import\n\n```javascript\nimport {scaffold} from '@travi/github-scaffolder';\n```\n\n#### Scaffold\n\n```javascript\n(async () =\u003e {\n  await scaffold({\n    projectRoot: process.cwd(),\n    name: 'foo',\n    owner: 'travi',\n    description: 'This is my awesome project',\n    homepage: 'https://github.com/travi/foo#README',\n    visibility: 'Public',\n    tags: ['foo', 'bar'],\n    nextSteps: [\n      {summary: 'Do not forget to do this!'},\n      {\n        summary: 'Remember to do that',\n        description: `Take these steps:\n- [ ] step 1\n- [ ] step 2`\n      }\n    ]\n  });\n})();\n```\n\n### API\n\n#### `projectRoot` __string__ (_required_)\n\npath to the root of the project\n\n#### `name` __string__ (_required_)\n\nName for the repository\n\n#### `owner` __string__ (_required_)\n\nName of the account for the repository\n\n#### `description` __string__ (_optional_)\n\nShort description of the project\n\n#### `homepage` __string__ (_optional_)\n\nURL of the project homepage\n\n#### `visibility` __string__ (_optional_)\n\nWhether the repository should be public or private. If provided, must be\n'Public' or 'Private'.\n\n#### `tags` __list of strings__ (_optional_)\n\nList of tags to be used as repository topics\n\n#### `nextSteps` __list of objects__ (_optional_)\n\nTODO list to be filed as issues\n\n##### `summary` __string__ (_required_)\n\nString to be used as the title of the created issue\n\n##### `description` __string__ (_optional_)\n\nMarkdown content for the in-depth description of the issue\n\n## Contributing\n\n\u003c!--contribution-badges start --\u003e\n\n[![Conventional Commits][commit-convention-badge]][commit-convention-link]\n[![Commitizen friendly][commitizen-badge]][commitizen-link]\n[![semantic-release][semantic-release-badge]][semantic-release-link]\n[![PRs Welcome][PRs-badge]][PRs-link]\n[![Renovate][renovate-badge]][renovate-link]\n\n\u003c!--contribution-badges end --\u003e\n\n### Dependencies\n\n```sh\n$ nvm install\n$ npm install\n```\n\n### Verification\n\n```sh\n$ npm test\n```\n\n[npm-link]: https://www.npmjs.com/package/@travi/github-scaffolder\n\n[npm-badge]: https://img.shields.io/npm/v/@travi/github-scaffolder?logo=npm\n\n[license-link]: LICENSE\n\n[license-badge]: https://img.shields.io/github/license/travi/github-scaffolder.svg\n\n[coverage-link]: https://codecov.io/github/travi/github-scaffolder\n\n[coverage-badge]: https://img.shields.io/codecov/c/github/travi/github-scaffolder?logo=codecov\n\n[commit-convention-link]: https://conventionalcommits.org\n\n[commit-convention-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n\n[commitizen-link]: http://commitizen.github.io/cz-cli/\n\n[commitizen-badge]: https://img.shields.io/badge/commitizen-friendly-brightgreen.svg\n\n[semantic-release-link]: https://github.com/semantic-release/semantic-release\n\n[semantic-release-badge]: https://img.shields.io/badge/semantic--release-angular-e10079?logo=semantic-release\n\n[PRs-link]: http://makeapullrequest.com\n\n[PRs-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg\n\n[renovate-link]: https://renovatebot.com\n\n[renovate-badge]: https://img.shields.io/badge/renovate-enabled-brightgreen.svg?logo=renovatebot\n\n[github-actions-ci-link]: https://github.com/travi/github-scaffolder/actions?query=workflow%3A%22Node.js+CI%22+branch%3Amaster\n\n[github-actions-ci-badge]: https://img.shields.io/github/actions/workflow/status/travi/github-scaffolder/node-ci.yml.svg?branch=master\u0026logo=github\n\n[node-badge]: https://img.shields.io/node/v/@travi/github-scaffolder?logo=node.js\n\n[slsa-badge]: https://slsa.dev/images/gh-badge-level2.svg\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftravi%2Fgithub-scaffolder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftravi%2Fgithub-scaffolder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftravi%2Fgithub-scaffolder/lists"}