Velohost Velohost

Astro Integration

Astro NoEmail

Protect email addresses from basic scrapers by obfuscating them at build time — no JavaScript, no runtime logic.

Usage snapshot

99
Downloads in the last 30 days
Latest npm version · v0.1.0
Source: npm registry

Why this plugin exists

Email addresses published in plain HTML are routinely harvested by simple bots, leading to spam and abuse.

Astro NoEmail solves this problem at build time by converting email addresses into numeric HTML entities in the final output.

The result is static, cache-safe HTML that renders normally in browsers but is harder for basic scrapers to harvest.

What it delivers

Design principles

  • Build-time only — no runtime JavaScript or hydration
  • Static, cache-safe output
  • Minimal surface area and zero configuration by default
  • Fail-safe behaviour — never blocks a build
  • Works with any adapter or CDN

What this plugin does

  • Obfuscates plain-text email addresses in HTML output
  • Converts emails into numeric HTML entities
  • Skips <script>, <style>, and <noscript> blocks
  • Avoids double-encoding existing HTML entities
  • Processes only final build output files

Installation

npm install astro-noemail

No configuration is required. The plugin runs automatically during astro build and operates only on final HTML output.

Project links

Source code, releases, documentation, and contribution guidelines.

Want the deep dive?

Read the FAQs for implementation details, design rationale, and integration guidance.

View plugin FAQs