Package Exports
- remark-unlink-protocols
Readme
remark-unlink-protocols
remark plugin to turn links into plain text based on their protocols.
Contents
- What is this?
- When should I use this?
- Install
- Use
- API
- Types
- Compatibility
- Security
- Contribute
- License
What is this?
This package is a unified (remark) plugin to remove all links
that use other protocols than the ones specified
(http and https by default).
When should I use this?
This project is useful if you want to limit the protocols that can be linked to when processing markdown.
Install
This package is ESM only. In Node.js (version 16+), install with npm:
npm install remark-unlink-protocolsUse
Say we have the following file example.md and apply remark-unlink-protocols
with the default protocols (http and https).
# Uranus
**Uranus** is the seventh [planet](/wiki/Planet 'Planet') from the Sun and is a
gaseous cyan [ice giant](/wiki/Ice_giant 'Ice giant').
Photograph of Uranus in true colour by Voyager 2 in 1986:
_-_JPEG_converted.jpg>)
Send comments to [me](mailto:test@domain.example)…and a module example.js:
import {remark} from 'remark'
import remarkUnlinkProtocols from 'remark-unlink-protocols'
import {read} from 'to-vfile'
const file = await remark()
.use(remarkUnlinkProtocols, { except: 'mailto' })
.process(await read('example.md'))
console.log(String(file))…then running node example.js yields:
# Uranus
**Uranus** is the seventh planet from the Sun and is a
gaseous cyan ice giant.
Photograph of Uranus in true colour by Voyager 2 in 1986:
_-_JPEG_converted.jpg>)
The Voyager project is managed for NASA by the Jet Propulsion
Laboratory.
Send comments to [me](mailto:test@domain.example).API
This package exports no identifiers.
The default export is remarkUnlinkProtocols.
unified().use(remarkUnlinkProtocols)
Remove all links and references that do not use the http or https protocols.
Parameters
except: string[] - protocols to keep - ['http', 'https'] by default.
Returns
Transform (Transformer).
Types
This package is fully typed with TypeScript. It exports no additional types.
Compatibility
The current release, remark-unlink-protocols@^1 is compatible with Node.js 22.
This plugin works with unified version 3+ and remark version 4+.
Security
Use of remark-unlink-protocols does not involve
rehype (hast) or user content
so there are no openings for cross-site scripting (XSS)
attacks.
Contribute
Nextcloud and Remarkjs have a code of conduct. By interacting with the respective repositories, organization, or community you agree to abide by its terms.
License
MIT © 2025 Nextcloud GmbH and Nextcloud contributors