Nyx
Nyx is a portable and extensible automatic semantic release tool with several availability options. With Nyx you can put release management on auto pilot regardless of the kind of project, languages, tools and technologies. You can use the tools out of the box or you can extend them with your own customizations or even build your own using the Nyx libraries.
Check out the documentation now for any further information.
Project Status
THE PROJECT IS IN ITS EARLY STAGES SO ONLY A FEW COMPONENTS HAVE BEEN RELEASED. PLEASE SEE THE DOCUMENTATION TO KNOW THE CURRENT STATUS
Nyx is a best effort project and we can't commit to a deadline. Stay tuned for updates and releases.
Features
- full Semantic Release (SemVer) compliance, with additional support for Maven version scheme
- version number consistency checks to avoid version conflicts and wrong ordering
- previous version history automatic detection
- automatic inference of next version by configurable rules using commit history messages and changelogs according to specific conventions (i.e. Conventional Commits)
- changelog and release notes generation
- early version number availability for complex workflows and pipelines
- support for official releases, pre-releases, post-releases (a.k.a. maintenance releases), non-releases (i.e. local builds, dirty workspaces etc)
- configurable branching model to support any kind of strategy, like GitFlow, GitHub Flow, GitLab Flow, OneFlow and custom ones
- support for CI/CD environments (i.e. GitHub Actions, GitLab CI/CD) and local environments
- release tagging and announcements, with native extensions for common platforms like GitHub Releases, GitLab Releases
- notifications and announcements
- plugin support
For more see the features documentation.
Availability
Nyx is available as:
- a command line executable tool:
- Java version (not yet available)
- Go version (not yet available)
- a Docker image (not yet released)
- a build tool plugin:
- for Gradle (not yet released)
- for Bazel (not yet available)
- a native CI/CD extension:
- for GitHub Actions (not yet available)
You can also embed parts of the Nyx implementation like:
- the Semantic Version library:
- Java version
- Go version (not yet available)
- the Core library:
- Java version (not yet available)
- Go version (not yet available)
You can extend Nyx by using its API:
- Java version (not yet available)
- Go version (not yet available)
For more see the availability documentation.
Quick Links
- Project:
- Documentation:
- Deliverables:
Badge
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)