npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

semantic-release-presets

v5.0.1

Published

Semantic release presets and plugins for various projects.

Downloads

309

Readme

semantic-release-presets

🔧 Semantic release presets and plugins for various projects.

This is not in any way connected or related to the official semantic-release group and only maintained by me and optimized for my usage with Gitlab.

From v2 on this project contains definitions for gitlab and github. They are identically but targeting the respecting platforms.

Usage

Register the package in your package.json as followed:

  ...

  "dependencies": {
    "semantic-release-presets": "{VERSION}",
    ...

Plugins

Currently two plugins are added:

MS Teams

This was forked from https://github.com/wagaru/semantic-release-teams and updated. Furthermore it was extended with ideas from https://github.com/yllieth/semantic-release-ms-teams .

If you do not want to use this plugin, but still want to use these presets you can set the environment variable TEAMS_WEBHOOK_DISABLED to true. This will skip the steps.

Nuget

Inspired by https://github.com/iFaxity/semantic-release-nuget and https://gitlab.com/dmoonfire/semantic-release-nuget.

Custom changelog

This is very specific for my own requirements. By default this is switched off.

If you do want to use the plugin, you have to set the environment variable CUSTOM_CHANGELOG_ENABLED to true.

Presets

These presets make certain assumptions regarding your project setup. Please check them carefully if they apply to your workflows. If they do not match 100% you still can get some inspiration and adjust your configuration to your needs.

Following presets can be used:

GitHub

Full

| Name | Description | Category | | --- | --- | --- | | .releaserc.full.json | Semantic release configuration with full usage configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance, full | | .releaserc.main-full.json | Semantic release configuration with full usage configured to run on main branch | main, full | | .releaserc.dev-full.json | Semantic release configuration with full usage configured to run on dev branch | dev, full |

No NPM publish (Node)

| Name | Description | Category | | --- | --- | --- | | .releaserc.noNpmPublish.json | Semantic release configuration with full usage, but without npm publish, to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance | | .releaserc.main-noNpmPublish.json | Semantic release configuration with full usage, but without npm publish, to run on main branch | main | | .releaserc.dev-noNpmPublish.json | Semantic release configuration with full usage, but without npm publish, to run on dev branch | dev |

Deno

| Name | Description | Category | | --- | --- | --- | | .releaserc.deno.json | Semantic release configuration for deno configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance, deno | | .releaserc.main-deno.json | Semantic release configuration for deno configured to run on main branch | main, deno | | .releaserc.dev-deno.json | Semantic release configuration for deno configured to run on dev branch | dev, deno |

.NET

| Name | Description | Category | | --- | --- | --- | | .releaserc.dotnet.json | Semantic release configuration for dotnet configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance, dotnet | | .releaserc.main-dotnet.json | Semantic release configuration for dotnet configured to run on main branch | main, dotnet | | .releaserc.dev-dotnet.json | Semantic release configuration for dotnet configured to run on dev branch | dev, dotnet |

Nuget

| Name | Description | Category | | --- | --- | --- | | .releaserc.nuget.json | Semantic release configuration for nuget configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance, nuget | | .releaserc.main-nuget.json | Semantic release configuration for nuget configured to run on main branch | main, nuget | | .releaserc.dev-nuget.json | Semantic release configuration for nuget configured to run on dev branch | dev, nuget |

Python

| Name | Description | Category | | --- | --- | --- | | .releaserc.python.json | Semantic release configuration for python configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance, python | | .releaserc.main-python.json | Semantic release configuration for python configured to run on main branch | main, python | | .releaserc.dev-python.json | Semantic release configuration for python configured to run on dev branch | dev, python |

Swagger

| Name | Description | Category | | --- | --- | --- | | .releaserc.swagger.json | Semantic release configuration with full usage, but without npm publish, configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support. An additional step to update the version in a swagger.yaml file (in root) is added | main, dev, alpha, beta, next, maintenance, swagger | | .releaserc.main-swagger.json | Semantic release configuration with full usage, but without npm publish, configured to run on main branch. An additional step to update the version in a swagger.yaml file (in root) is added | main, swagger | | .releaserc.dev-swagger.json | Semantic release configuration with full usage, but without npm publish, configured to run on dev branch. An additional step to update the version in a swagger.yaml file (in root) is added | dev, swagger |

Gitlab

Full

| Name | Description | Category | | --- | --- | --- | | .releaserc.full.json | Semantic release configuration with full usage configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance, full | | .releaserc.main-full.json | Semantic release configuration with full usage configured to run on main branch | main, full | | .releaserc.dev-full.json | Semantic release configuration with full usage configured to run on dev branch | dev, full |

No NPM publish (Node)

| Name | Description | Category | | --- | --- | --- | | .releaserc.noNpmPublish.json | Semantic release configuration with full usage, but without npm publish, to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance | | .releaserc.main-noNpmPublish.json | Semantic release configuration with full usage, but without npm publish, to run on main branch | main | | .releaserc.dev-noNpmPublish.json | Semantic release configuration with full usage, but without npm publish, to run on dev branch | dev |

Deno

| Name | Description | Category | | --- | --- | --- | | .releaserc.deno.json | Semantic release configuration for deno configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance, deno | | .releaserc.main-deno.json | Semantic release configuration for deno configured to run on main branch | main, deno | | .releaserc.dev-deno.json | Semantic release configuration for deno configured to run on dev branch | dev, deno |

.NET

| Name | Description | Category | | --- | --- | --- | | .releaserc.dotnet.json | Semantic release configuration for dotnet configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance, dotnet | | .releaserc.main-dotnet.json | Semantic release configuration for dotnet configured to run on main branch | main, dotnet | | .releaserc.dev-dotnet.json | Semantic release configuration for dotnet configured to run on dev branch | dev, dotnet |

Nuget

| Name | Description | Category | | --- | --- | --- | | .releaserc.nuget.json | Semantic release configuration for nuget configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance, nuget | | .releaserc.main-nuget.json | Semantic release configuration for nuget configured to run on main branch | main, nuget | | .releaserc.dev-nuget.json | Semantic release configuration for nuget configured to run on dev branch | dev, nuget |

Python

| Name | Description | Category | | --- | --- | --- | | .releaserc.python.json | Semantic release configuration for python configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support | main, dev, alpha, beta, next, maintenance, python | | .releaserc.main-python.json | Semantic release configuration for python configured to run on main branch | main, python | | .releaserc.dev-python.json | Semantic release configuration for python configured to run on dev branch | dev, python |

Swagger

| Name | Description | Category | | --- | --- | --- | | .releaserc.swagger.json | Semantic release configuration with full usage, but without npm publish, configured to run on branches main and dev as well as n.x.x (maintenance) and with alpha, beta, next and maintenance support. An additional step to update the version in a swagger.yaml file (in root) is added | main, dev, alpha, beta, next, maintenance, swagger | | .releaserc.main-swagger.json | Semantic release configuration with full usage, but without npm publish, configured to run on main branch. An additional step to update the version in a swagger.yaml file (in root) is added | main, swagger | | .releaserc.dev-swagger.json | Semantic release configuration with full usage, but without npm publish, configured to run on dev branch. An additional step to update the version in a swagger.yaml file (in root) is added | dev, swagger |

Recommendation

Based on your git knowledge and application or package release cycle, different configurations might be best suited for you:

Package and advanced Git knowledge (rebasing, branching)

If you are an advanced git user with rebasing and branching knowledge and maintain an npm or dotnet package, the configurations .releaserc.full.json or .releaserc.nuget.json might be beneficial for you.
They provide support for normal version publishing, pre-releases and maintenance handling.
Branches:

  • main: normal version publishing
  • dev: beta releases
  • alpha: alpha releases
  • N.x.x: maintenance handling (e.g. 1.x.x handles all version 1 maintenance releases)

Package with basic Git knowledge

If you have basic git knowledge and maintain an npm or dotnet package, the configurations .releaserc.main-full.json or .releaserc.main-nuget.json might be beneficial for you.
They provide support for normal version publishing on branch main.

Application development

If you mainain an application you can check the configurations with main or dev in the name. They define the branch the release will be triggered.
Most suitable should be the dev handling. This means you develop and release on this branch and merge into main for manual deployment.

Usage

Add it to your .releaserc.json:

{
  "extends": "semantic-release-presets/presets/github/.releaserc.full.json"
}

Support

| | | :---: | | Jonas Schubert |