85/ 100 · B
A top-tier open source project. Docs, tests, and CI are all in excellent shape.
TypeScript-first schema validation with static type inference
TypeScript42,966 starsMITupdated 4d ago
DocumentationREADME, setup, examples, license
EngineeringTests, CI, linting, lockfiles
Project healthDescription, activity, stars, deps
What to fix first
The highest-impact improvements for this repo.
- 1CI/CDEngineeringInfo
Add `tsc --noEmit`, `mypy`, or `cargo check` to catch type errors before they merge.
- 2CI/CDEngineeringInfo
Upload coverage to Codecov, Coveralls, or report it with `--coverage` flags.
- 3READMEDocumentationWarning
Add a GIF, screenshot, or logo image. It is the fastest way to show what your project does.
Detailed breakdown
Documentation
87- README80
- README is present.
- README is well structured with multiple sections.
- No screenshots or images in the README (−20 pts).Add a GIF, screenshot, or logo image. It is the fastest way to show what your project does.
- README has code examples.
- README links to a live demo or deployed app.
- README includes status badges.
- Install and run instructions90
- README documents how to install the project.
- README documents how to run the project.
- If your project uses environment variables, add a .env.example listing them (+10 pts).Add a .env.example listing all required environment variables so contributors know what to set up.
- License100
- Licensed under MIT.
- Contributing guide83
- Contributing guide is detailed and thorough.
- Contributing guide lacks a setup section (−12 pts).Show new contributors how to get a local dev environment running.
- Contributing guide lacks a code style section (−8 pts).Describe your linting/formatting rules and how to run them (e.g. npm run lint, ruff check .).
- Contributing guide explains how to run tests.
- Contributing guide describes the PR/review workflow.
- Contributing guide includes code examples.
- Code of conduct present.
Engineering
84- Tests100
- Test files detected (packages/docs/content/api.test.ts).
- CI/CD100
Not applicable?
- CI is configured (.github/workflows/test.yml).
- CI workflow runs tests.
- CI runs on pull requests, not just on pushes to main.
- CI workflow runs a lint or format check.
- Optional: add type checking to CI.Add `tsc --noEmit`, `mypy`, or `cargo check` to catch type errors before they merge.
- Optional: report test coverage in CI.Upload coverage to Codecov, Coveralls, or report it with `--coverage` flags.
- CI tests across multiple environments or versions.
- CI includes a build step.
- Linting and formatting75
- Linter or formatter configured (.editorconfig).
- Lint script wired into package.json.
- tsconfig.json does not enable strict type checking (−20 pts).Add "strict": true to compilerOptions to catch more bugs at compile time.
- Reproducibility80
- Lockfile present (pnpm-lock.yaml). Installs are reproducible.
- Environment pinned via .nvmrc.
- No Dependabot config (adding it earns up to +20 pts).Add .github/dependabot.yml with at least one package-ecosystem entry so dependencies are updated automatically.
- Issue and PR templates10
- No issue or PR templates found (−90 pts).Add .github/ISSUE_TEMPLATE/ with bug_report.md and feature_request.md to guide contributors. It dramatically improves issue quality.
- Security policy present.
Project health
84- Dependency manifest75
- Dependency manifest found (package.json).
- package.json is missing a description (−10 pts).Add a one-line description to package.json. It appears in npm search and on GitHub.
- package.json links back to the repository.
- package.json has no keywords (−8 pts).Add a `keywords` array to help people find your package on npm.
- package.json has no homepage field (−7 pts).Add a `homepage` field pointing to your docs or project website.
- Repository metadata70
- Repository has a description.
- Primary language detected: TypeScript.
- Activity100
- Actively maintained (pushed within the last month).
- 42,966 stars.
- Housekeeping100
- .gitignore present.
Repository files35 root entries
- .configs
- .devcontainer
- .githubGood: CI is configured (.github/workflows/test.yml).
- .husky
- .vscode
- logo
- packagesGood: Test files detected (packages/docs/content/api.test.ts).
- rfcs
- scripts
- wiki
- .cursorrules
- .editorconfigGood: Linter or formatter configured (.editorconfig).
- .gitignoreGood: .gitignore present.
- .mcp.json
- .nojekyll
- .npmrc
- .nvmrcGood: Environment pinned via .nvmrc.
- AGENTS.md
- biome.jsonc
- CLAUDE.md
- CODE_OF_CONDUCT.mdGood: Code of conduct present.
- CONTRIBUTING.mdGood: Contributing guide is detailed and thorough.Info: Contributing guide lacks a setup section (−12 pts).Fix: Show new contributors how to get a local dev environment running.Info: Contributing guide lacks a code style section (−8 pts).Fix: Describe your linting/formatting rules and how to run them (e.g. npm run lint, ruff check .).Good: Contributing guide explains how to run tests.Good: Contributing guide describes the PR/review workflow.Good: Contributing guide includes code examples.
- FUNDING.yml
- LICENSEGood: Licensed under MIT.
- logo.svg
- package.jsonGood: Dependency manifest found (package.json).
- play.ts
- pnpm-lock.yamlGood: Lockfile present (pnpm-lock.yaml). Installs are reproducible.
- pnpm-workspace.yaml
- README.mdGood: README is present.Good: README is well structured with multiple sections.Warning: No screenshots or images in the README (−20 pts).Fix: Add a GIF, screenshot, or logo image. It is the fastest way to show what your project does.Good: README has code examples.Good: README links to a live demo or deployed app.Good: README includes status badges.Good: README documents how to install the project.Good: README documents how to run the project.
- SECURITY.mdGood: Security policy present.
- tea.yaml
- tsconfig.json
- vitest.config.ts
- vitest.root.mjs