GitHub ↗
For maintainers

Put your AI-readiness score in your README.

One line of markdown. The badge reads from the same run as the scorecard, so it never claims a number the page doesn't show.

Grab yours

Copy the line, paste it near the top of your README. The badge links back to the full scorecard, so anyone can check the number rather than take it on faith.

SDKProof: 100/100 TanStack Query v5 5.101.4
[![SDKProof: 100/100](https://sdkproof.dev/badge/tanstack-query.svg)](https://sdkproof.dev/tanstack-query.html?ref=badge)
SDKProof: 100/100 Vercel AI SDK 7 7.0.30
[![SDKProof: 100/100](https://sdkproof.dev/badge/aisdk.svg)](https://sdkproof.dev/aisdk.html?ref=badge)
SDKProof: 100/100 Zod 4 4.4.3
[![SDKProof: 100/100](https://sdkproof.dev/badge/zod.svg)](https://sdkproof.dev/zod.html?ref=badge)
SDKProof: 93/100 React Router 8 8.3.0
[![SDKProof: 93/100](https://sdkproof.dev/badge/react-router.svg)](https://sdkproof.dev/react-router.html?ref=badge)
SDKProof: 92/100 Next.js 16 16.2.11
[![SDKProof: 92/100](https://sdkproof.dev/badge/nextjs.svg)](https://sdkproof.dev/nextjs.html?ref=badge)
SDKProof: 87/100 Prisma 7 7.8.0
[![SDKProof: 87/100](https://sdkproof.dev/badge/prisma7.svg)](https://sdkproof.dev/prisma7.html?ref=badge)

Read this before you embed it

The score can go down. It is re-measured when a new model ships or your library ships a breaking major, and the badge follows the run — that is the whole point of it. A rename with no deprecation period will move your number, and I will not ask before it does.

It measures the model, not your library. A low score means today's assistants write an older version of your API from memory. That is usually a signal your newest major is too recent for the training data, which is not a defect in your code.

It is one model on 10–15 tasks. Every score on this site is Claude Opus 5, type-checked against the installed package. Passing means it compiles clean — which cannot catch code that compiles and means something else.

Prefer shields.io?

Every badge is also published as a shields endpoint, if you would rather your README pointed at shields than at my domain. Same numbers, same source file.

![SDKProof](https://img.shields.io/endpoint?url=https://sdkproof.dev/badge/zod.json)

Not scored yet?

Open an issue at github.com/Kalpitrathore/sdkproof with your library and I'll add it to the queue. Every scorecard on this site so far came from someone asking.

All scores are also available as JSON at sdkproof.dev/scores.json.