Install: Netlify edge
The Netlify edge wall runs as a Netlify Edge Function (Deno runtime), in front of any site on Netlify.
When to use
Your site is on Netlify. The wall runs on the edge before your origin, with context.next() pass-through.
1. Download the package
From the dashboard, choose Netlify and download mothershy-wall-netlify-0.1.0.tgz.
2. Install
bash
npm install ./mothershy-wall-netlify-0.1.0.tgzCopy the included template to your project:
bash
cp node_modules/@mothershy/wall-netlify/edge-function.ts netlify/edge-functions/mothershy.tsThe template:
ts
import { mothershyEdge } from '@mothershy/wall-netlify'
const wall = mothershyEdge({
siteId: Netlify.env.get('MOTHERSHY_SITE_ID') || 'example.com',
rootPub: Netlify.env.get('MOTHERSHY_ROOT_PUB') || '',
})
export default async function (request: Request, context: NetlifyContext) {
const block = await wall(request)
return block ?? context.next() // pass through to the origin
}
export const config = { path: '/*', excludedPath: ['/_next/static/*', '/*.css', '/*.js', '/*.png', /* … */] }3. Set env vars
In Netlify → Site → Environment variables:
MOTHERSHY_SITE_ID— your verified domainMOTHERSHY_ROOT_PUB— the pinned Mother public root
4. Deploy and verify
bash
netlify deploy --prod
# human → 200, agent → 402, Googlebot → 200Notes
- The Netlify wall is offline (verify-only), like Vercel. The online/ledger path is Cloudflare-only today.
- Static assets are excluded via
config.excludedPath— they're never gated.