{"id":28444085,"url":"https://github.com/assemblyscript/aspublish","last_synced_at":"2025-06-29T14:31:07.624Z","repository":{"id":57184918,"uuid":"306964939","full_name":"AssemblyScript/aspublish","owner":"AssemblyScript","description":"Minimalist publishing tool for GitHub and npm.","archived":false,"fork":false,"pushed_at":"2022-01-29T14:23:27.000Z","size":24,"stargazers_count":5,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-24T21:44:08.003Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/AssemblyScript.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":"2020-10-24T20:21:58.000Z","updated_at":"2024-04-24T20:21:05.000Z","dependencies_parsed_at":"2022-09-14T08:50:42.341Z","dependency_job_id":null,"html_url":"https://github.com/AssemblyScript/aspublish","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/AssemblyScript/aspublish","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AssemblyScript%2Faspublish","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AssemblyScript%2Faspublish/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AssemblyScript%2Faspublish/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AssemblyScript%2Faspublish/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AssemblyScript","download_url":"https://codeload.github.com/AssemblyScript/aspublish/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AssemblyScript%2Faspublish/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262608570,"owners_count":23336529,"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":"2025-06-06T08:40:41.015Z","updated_at":"2025-06-29T14:31:07.606Z","avatar_url":"https://github.com/AssemblyScript.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"aspublish\n=========\n\n\u003ca href=\"https://github.com/AssemblyScript/aspublish/actions?query=workflow%3APublish\"\u003e\u003cimg src=\"https://img.shields.io/github/workflow/status/AssemblyScript/aspublish/Publish/master?label=publish\u0026logo=github\" alt=\"Publish status\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://www.npmjs.com/package/aspublish\"\u003e\u003cimg src=\"https://img.shields.io/npm/v/aspublish.svg?label=aspublish\u0026color=007acc\u0026logo=npm\" alt=\"npm version\" /\u003e\u003c/a\u003e\n\nMinimalist publishing tool for GitHub and npm. Generates a changelog, makes a GitHub release of it, and publishes the package to npm.\n\nUsage\n-----\n\nSet `GITHUB_TOKEN` and `NPM_TOKEN` as environment variables.\n\nTo create a release on GitHub and publish the package to npm:\n\n```sh\nnpx aspublish\n```\n\nMay also obtain just the next version that will be created, if necessary:\n\n```sh\nnpx aspublish --version\n```\n\nThe returned version is empty if no release has been triggered.\n\nNote that npm `postversion` etc. scripts will also run normally, and that the version number in `package.json` is irrelevant (may just be `0.0.0`).\n\nCommit format\n-------------\n\nPrefix either the commit subject or body:\n\nPrefix      | Release type | Pre 1.0.0          | Post 1.0.0\n------------|--------------|--------------------|---------------\n`breaking:` | Major        | `0.1.0` -\u003e `0.2.0` | `1.0.0` -\u003e `2.0.0`\n`feat:`     | Minor        | `0.1.0` -\u003e `0.1.1` | `1.0.0` -\u003e `1.1.0`\n`fix:`      | Patch        | `0.1.0` -\u003e `0.1.1` | `1.0.0` -\u003e `1.0.1`\n\nExcept a few [aliases and abbreviations](./config.js), other prefixes will not trigger a new version / release.\n\nExample\n-------\n\nAs a step during GitHub Actions:\n\n```yml\n- name: Make release\n  env:\n    GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n    NPM_TOKEN:  ${{ secrets.NPM_TOKEN }}\n  run: |\n    VERSION=$(npx aspublish --version)\n    if [ -z \"$VERSION\" ]; then\n      echo \"Changes do not trigger a release\"\n    else\n      echo \"Publishing new version: $VERSION\"\n      npx aspublish\n    fi\n```\n\nOr, if obtaining the version upfront is not necessary:\n\n```yml\n- name: Make release\n  env:\n    GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n    NPM_TOKEN:  ${{ secrets.NPM_TOKEN }}\n  run: npx aspublish\n```\n\nSee this repository's [publish.yml](.github/workflows/publish.yml) for a complete configuration (replace `node bin/aspublish.js` with `npx aspublish`).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fassemblyscript%2Faspublish","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fassemblyscript%2Faspublish","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fassemblyscript%2Faspublish/lists"}