Skip to content
| Marketplace
Sign in
Visual Studio Code>Linters>PackagePulseNew to Visual Studio Code? Get it now.
PackagePulse

PackagePulse

Nuhman PK

|
1 install
| (0) | Free
Live package health — versions, downloads, deprecations & outdated deps, right in your package.json
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

PackagePulse 📦

PackagePulse Logo

Version Installs Rating License: GNU TypeScript Node VS Code PRs Welcome GitHub Stars

Live package health — versions, downloads, deprecations & outdated deps, right in your package.json and requirements.txt.

PackagePulse brings the npm and PyPI registries directly into your editor. No more npm outdated or checking PyPI manually — everything you need is inline.


PackagePulse Logo

Features

  • 🛡️ Multi-Ecosystem Support: Universally parses both Node (package.json, package-lock.json) and Python (requirements.txt) ecosystem structures.

🔍 CodeLens — Per-dependency status at a glance

Every entry in dependencies, devDependencies, peerDependencies, and optionalDependencies gets a CodeLens annotation showing:

  • ✅ 1.2.3 ✓ — up to date
  • 🔼 → 2.0.0 — outdated, click to update
  • ⚠️ deprecated — package has been deprecated
  • Weekly download count (e.g. 📦 2.1M/wk)

💬 Hover Tooltips — Rich package cards

Hover over any package name or version to see:

  • Package description
  • Installed vs latest version
  • License, last published date, weekly downloads
  • Author info
  • Quick links: npmjs.com · GitHub · Homepage
  • One-click update button (when outdated)

🩺 Inline Diagnostics — Visual warnings

  • Yellow squiggle under outdated version strings
  • Red squiggle under deprecated package names

🌲 Sidebar Panel — Full dependency health overview

The Package Health panel in the Explorer sidebar groups all dependencies into:

  • ⚠️ Deprecated
  • 🔼 Outdated
  • ✅ Up to Date
  • ❌ Fetch Failed

Click any item to jump to it in the editor.


PackagePulse Logo

Commands

Command Description
PackagePulse: Refresh Package Info Clear cache and re-fetch all package data
PackagePulse: Update All Outdated Packages Bump all outdated deps to latest
PackagePulse: Open on npmjs.com Open a package's npm page in the browser

Settings

Setting Default Description
packagepulse.enableCodeLens true Show CodeLens above each dependency
packagepulse.enableHover true Show hover tooltips
packagepulse.enableDiagnostics true Underline outdated/deprecated packages
packagepulse.cacheDurationMinutes 30 NPM data cache time (minutes)

Running Locally (Development)

git clone https://github.com/nuhmanpk/packagepulse.git
cd packagepulse
npm install
npm run compile
# Then press F5 in VS Code to open the Extension Development Host

Testing

PackagePulse uses Mocha for unit tests. Tests cover the core pure-logic modules (packageParser and NpmClient) without requiring a running VS Code instance.

Prerequisites

Ensure dependencies are installed:

npm install

Run all tests

npm test

Run tests in watch mode

npm run test:watch

What's tested

Test Suite File What it covers
packageParser src/test/packageParser.test.ts isOutdated, formatDownloads, isPackageJson
NpmClient src/test/npmClient.test.ts Cache TTL, deduplication, setCacheDuration, clearCache

Test output example

  PackagePulse — packageParser
    isOutdated()
      ✓ returns false when versions match
      ✓ returns true when patch differs
      ✓ returns true when minor differs
      ✓ strips ^ prefix before comparing
      ✓ strips ~ prefix before comparing
      ✓ ignores wildcard *
      ✓ ignores "latest" tag
      ✓ ignores workspace: protocol
      ✓ ignores file: protocol
      ✓ ignores git URLs
      ✓ returns false for unknown latest
    formatDownloads()
      ✓ formats millions
      ✓ formats thousands
      ✓ formats small numbers unchanged
    isPackageJson()
      ✓ returns true for unix-style path
      ✓ returns true for windows-style path
      ✓ returns false for other json files

  NpmClient
    cache behaviour
      ✓ returns cached result within TTL
      ✓ re-fetches after cache expires
      ✓ clearCache() forces re-fetch
    setCacheDuration()
      ✓ updates TTL for future fetches
    in-flight deduplication
      ✓ does not make duplicate requests for the same package

  21 passing (12ms)

Contributing

Contributions are very welcome! Please read our Contributing Guide before opening a pull request.

  1. Fork the repository
  2. Create your feature branch: git checkout -b feat/my-feature
  3. Commit your changes: git commit -m 'feat: add my feature'
  4. Push to the branch: git push origin feat/my-feature
  5. Open a Pull Request

Sponsor

If PackagePulse saves you time, consider supporting the developer! 💜

Sponsor on GitHub Buy Me A Coffee

Made with ❤️ by @nuhmanpk

GitHub Follow


License

PackagePulse Logo

GPL-3.0 © nuhmanpk

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft