Kaddio Blog2025-04-23

Introducing our new changelog

A couple years ago we deployed our first changelog. It was great until we recently discovered that we had forgotten about it for about a year. We could do better.

So for a while we've been searching for a new solution, a changelog we don't need to forget about. We couldn't find it so we built it, and it goes like this.

Pull requests in private repo

We're using a vsc that you might have heard about, that has an API from which we can fetch our closed pull requests. When a pull request is closed and we label it with "changelog" it fulfills the fetch query and thus shows up in our changelog.

const withLabelChangelog = pulls.filter(
    (pr) => pr.merged_at && pr.labels.some((label) => label.name === 'changelog')
);

PR as rendered HTML

A nice feature with our vsc is that if we provide the header

Accept: 'application/vnd.github.html+json'

it adds body_html which is the first message in the PR rendered as HTML

By using Svelte's {@html body_html} we get a nice end result! Now this is a changelog solution that we actually can forget about.

Check it out at kaddio.com/changelog!

Show all posts