Astro Integration
Astro NoEmail
Protect email addresses from basic scrapers by obfuscating them at build time — no JavaScript, no runtime logic.
Usage snapshot
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