Schema NuGet package
The schema I use is available on NuGet as a package containing the schema expressed in F# records and decoders for use with Thoth.Json.Net. One of the biggest benefits of using Thoth.Json are its crystal clear error messages, explaining exactly what is wrong with the provided JSON files. This was really helpful for building the GitHub app.
GitHub Checks app
To help with the consistency of the releases.json
files, I created a GitHub app that runs a set of checks on every commit. It is implemented as a Giraffe web app, running on the free Azure App Service tier. To execute the checks, I created a small testing framework with support for tree structured tests on data objects, using the excellent Unquote library to provide clear error messages.