Rendertron is a headless Chrome rendering service that serializes JavaScript-heavy web pages into fully-loaded HTML for search-engine bots and crawlers. It operates as a dynamic rendering proxy, inspecting incoming user-agent headers to route only bot traffic through the rendering pipeline while serving normal browsers the original page directly.
The service caches rendered page results in a configurable in-memory or Redis store, with an HTTP endpoint to invalidate cached renders and force fresh serialization on demand. It enforces a hard rendering timeout to prevent hanging on slow-loading or infinite-loop pages, and supports injecting Shady DOM polyfills so web components with shadow DOM serialize their full content for crawlers that cannot execute JavaScript.
Beyond prerendering for search engines, Rendertron can capture page screenshots at specified viewport sizes and device emulations. The rendering pipeline is configured through a JSON file that controls timeout, viewport dimensions, cache backend, allowed domains, and extra HTTP headers.