
Company News
Socket Joins New OpenJS Program to Fund Node.js Security Work
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.
@crashbytes/react-version-compare
Advanced tools
A React component for comparing strings and arrays with precise word-level and item-level highlighting of differences.
A React component for comparing strings and arrays with precise word-level and item-level highlighting of differences.
npm install react-version-compare
yarn add react-version-compare
import React from 'react';
import Compare from 'react-version-compare';
import 'react-version-compare/dist/styles.css';
const App = () => {
const original = 'I am Captain Kirk, Captain of the USS Enterprise.';
const modified = 'I am Captain Picard, Captain of the USS Enterprise.';
return (
<Compare
original={original}
modified={modified}
/>
);
};
Result: Only "Kirk" (in red) and "Picard" (in green) will be highlighted.
const originalArray = [
'First item',
'Second item',
'Third item'
];
const modifiedArray = [
'First item',
'Modified second item',
'Third item'
];
<Compare
original={originalArray}
modified={modifiedArray}
/>
| Prop | Type | Default | Description |
|---|---|---|---|
original | string | string[] | required | The original content |
modified | string | string[] | required | The modified content |
viewMode | 'side-by-side' | 'inline' | 'side-by-side' | How to display the comparison |
className | string | '' | Custom CSS class name |
// Example 1: Minimal changes
const original = 'I am Captain Kirk, Captain of the USS Enterprise.';
const modified = 'I am Captain Picard, Captain of the USS Enterprise.';
// Only "Kirk" → "Picard" highlighted
// Example 2: Multiple changes
const original = 'I am Captain Kirk, Captain of the USS Enterprise.';
const modified = 'I am Commander Benjamin Sisko, Commander of Deep Space 9.';
// Highlights: "Captain Kirk, Captain of the USS Enterprise" → "Commander Benjamin Sisko, Commander of Deep Space 9"
const original = ['Item A', 'Item B', 'Item C'];
const modified = ['Item A', 'Modified Item B', 'Item C', 'Item D'];
<Compare original={original} modified={modified} />
<Compare
original="Original text"
modified="Modified text"
viewMode="inline"
/>
The component uses CSS classes that you can customize:
.diff-removed {
/* Styling for removed content (red) */
}
.diff-added {
/* Styling for added content (green) */
}
.diff-unchanged {
/* Styling for unchanged content */
}
Apache License 2.0 - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
If you encounter any issues or have questions, please open an issue on GitHub.
See CHANGELOG.md for release history.
To bump the version, use npm version:
npm version patch # or 'minor' or 'major'
This will update package.json, create a git tag, and (optionally) commit the change.
FAQs
A React component for comparing strings and arrays with precise word-level and item-level highlighting of differences.
The npm package @crashbytes/react-version-compare receives a total of 6 weekly downloads. As such, @crashbytes/react-version-compare popularity was classified as not popular.
We found that @crashbytes/react-version-compare demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Company News
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.

Security News
Two compromised GitHub Actions were re-enabled with malicious tags intact, exposing thousands of downstream repositories to Mini Shai-Hulud.

Research
/Security News
A malicious Firefox extension fetches its payload after installation to evade detection, steal Google session cookies, and automate account takeover.