Skip to content

Tiny, fast, efficient, feature rich Javascript library to detect links / URLs / Emails in text and convert them to clickable HTML anchor links

License

Notifications You must be signed in to change notification settings

alexcorvi/anchorme.js

Repository files navigation

Anchorme.js

Documentation Getting Started, Documentations, Demos and more

npm npm GitHub release license

Tiny, fast, efficient, feature rich Javascript library to detect links / URLs / Emails in text and convert them to clickable HTML anchor links.

Main features

  • Sensitivity:
    • It's Highly sensitive with the least false positives.
    • It validates URLs and Emails against full IANA list.
    • Validates port numbers (if present).
    • Validates IP octet numbers (if present).
    • Works on non latin alphabets URLs.
  • Robustness:
    • Skips HTML, so it doesn't break your HTML if it had a URL as an attribute for an element, or a link that is already inside an anchor.
    • Links with or without protocols.
    • Works with IPs, FTPs, Emails and files.
    • Can detect parenthesis and quotation marks as part of the URL or as a surrounding to the URL.
    • Easily extensible with your own code (e.g. for hashtags and mentions).
  • Fast: Performance is one of the main things that were kept in mind while writing this library.
    • It's incredibly fast since 99% of all the heavy lifting is based on a single optimized regular expression.
    • Processing H.G. Wells novel, the time machine, took only 2.2 milliseconds on my machine.
    • This library is also a lot faster than other alternatives (linkify & autolinker). Link to benchmark
  • Light Weight: Although it's a feature rich library with a full IANA list included, it's only 9KB when minified and GZipped.

About

Tiny, fast, efficient, feature rich Javascript library to detect links / URLs / Emails in text and convert them to clickable HTML anchor links

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published