Tools

Check a repository

Find the services a project depends on, the risks on their free plans and safer free options.

The repository check reads the files a project already has and tells you which hosted services it depends on, what can break or bill on their free plans, and which free plans would be safer.

Supported files

  • JavaScript and TypeScript: package.json; Deno: deno.json, deno.jsonc, import_map.json (npm: imports)
  • Python: requirements*.txt, pyproject.toml, Pipfile
  • Go: go.mod
  • Dart and Flutter: pubspec.yaml
  • Android, Kotlin and Java: build.gradle, build.gradle.kts, gradle/libs.versions.toml, pom.xml
  • iOS and Swift: Podfile, Podfile.lock, Package.swift, Package.resolved
  • PHP: composer.json; Ruby: Gemfile, Gemfile.lock
  • Environment examples: .env.example, .env.sample, .dev.vars.example and similar
  • Platform configs: wrangler.toml/wrangler.jsonc, vercel.json, netlify.toml, fly.toml, render.yaml, railway.json, firebase.json, supabase/config.toml, serverless.yml, checkly.config.ts, newrelic.js
  • CI: GitHub Actions workflows, .gitlab-ci.yml, .circleci/config.yml, bitbucket-pipelines.yml, azure-pipelines.yml, codemagic.yaml

Up to 20 files, 200 KB each.

What it finds

Services are recognised from package names, environment variable names, hostnames inside environment values (for example a Neon or Supabase database URL), platform configs and the actions a GitHub workflow uses (a cloudflare/wrangler-action step deploys to Workers, actions/deploy-pages to GitHub Pages). Cloudflare bindings in a Wrangler config name the products in use, such as D1, R2, KV, Queues or Workers AI, and a pages job in .gitlab-ci.yml publishes GitLab Pages. Hostnames also tell apart services of one provider, such as Render web services and Render Postgres, or Alibaba Cloud Model Studio's international and Beijing endpoints.

Each service gets a confidence level: Certain for a config file, a hostname or a package together with its environment variables; Likely for a package or an environment variable alone; Possible for signals many stacks share, such as an OpenAI SDK that may point at another provider.

Privacy

  • On the website, .env files are reduced in your browser before anything is sent: each value becomes the hostname it points at, or nothing. Keys, tokens and passwords never leave your browser.
  • The API reads environment values only to recognise hosts and never returns them.
  • Files are checked in memory and never stored.

From the API or an agent, send .env.example rather than a real .env.

Reading the results

Turn on The project makes money and Users in mainland China when they apply; risks are read against them. Each service shows the signals that revealed it, its free-plan risks and, when it is risky or not in the catalog, safer free options for the same need.

Follow the plans you use

Select Save to Clearvia on the results to keep them as a saved stack in your organization. The stack prefers the plans the check found, for the needs they fill, under the check's context; a detected plan your context rules out (a non-commercial plan for a commercial project, say) is replaced by the planner's choice, and the save page shows it before you save. From then on, changes to those plans reach you like any stack's. Detections with low confidence and services not in the catalog are left out.

On this page