Meteor.js Integration via Atmosphere
May 13, 2026 ยท View on GitHub
ostrio:spiderable-middleware is the Atmosphere package that routes bot traffic from Meteor's WebApp layer to the ostr.io pre-rendering engine.
- Pre-rendering overview
- Rendering endpoints
- ๐
ostrio:spiderable-middlewareon Atmosphere โ installation, API, options - ๐ Framework-specific examples โ shared with the Node.js package
- โน๏ธ What is pre-rendering and why you need it
What it does
The package plugs into WebApp.connectHandlers and inspects every incoming request. When the User-Agent matches a known crawler, social previewer, or AI fetcher, the request is transparently proxied to the ostr.io rendering endpoint with your Basic auth credentials. Regular browser traffic is passed through to Meteor, untouched.
When to use
- You run a Meteor.js app and want pre-rendering wired up through the Meteor build system.
- You want reactive server-side detection paired with client-side
detect-prerendering-meteorReactiveVarintegration. - Deploying behind Meteor Galaxy, Cloud Run, or a plain Node server where you can add the Atmosphere package.
For infrastructure-level alternatives that do not require editing application code, see Related below.
Legacy <meta name="fragment"> markup (optional)
The legacy _escaped_fragment_ crawling scheme was deprecated by Google in 2015 but is still honored by some non-Google crawlers. If you care about those edge cases, add the meta tag to your HTML shell:
<html>
<head>
<meta name="fragment" content="!">
</head>
</html>
Modern crawlers rely on the User-Agent check that ostrio:spiderable-middleware performs automatically, so this markup is not required for Googlebot, Bingbot, facebookexternalhit, meta-externalagent, AI fetchers, or any crawler that advertises itself via User-Agent.
Related
For Meteor apps deployed behind a reverse proxy or CDN, you can also enable pre-rendering without adding the Atmosphere package:
- Nginx integration โ reverse-proxy integration
- Caddy integration โ simpler reverse-proxy alternative to Nginx
- Cloudflare Worker integration โ edge-level, works for any origin
- Detect pre-rendering engine requests at runtime โ Meteor-specific