About Release Notes

Intro

release-notes.com is a hub for hosted changelog pages. You can publish release notes via cli tool or with your favourite ci/cd pipeline and our api. Manage your subscriptions and receive update notifications.

Why?

Software development is only 50% about actually writing code. Maybe even more relevant is communication. Release notes are the best way to manifest and communicate updates like bug fixes or release announcements. Providing good release notes makes it possible for other people to keep track on software changes.

Platform

Release Notes is an open source platform for automated release notes management around traditional CHANGELOG files and our generalized Release Notes Schema Specification via CLI tools and a REST API. Our node lib is the first implementation of the JSON schema definition that should make porting libs to other languages easy.

Getting started

A good starting point is to subscribe to the release notes of this hub.

Subscribe to Release Notes

Therefore you create an account by signing up with your email address, your github or google account.

Upload your first CHANGELOG.md or release-notes.yml file and setup a release notes page.

Publish Release Notes

CLI Tool

If you like the console we have a cli tool for you:

$ yarn global add @release-notes/cli
// or
$ npm i -g @release-notes/cli
$ release-notes -h
release-notes <command> [args]

Commands:
  release-notes init [file]      Initialize release notes file
  release-notes convert [file]   Convert release notes to another format
  release-notes validate [file]  Validate release notes file
  release-notes publish [file]   Publish release notes file to the hub
                                 (https://release-notes.com)

Options:
  --version, -v  Show version number
  --help, -h     Show help

Formats

CHANGELOG.md

CHANGELOG or HISTORY files are commonly markdown files that describe changes between software versions. Badly, there is no CHANGELOG formatting standard, thus parsing changelogs is a real challenge. We try our best to support as many changelog dialects as possible. Check out our changelog parser if you have any issues.

The following example changelog follows the recommendations of keep a changelog.

# Release Notes of an awesome project
Awesome project makes your cli a better place.

## Unreleased

### Added
* Add more fancy stuff.
 
### Deprecated
* Deprecate some "not so awesome" command.

## 0.1.1 - 2017-10-30

### Fixed
* Do not overflow.

## 0.1.0 - 2017-10-30
The first release

### Added
* Introduce some awesomeness.

release-notes.yml

In order to make changelogs hackable we came up with an evolving yml schema specification.

title: Release Notes of an awesome project
description: >
  Awesome project makes your cli a better place.

releases:
- version: Unreleased
  added:
  - Add more fancy stuff.
  deprecated:
  - Deprecate some "not so awesome" command.
- version: 0.1.1
  date: 2017-10-30
  fixed:
  - title: Do not overflow.
    tags: ["Security"]
- version: 0.1.0
  date: 2017-10-30
  description: The first release
  added:
  - Introduce some awesomeness.