Nyx is a powerful, flexible and extremely configurable semantic release tool. You can put release management on auto pilot regardless of the kind of project, languages, tools and technologies or you can control any aspect of release management manually. Preset configuration values let you get started in minutes without digging into detailed settings.
Nyx is the all in one tool that gives you integrated support for:
Want to embed the libraries into your own project instead? You're covered as they are published just for that. See the available libraries for more.
Browse the documentation for more. Check out the quick start guide to get Nyx running in minutes or see the developer guide if you're interested in using the libraries.
The project is open source and hosted on GitHub.
PATH
and (optionally) rename it to nyx
(or nyx.exe
on Windows)$ nyx --preset=simple --summary infer
branch = main
bump =
core version = true
latest version = false
new release = false
new version = false
scheme = SEMVER
timestamp = 1692276827782
current version = 1.2.3
previous version = 1.2.3
prime version = 1.2.3
This will not apply any change to your repository (as the infer command doesn't) but will give you a taste of what Nyx finds out. Here 1.2.3
is the version that Nyx has inferred from the commit history and will be the one it will tag and release with if you use other commands, like nyx --preset=simple publish
.
The simple preset is a streamlined configuration suitable for mainline only projects but you can replace it with your own configuration or override its values selectively.
From here:
nyx --help
for the synopsis or jump to the documentation--dry-run
modeAvailable for all platforms in the latest release assets.
If you like Nyx please consider showing the badge on your project page by inserting this snippet:
[![](https://img.shields.io/badge/powered%20by-Nyx-blue)](https://github.com/mooltiverse/nyx)