@cornflea/react-pcc
v2.0.0
Published
A CLI tool that finds the latest compatible version of any npm package for your project's current React version.
Readme
@cornflea/react-pcc
A CLI utility to check which version of a package is compatible with the React version in your project.
Features
- Checks compatibility of npm packages with your project's React version
- Supports scoped packages (e.g.,
@mui/material,@testing-library/react) - Simple CLI usage
- Fast and lightweight
- Built with TypeScript for better reliability and type safety
Installation
npm install -g @cornflea/react-pccUsage
react-pcc <package-name>Options
--helpShow help information--versionShow version number--debugShow debug information for troubleshooting
Examples
# Regular package
react-pcc zustand
# Scoped package
react-pcc @mui/material
# TypeScript types
react-pcc @types/react
# With debug information
react-pcc @emotion/react --debugScoped Packages
This tool fully supports scoped packages (packages starting with @). When using scoped packages:
- Always include the complete package name:
@scope/package-name - Use quotes if your shell requires them:
"@mui/material" - The tool automatically handles URL encoding for special characters
Common Issues with Scoped Packages
If you encounter issues with scoped packages, try these troubleshooting steps:
Use quotes around the package name:
react-pcc "@mui/material"Check for typos in the scope or package name:
# ❌ Incorrect react-pcc @mui # ✅ Correct react-pcc @mui/materialUse debug mode to see what's being processed:
react-pcc @mui/material --debugVerify the package exists on npm: Visit
https://www.npmjs.com/package/@scope/package-nameto confirm the package exists.
How It Works
- Reads your project's
package.jsonto find the React version - Fetches package information from npm registry
- Finds versions that are compatible with your React version by checking
peerDependencies - Returns the latest compatible version
Development
This project is built with TypeScript and includes modern development tooling.
Prerequisites
- Node.js 16.x or higher
- npm or yarn
Setup
git clone https://github.com/cornflea/react-pcc.git
cd react-pcc
npm installBuilding
# Build once
npm run build
# Build and watch for changes
npm run build:watchTesting
npm testLocal Development
# Build and test the CLI locally
npm run build
node dist/index.js <package-name>Publishing
This package uses GitHub Actions for automated CI/CD:
Continuous Integration: Runs on every push and pull request
- Tests on Node.js 16.x, 18.x, and 20.x
- Builds the TypeScript code
- Runs tests
Automated Publishing: Publishes to npm when a GitHub release is created
- Requires
NPM_TOKENsecret to be set in GitHub repository settings
- Requires
Manual Publishing
npm run prepublishOnly # Cleans and builds
npm publishContributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate and ensure TypeScript compilation passes.
License
MIT
