# THIS REPOSITORY IS NO LONGER MAINTAINED Looking for an alternative? Please have a look at [react-tagcloud](https://github.com/madox2/react-tagcloud). If you are interested in maintaining this repository (and taking ownership of it), please reach out to me [here](mailto:hrutjes@gmail.com). # react-tag-cloud ☁️ Create beautiful tag/word clouds using React. Uses the wonderful [d3-cloud](https://github.com/jasondavies/d3-cloud) under the hood. ![react-tag-cloud-image](./react-tag-cloud.gif) [View live demo here](https://react-tag-cloud.stackblitz.io/) [(edit code)](https://stackblitz.com/edit/react-tag-cloud?file=App.js) ## Installation npm install react-tag-cloud or yarn add react-tag-cloud ## Usage ```js import TagCloud from 'react-tag-cloud'; import randomColor from 'randomcolor'; class MyCloud extends Component { render() { return ( randomColor(), padding: 5, width: '100%', height: '100%' }}>
react
tag
cloud
...
); } } ``` ## Documentation `` props: name | description | type | default -----|-------------|------|--------- style.fontSize | Font size needed for calculating layout | Function/Number | `20` style.fontFamily | Font family needed for calculating layout | Function/String | `serif` style.fontWeight | Font weight needed for calculating layout | Function/Number | `normal` style.fontStyle | Font style needed for calculating layout | Function/String | `normal` style.padding | Padding between tags (px) | Function/Number | `1` style.color | Color to be used by tags | Function/String | `(none)` rotate | Rotation in degrees | Function/Number | `0` spiral | Spiral | Function/String | `archimedean` random | Randomizer function | Function | `Math.random` Any component can be used as a child component. `TagCloud` scans the child components for the following props for its layout calculation: name | description | type | default -----|-------------|------|--------- style.fontSize | Font size needed for calculating layout | Function/Number | `20` style.fontFamily | Font family needed for calculating layout | Function/String | `serif` style.fontWeight | Font weight needed for calculating layout | Function/Number | `normal` style.fontStyle | Font style needed for calculating layout | Function/String | `normal` style.padding | Padding between tags (px) | Function/Number | `1` style.color | Color to be used by tag | Function/String | `(none)` rotate | Rotation in degrees | Function/Number | `0` ## Examples - [(Playground on StackBlitz)](https://stackblitz.com/edit/react-tag-cloud?file=App.js) [(source)](./examples/tagCloud/src/App.js) - [ijzerenhein.nl](http://ijzerenhein.nl/) ## Resources - [https://github.com/jasondavies/d3-cloud](https://github.com/jasondavies/d3-cloud) - [https://en.wikipedia.org/wiki/Tag_cloud](https://en.wikipedia.org/wiki/Tag_cloud) ## License [MIT](./LICENSE.txt) ## Cool? Do you think this cool and useful? Consider buying me a coffee!
Buy Me A Coffee