83/ 100 · B

Good community traction and solid fundamentals. Nearly in the top tier.

Modularized AWS SDK for JavaScript.

TypeScript3,634 starsApache-2.0updated 3d ago
DocumentationREADME, setup, examples, license
99
EngineeringTests, CI, linting, lockfiles
69
Project healthDescription, activity, stars, deps
91

What to fix first

The highest-impact improvements for this repo.

  1. 1
    Tests
    EngineeringWarning

    Set scripts.test in package.json to your actual test command, e.g. "vitest" or "jest".

  2. 2
    CI/CD
    EngineeringInfo

    Add `tsc --noEmit`, `mypy`, or `cargo check` to catch type errors before they merge.

  3. 3
    CI/CD
    EngineeringInfo

    Upload coverage to Codecov, Coveralls, or report it with `--coverage` flags.

Detailed breakdown

Documentation

99
  • README100
    • README is present.
    • README is well structured with multiple sections.
    • README includes screenshots or visuals. Great for first impressions.
    • README has code examples.
    • README links to a live demo or deployed app.
    • README includes status badges.
  • Install and run instructions100
    • README documents how to install the project.
    • README documents how to run the project.
    • .env.example is present. Contributors can see exactly which env vars to set.
  • License100
    • Licensed under Apache-2.0.
  • Contributing guide95
    • Contributing guide is detailed and thorough.
    • Contributing guide includes setup/install instructions.
    • 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

69
  • Tests35
    • Test files detected (clients/client-accessanalyzer/test).
    • The npm test script is the default placeholder. Running `npm test` will fail.Set scripts.test in package.json to your actual test command, e.g. "vitest" or "jest".
  • CI/CD100

    Not applicable?

    • CI is configured (.github/workflows/codegen-ci.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.
  • Linting and formatting75
    • Linter or formatter configured (.eslintrc.js).
    • 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.
  • Reproducibility70
    • Lockfile present (yarn.lock). Installs are reproducible.
    • No Dockerfile or runtime version pin found. Adding one earns +10 pts.Add a Dockerfile, .nvmrc, or .python-version to pin the runtime version and make the environment reproducible.
    • 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 templates90
    • Issue or PR templates present.
    • Optional: add a SECURITY.md.A SECURITY.md explains how to responsibly disclose vulnerabilities. Worth adding once the project has real users.

Project health

91
  • Dependency manifest85
    • Dependency manifest found (package.json).
    • package.json has a description field.
    • 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 metadata85
    • Repository has a description.
    • Primary language detected: TypeScript.
  • Activity100
    • Actively maintained (pushed within the last month).
    • 3,634 stars.
  • Housekeeping100
    • .gitignore present.
Repository files59 root entries
  • .github
    Good: CI is configured (.github/workflows/codegen-ci.yml).
    Good: Issue or PR templates present.
  • .vscode
  • .yarn
  • benchmark
  • clients
    Good: Test files detected (clients/client-accessanalyzer/test).
  • codegen
  • lib
  • packages
  • packages-internal
  • private
  • reserved
  • scripts
  • supplemental-docs
  • tests
  • tmp
  • verdaccio
  • .eslintrc.js
    Good: Linter or formatter configured (.eslintrc.js).
  • .esprintrc
  • .gitattributes
  • .gitignore
    Good: .gitignore present.
  • .prettierignore
  • .yarnrc
  • .yarnrc.yml
  • api-extractor.json
  • api-extractor.lib.json
  • api-extractor.packages.json
  • CHANGELOG.md
    Good: Contributing guide is detailed and thorough.
    Good: Contributing guide includes setup/install instructions.
    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.
  • CODE_OF_CONDUCT.md
    Good: Code of conduct present.
  • commitlint.config.js
  • CONTRIBUTING.md
  • jest.config.base.js
  • jest.config.js
  • lerna.json
  • LICENSE
    Good: Licensed under Apache-2.0.
  • Makefile
  • package.json
    Good: Dependency manifest found (package.json).
  • prettier.config.js
  • README.md
    Good: README is present.
    Good: README is well structured with multiple sections.
    Good: README includes screenshots or visuals. Great for first impressions.
    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.
  • tsconfig.cjs.json
  • tsconfig.es.json
  • tsconfig.json
  • tsconfig.test.index-types.json
  • tsconfig.test.json
  • tsconfig.types.json
  • turbo.jsonc
  • UPGRADING.md
  • vitest.browser.setup.mts
  • vitest.config.browser.mts
  • vitest.config.clients.unit.mts
  • vitest.config.cross-platform.e2e.mts
  • vitest.config.e2e.mts
  • vitest.config.integ.mts
  • vitest.config.mts
  • vitest.config.protocols-schema.integ.mts
  • vitest.config.protocols.integ.mts
  • vitest.config.snapshots.integ.mts
  • vitest.nodejs.setup.mts
  • vitest.snapshots.setup.mts
  • yarn.lock
    Good: Lockfile present (yarn.lock). Installs are reproducible.