Is your repo OK?
Check any GitHub repo for vulnerable dependencies
Paste a public GitHub repo. We read every lockfile at its latest commit, check each pinned version against every known flaw, and tell you what to update first. Free, no account, nothing to install.
Try:vercel/next.jsJavaScriptpallets/flaskPythonastral-sh/ruffRustkubernetes/kubernetesGorails/railsRubybitwarden/server.NETphoenixframework/phoenixElixirimmich-app/immichDart, TypeScript
What it reads
30 lockfile formats and 7 manifest formats, in 14 ecosystems. Every folder counts, monorepos and workspaces included. Where a project has no lockfile, it reads the exact versions its manifests pin. A lockfile it cannot check, like a CocoaPods or Conan one, is named on the repo's page, never silently skipped.
- JavaScript, TypeScriptnpm
package-lock.jsonnpm-shrinkwrap.jsonpnpm-lock.yamlyarn.lockbun.lockdeno.lockpackage.json- PythonPyPI
uv.lockpoetry.lockPipfile.lockpdm.lockpylock.tomlrequirements.txtrequirements.lockpixi.lockconda-lock.ymlpyproject.toml- Rustcrates.io
Cargo.lockCargo.toml- GoGo modules
go.mod- Java, KotlinMaven
gradle.lockfilemaven_install.jsonpom.xmllibs.versions.toml- .NETNuGet
packages.lock.jsonpackages.configpaket.lock.csproj.fsproj.vbprojDirectory.Packages.props- RubyRubyGems
Gemfile.lockgems.locked- PHPPackagist
composer.lock- Dart, FlutterPub
pubspec.lock- SwiftSwiftPM
Package.resolved- Elixir, ErlangHex
mix.lockrebar.lock- HaskellHackage
cabal.project.freeze- RCRAN
renv.lock- JuliaJulia
Manifest.toml
Dashed: manifests, read only where no lockfile covers them.
How much it reads
97 to 100%
of the pinned versions that GitHub's own dependency graph lists, in npm, PyPI, Cargo, Go, Pub and Swift. Measured on 77 large repos.
Lower so far in Packagist (95%), RubyGems (92%), NuGet (84%) and Maven (62%).
How it works
It reads the lockfiles at the latest commit
Every lockfile in every folder, read from GitHub at the exact commit: each package at the version it pins, and whether only dev tools use it. Your source code is never read.
It checks each version against every known flaw
Each version is looked up in OSV, which gathers the public advisory databases (GitHub's, PyPI's, RustSec, Go's and more), and in CISA's list of flaws attackers already use.
It says what to update first
What touches your users comes first, the gravest at the top: the package to update, often the direct dependency that brings the flaw in, and the version that fixes it. Tests, examples, docs and dev tools are listed apart and never counted.
It says what a flaw can do, not that it does
It does not check whether your code calls the vulnerable part of a package. A flaw on the page is a version to update, not proof that the project is open to attack.
It stays current
A new commit is read on the next visit. A new advisory reaches every repo it touches within minutes of OSV publishing it.
A badge for your README
Every repo's page gives you a badge that shows its answer and changes with it. Put your repo in place of owner/repo:
[](https://istheinternetok.com/r/owner/repo/)For agents and scripts
The same answer as JSON, with no key, at /v1/repos/owner/repo. Or as the MCP tool check_repo, at https://istheinternetok.com/mcp. Everything an agent needs to know is in /skill.md.
curl -s https://istheinternetok.com/v1/repos/vercel/next.jsQuestions
Can it check a private repo?
No. It reads public GitHub repos only, the way anyone can see them. Nothing private is ever asked for.
Does it keep my code?
No. It never reads the source code, only the lockfiles and manifests. It keeps the list of packages and versions they pin, and the answer, to check the repo again when a new flaw comes out.
How much does it cost?
Nothing. No account, no key: the page, the badge, the API and the MCP tool are free.
How is it different from npm audit or Dependabot?
It runs the same kind of lookup from a link, with nothing to install, and reads every ecosystem at once, not only npm. Dependabot's alerts are seen only by a repo's admins; this page anyone can read and share. It also sets apart what only tests and dev tools use.
Does a flaw on the page mean my project is hacked?
No. It means a version the project pins has a known flaw, and says what that flaw can let someone do. Whether your code reaches the vulnerable part is not checked: update first, then look closer if you need to.