Security News
Introducing the Socket Python SDK
The initial version of the Socket Python SDK is now on PyPI, enabling developers to more easily interact with the Socket REST API in Python projects.
The 'entities' npm package is a library that helps with encoding and decoding HTML entities. It is useful for dealing with HTML data in text form and can be used to prevent XSS attacks by sanitizing input or output.
Encode HTML Entities
Encodes special characters in a string to their corresponding HTML entities. Useful for displaying text on a webpage without it being interpreted as HTML.
"require('entities').encodeHTML('<div>Hello & welcome!</div>');"
Decode HTML Entities
Decodes HTML entities back to their original characters. This is useful for processing text that contains HTML entities and converting them to their readable form.
"require('entities').decodeHTML('<div>Hello & welcome!</div>');"
Encode XML Entities
Similar to encoding HTML entities, but specifically for XML, which has a smaller set of entities.
"require('entities').encodeXML('<note>Priority & importance</note>');"
Decode XML Entities
Decodes XML entities back to their original characters, which is useful when working with XML data.
"require('entities').decodeXML('<note>Priority & importance</note>');"
The 'he' package is an HTML entity encoder/decoder written in JavaScript. It is robust and handles a large number of character references. It is similar to 'entities' but has a different API and additional options for encoding.
This package is another alternative for encoding and decoding HTML entities. It provides a similar set of functionalities as 'entities' and is often used for the same purposes in different projects.
Encode & decode HTML & XML entities with ease & speed.
entities
npm install entities
entities
const entities = require("entities");
//encoding
entities.escape("&"); // "&#38;"
entities.encodeXML("&"); // "&#38;"
entities.encodeHTML("&"); // "&#38;"
//decoding
entities.decodeXML("asdf & ÿ ü '"); // "asdf & ÿ ü '"
entities.decodeHTML("asdf & ÿ ü '"); // "asdf & ÿ ü '"
This is how entities
compares to other libraries on a very basic benchmark
(see scripts/benchmark.ts
, for 10,000,000 iterations):
Library | decode perf | encode perf | escape perf | Bundle size |
---|---|---|---|---|
entities | 1.418s | 6.786s | 2.196s | |
html-entities | 2.530s | 6.829s | 2.415s | |
he | 5.800s | 24.237s | 3.624s | |
parse-entities | 9.660s | N/A | N/A |
This libary wouldn't be possible without the work of these individuals. Thanks to
he
, which was one of the
inspirations for entities
parse5
projecthtml-entities
library.
entities
would be quite a bit slower if there wasn't any competition.
Right now entities
is on top, but we'll see how long that lasts!License: BSD-2-Clause
To report a security vulnerability, please use the Tidelift security contact. Tidelift will coordinate the fix and disclosure.
entities
for enterpriseAvailable as part of the Tidelift Subscription
The maintainers of entities
and thousands of other packages are working with
Tidelift to deliver commercial support and maintenance for the open source
dependencies you use to build your applications. Save time, reduce risk, and
improve code health, while paying the maintainers of the exact dependencies you
use.
Learn more.
FAQs
Encode & decode XML and HTML entities with ease & speed
The npm package entities receives a total of 51,365,622 weekly downloads. As such, entities popularity was classified as popular.
We found that entities demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers 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
The initial version of the Socket Python SDK is now on PyPI, enabling developers to more easily interact with the Socket REST API in Python projects.
Security News
Floating dependency ranges in npm can introduce instability and security risks into your project by allowing unverified or incompatible versions to be installed automatically, leading to unpredictable behavior and potential conflicts.
Security News
A new Rust RFC proposes "Trusted Publishing" for Crates.io, introducing short-lived access tokens via OIDC to improve security and reduce risks associated with long-lived API tokens.