Show HN: Releasepages.dev turn your commits to release pages
My name is Kam, I’m the author of Release Pages. I made a simple app that takes your GitHub commits and turns them in to release pages. See (react.releasepages.dev). I decided to build this after I’ve had customers in the past ask about how to stay updated to the product. I wanted a simple place for people to view releases and change logs without having to manually write and update them. The workflow right now is pretty simple you add a GitHub action file in your repository that runs git log and a curl command to my api. Then you choose a release cadence i.e weekly, bi-weekly, or monthly. On those cadences we group your commits and generate release notes for you. In total I’ve tested it out with a few friends the onboarding flow takes less than 5 minutes.
I decided to use a GitHub workflow setup instead of an Oauth flow in the beginning because Github api doesn’t have granular enough permissions to only fetch the git commit messages. The minimum permission I could get for the commit messages was entire repo read access. I wanted to make sure I’d only fetch the minimum information for first version for private repositories. For future versions and in particular for open source and less privacy concern projects I’d want to support a simple Oauth integration which would make onboarding easier.
Some technical notes: I built this with react, typescript, tailwind, shadcn, Nextjs, Postgres. I spent quite a bit of time trying to figure out a clean way of sending git commit with minimal code so that it was easily legible to developers. Since onboarding process requires to run some commands I’d wanted to make sure that it was clear what the code was doing. The core command boiled down to: ``` git log -10 --pretty=format:"%H<SEP>%s<SEP>%an<SEP>%ad" --date=iso > commits.csv curl -X POST -H "RELEASE_PAGE_SECRET" --data-binary @commits.csv https://www.releasepages.dev/api/webhooks/github ``` I spent a day or two wrestling with trying to get a clean one liner with json and csv. The problems became the escaping character regex became more and more complicated. Eventually I realized I could just use custom delimiters for css which made the entire problem much simpler.
The current version is free. In the future I want to release a version where you can upgrade to your own domain and custom branding. Additionally I want to support an automatic newsletter generation as well with the releases and commits to automate this entire flow. I’ve had customers ask for a release newsletter but I never had the time to put one together. The goal here is to automate some of the manual workflow around customer communication.
This is a really early version of the product so would love any feedback. Please email me at help@releasepages.dev if you have any issues or would like to get updates when we get the premium versions
Check it out at https://releasepages.dev
No comments yet