Skip to content

Sanitize untrustworthy HTML user input for Wysiwyg Editors or HTML values, This also supports MathType and ChemType values!

License

Notifications You must be signed in to change notification settings

rohitcoder/html-sanitizer

 
 

Repository files navigation

html-sanitizer

Build Status Packagist Version Software license

SymfonyInsight

html-sanitizer is a library aiming at handling, cleaning and sanitizing HTML sent by external users (who you cannot trust), allowing you to store it and display it safely. It has sensible defaults to provide a great developer experience while still being entirely configurable.

Internally, the sanitizer has a deep understanding of HTML: it parses the input and create a tree of DOMNode objects, which it uses to keep only the safe elements from the content. By using this technique, it is safe (it works with a strict whitelist), fast and easily extensible.

It also provides useful features such as the possibility to transform images or iframes URLs to HTTPS.

Symfony integration

This library is also available as a Symfony bundle.

Documentation

  1. Getting started
  2. Creating an extension to allow custom tags
  3. Configuration reference
  4. Comparison with HTMLPurifier

Security Issues

If you discover a security vulnerability within the sanitizer, please follow our disclosure procedure.

Backward Compatibility promise

This library follows the same Backward Compatibility promise as the Symfony framework: https://symfony.com/doc/current/contributing/code/bc.html

Note: many classes in this library are either marked @final or @internal. @internal classes are excluded from any Backward Compatiblity promise (you should not use them in your code) whereas @final classes can be used but should not be extended (use composition instead).

Thanks

Many thanks to:

About

Sanitize untrustworthy HTML user input for Wysiwyg Editors or HTML values, This also supports MathType and ChemType values!

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 96.1%
  • HTML 3.9%