npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

parity-ci

v1.0.3

Published

A robust CLI tool to ensure environment consistency and health across your software projects.

Readme

Parity Logo

🚀 Parity CLI

Stop "It works on my machine" — Enforce environment consistency across your team and CI

npm version License: MIT Downloads


🎯 What is Parity?

Parity is a zero-config developer experience tool that ensures every engineer on your team—and your CI pipeline—runs the exact same environment configuration. It prevents:

  • ❌ Runtime version mismatches
  • ❌ Missing .env variables
  • ❌ Package manager conflicts

⚡ Quick Start

1. Install

npm install -D parity-ci

2. Initialize

Generate a .env.lock file based on your current machine:

npx parity init

3. Run It

Option A: Check manually

npx parity check

Option B: Protect your start command (Recommended) Wrap your start script so checks run automatically before your app starts.

npx parity start npm run dev

🛠️ Configuration (How to write .env.lock)

The .env.lock file allows you to define strict rules for your project.

[!IMPORTANT] > Syntax Warning: Use YAML syntax (key: value), NOT .env syntax (KEY=VALUE).

Example Configuration

# 1. Runtime Enforcement
runtime:
  name: node
  version: ">=18.0.0"
  manager: npm # Optional: Enforce specific manager

# 2. OS Restrictions (Optional)
os: ["darwin", "linux"]

# 3. Environment Files
envFiles:
  - .env
  - .env.local

# 4. Environment Variables
env:
  DATABASE_URL: required
  API_KEY: required
  DEBUG: optional

Configuration Types & Allowed Values

| Option | Type | Allowed Values / Description | | :---------------- | :--------------------- | :--------------------------------------------------------- | | runtime.name | string | node, bun (More coming soon) | | runtime.version | string | SemVer range (e.g. >=18.0.0, ^20) or Exact (20.11.0) | | os | string | string[] | windows, linux, macos | | packageManager | string | npm, pnpm, yarn, bun | | envFiles | string[] | List of file paths (e.g. ['.env', '.env.local']) | | env | object | Key-value pairs where value is required or optional |

[!NOTE] > Current Limitations: Parity currently supports Node.js and Bun runtimes. Support for Deno, Python, and Go is planned for future updates.


⚡ Features

Semver Success

npx parity fix

[!TIP] > Special Characters: Parity automatically quotes your input to safely handle characters like # or spaces. Enter only the value (do not add your own quotes or inline comments).

custom:
  - name: "Docker Check"
    command: "docker info"
    error: "Docker is not running!"

Package Manager Error

Env Error


🤖 CI/CD Integration

Use the --ci flag to treat warnings as errors.

# GitHub Actions Example
- name: Run Parity checks
  run: npx parity check --ci

🤝 Contributing & Support

Found a bug? Open an issue.