
Security News
Feross on the 10 Minutes or Less Podcast: Nobody Reads the Code
Socket CEO Feross Aboukhadijeh joins 10 Minutes or Less, a podcast by Ali Rohde, to discuss the recent surge in open source supply chain attacks.
react-wordcloud-plus
Advanced tools
Simple React + D3 wordcloud component with powerful features. Fork of react-wordcloud with React 18 and ESM support.
Simple React + D3 wordcloud component with powerful features. Uses the d3-cloud layout.
This is a fork of react-wordcloud with React 18 and ESM support.
npm install react-wordcloud-plus
Note that react-wordcloud-plus requires react^16.13.0 || ^17.0.0 || ^18.0.0 as a peer dependency.
import React from 'react';
import ReactWordcloud from 'react-wordcloud-plus';
// Import tooltip styles
import 'tippy.js/dist/tippy.css';
import 'tippy.js/animations/scale.css';
const words = [
{
text: 'told',
value: 64,
},
{
text: 'mistake',
value: 11,
},
{
text: 'thought',
value: 16,
},
{
text: 'bad',
value: 17,
},
]
// Simple functional component
function SimpleWordcloud() {
return <ReactWordcloud words={words} />
}
By default, ReactWordcloud is configured with animated tooltips enabled and requires CSS for styling. Tippy provides base styling in the resources above or you can create your own.
An example showing various features (callbacks, options, size).
const callbacks = {
getWordColor: word => word.value > 50 ? "blue" : "red",
onWordClick: console.log,
onWordMouseOver: console.log,
getWordTooltip: word => `${word.text} (${word.value}) [${word.value > 50 ? "good" : "bad"}]`,
}
const options = {
rotations: 2,
rotationAngles: [-90, 0],
};
const size = [600, 400];
const words = [...];
function MyWordcloud() {
return (
<ReactWordcloud
callbacks={callbacks}
options={options}
size={size}
words={words}
/>
);
}
The library includes full TypeScript definitions for all features:
import ReactWordcloud, { Word, Options, Callbacks, Props } from 'react-wordcloud-plus';
// Define your words
const words: Word[] = [
{ text: 'Hello', value: 100 },
{ text: 'World', value: 50 },
];
// Configure options with proper typing
const options: Options = {
colors: ['#1f77b4', '#ff7f0e', '#2ca02c'],
fontSizes: [10, 60] as [number, number], // Type assertion for MinMaxPair
rotationAngles: [-90, 90] as [number, number], // Type assertion for MinMaxPair
// ...more options
};
// Use in your component
const MyComponent = () => (
<ReactWordcloud
words={words}
options={options}
/>
);
For examples, check out the original react-wordcloud examples.
The code is written in JavaScript with TypeScript definitions and built with esbuild.
For more information about the recent upgrade to React 18 and ESM, see UPGRADE.md.
Feel free to contribute by submitting a pull request.
MIT License - see the LICENSE file for details.
This package is a fork of react-wordcloud by Chris Zhou.
FAQs
Simple React + D3 wordcloud component with powerful features. Fork of react-wordcloud with React 18 and ESM support.
We found that react-wordcloud-plus 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.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket CEO Feross Aboukhadijeh joins 10 Minutes or Less, a podcast by Ali Rohde, to discuss the recent surge in open source supply chain attacks.

Research
/Security News
Campaign of 108 extensions harvests identities, steals sessions, and adds backdoors to browsers, all tied to the same C2 infrastructure.

Security News
OpenAI rotated macOS signing certificates after a malicious Axios package reached its CI pipeline in a broader software supply chain attack.