Testing in production: using JSON Schema for 3rd party API response validation

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Civic Auth - Auth in Less Than 5 Minutes
Civic Auth comes with multiple SSO options, optional embedded wallets, and user management — all implemented with just a few lines of code. Start building today.
www.civic.com
featured
SurveyJS - JavaScript Form Builder with No-Code UI & Built-In JSON Schema Editor
Add the SurveyJS white-label form builder to your JavaScript app (React/Angular/Vue3). Build complex JSON forms without coding. Fully customizable, works with any backend, perfect for data-heavy apps. Learn more.
surveyjs.io
featured
  1. ts-json-schema-generator

    Generate JSON schema from your Typescript sources

    Most people do not write JSON Schema by hand. Typescript is one of the popular tools: https://github.com/vega/ts-json-schema-generator

  2. Civic Auth

    Auth in Less Than 5 Minutes. Civic Auth comes with multiple SSO options, optional embedded wallets, and user management — all implemented with just a few lines of code. Start building today.

    Civic Auth logo
  3. typescript-json-validator

    Automatically generate a validator using JSON Schema and AJV for any TypeScript type.

    I used https://github.com/ForbesLindesay/typescript-json-validator for a service I built recently. It parses TS types and turns them into a validator function - seems to work very well so far.

    There’s a conversion of the typ to JSON schema under the hood.

  4. schema

    FrontAid CMS Schema (by frontaid)

    > As a side note, what do people think about JSON schema? I find it quite verbose and cumbersome

    Agreed. But if you want to have validation and autocompletion in most editors, it is still the way to go. We use it to validate JSON content files for a CMS [1]. It is a little repetitive in our case (e.g. the `:name`/`:description` keys are repeated), but not that bad. Newer versions of JSON Schema [2] have improved in that respect, but most editors (or plugins) and tooling in general is still based on older versions. So we have to stick with those for a while.

    [1] https://github.com/frontaid/schema/blob/master/frontaid-sche...

    [2] https://json-schema.org/specification.html

    If you have to deal with JSON a lot, you might want to checkout https://www.schemastore.org/json/ which has schemas for a large number of file types.

  5. typebox

    Json Schema Type Builder with Static Type Resolution for TypeScript

    I wouldn't write jsonschema definitions directly. Check out typebox. It lets you define a schema in memory and immediately have access to the types https://github.com/sinclairzx81/typebox

    Combined with ajv you can even have more advanced custom validation with custom error messages.

  6. openapi-cop

    A proxy that validates responses and requests against an OpenAPI document. https://www.npmjs.com/package/openapi-cop https://hub.docker.com/r/lxlu/openapi-cop

    Json schema validation is cpu expensive in nodejs, so you do not want it in production for every request. We made a proxy [1] that only allows requests that are conform to the swagger json which is easy to hook between frontend and backend in dev-mode

    [1] https://github.com/EXXETA/openapi-cop

  7. Snowplow

    The leader in Next-Generation Customer Data Infrastructure

    Back in the early years of Snowplow, we adopted a similar approach for our support of 3rd party webhooks[1] as an event stream source supported natively by Snowplow (https://github.com/snowplow/snowplow). (The important background here is that all events and entities flowing through Snowplow are described using versioned JSON Schema).

    We built a kind of Maven Central for 3rd party webhooks' schemas[2], and got to work adding schemas for various popular webhooks, e.g. Sendgrid and Pingdom. But, we never met a single SaaS vendor who was interested in 'adopting' the JSON Schemas for their webhook, let alone publishing versioned JSON Schemas for their whole API. This meant that at Snowplow we have stayed on the hook for keeping these vendors' webhook schema definitions up to date in our registry.

    It's a real tragedy of the commons - oceans of developer time wasted on tedious low-leverage work (updating API client code) so that each SaaS vendor can 'move fast and break things'. The ultimate irony is that if these vendors were to adopt, publish and respect versioned schema definitions internally, using something like OpenAPI, they would see huge productivity gains (think enhanced CI/CD testing, auto-gen of client code etc).

    1. https://docs.snowplowanalytics.com/docs/getting-started-on-s...

  8. iglu-central

    Contains all JSON Schemas, Avros and Thrifts for Iglu Central

  9. SurveyJS

    JavaScript Form Builder with No-Code UI & Built-In JSON Schema Editor. Add the SurveyJS white-label form builder to your JavaScript app (React/Angular/Vue3). Build complex JSON forms without coding. Fully customizable, works with any backend, perfect for data-heavy apps. Learn more.

    SurveyJS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • TypeSpec: A New Language for API-Centric Development

    11 projects | news.ycombinator.com | 29 Apr 2024
  • PostHog provides open-source web and product analytics, session recording

    1 project | news.ycombinator.com | 30 Apr 2025
  • openapi-fetch-gen – Generate TypeScript API client from OpenAPI TypeScript interface definitions created by openapi-typescript

    2 projects | dev.to | 20 Apr 2025
  • Everything about AI Function Calling (MCP), the keyword for Agentic AI

    10 projects | dev.to | 18 Apr 2025
  • Postiz Introduces MCPs

    1 project | news.ycombinator.com | 15 Apr 2025

Did you know that TypeScript is
the 1st most popular programming language
based on number of references?