React library to safely render HTML, filter attributes, autowrap text with matchers, and much more
Interweave
React library to safely render HTML, filter attributes, autowrap text with matchers, render emoji characters, and much more.
Interweave is a robust React library that can...
- Safely render HTML without using
dangerouslySetInnerHTML
. - Safely strip HTML tags.
- Automatic XSS and injection protection.
- Clean HTML attributes using filters.
- Interpolate components using matchers.
- Autolink URLs, IPs, emails, and hashtags.
- Render Emoji and emoticon characters.
- And much more!
<Interweave content="This string contains <b>HTML</b> and will safely be rendered!" />
<Interweave
content="This contains a URL, https://github.com/milesj/interweave, and a hashtag, #interweave, that will be converted to an anchor link!"
matchers={[new UrlMatcher('url'), new HashtagMatcher('hashtag')]}
/>
Requirements
- React 16.8+ / 17+
- IE 11+
- Emoji support:
fetch
,sessionStorage
Installation
Interweave requires React as a peer dependency.
yarn add interweave react
// Or
npm install interweave react