Show HN: Kage – Shadow any website to a single binary for offline viewing

TL;DR

Kage is a new tool that clones websites into offline, script-free copies by rendering pages in headless Chrome, then stripping scripts and assets. It can package sites into a single file or binary, enabling long-term offline access.

Kage is a new tool that clones websites into offline, script-free copies by rendering pages in headless Chrome, stripping out JavaScript, and packaging all assets into a single file or executable. It aims to solve the problem of website data becoming inaccessible over time due to dynamic content and server dependencies.

Kage clones a website by launching a real browser session in headless mode, allowing the page to fully load and execute its scripts before capturing the final DOM. It then removes all JavaScript and network calls, saving a static, fully rendered version of the site with local CSS, images, and fonts. The resulting files are suitable for offline browsing and can be served locally or packed into a single archive or self-contained executable.

The tool supports various commands: ‘clone’ to create a mirror of a site, ‘serve’ to host the clone locally, and ‘pack’ to bundle the site into a ZIM archive or binary. It requires Chrome or Chromium to operate but offers a containerized version that bundles Chromium, simplifying setup. Kage respects robots.txt and can limit the crawl scope, making it suitable for large or partial site cloning.

Developed by Tam Nguyen, Kage is designed to preserve website content in a durable, accessible format, especially useful for archival, offline reading, or environments with unreliable internet. The project is open source, with documentation available at kage.tamnd.com, and is actively maintained with recent updates and community interest.

Why Kage’s Offline Cloning Matters

Kage addresses the challenge of preserving website content in a stable, accessible format, independent of live servers or dynamic scripts. Its ability to generate self-contained, script-free copies ensures long-term access, which is vital for digital archiving, educational use in offline environments, and personal data preservation. By packaging sites into single files or executables, Kage simplifies sharing and storage, reducing reliance on complex directory structures and server dependencies.

This development is particularly relevant as many websites increasingly rely on client-side JavaScript, which can break or become inaccessible over time. Kage’s approach ensures that the content remains viewable even if the original site is taken down or changes significantly. It also enhances privacy and security by removing tracking scripts and network calls from the cloned content.

DeskFX Free Audio Effects & Audio Enhancer Software [PC Download]

DeskFX Free Audio Effects & Audio Enhancer Software [PC Download]

Transform audio playing via your speakers and headphones

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Background and Development of Kage

Traditional methods of saving web pages, such as browser ‘Save As’ or offline browsers, often capture incomplete or dynamic content that may not function correctly offline. Recent years have seen increased interest in digital preservation tools that can reliably archive websites for future access.

Kage builds on existing concepts of static site generation and offline content formats like ZIM, but distinguishes itself by rendering pages in a real browser session to ensure full content load and then stripping scripts for security and stability. Its development was motivated by the need for a simple, reliable way to preserve websites that depend heavily on client-side scripting, addressing limitations of previous archiving tools.

The project was announced on Hacker News, gaining attention for its practical approach and open-source availability, with ongoing updates enhancing its capabilities.

“Kage drives a real browser, so it needs Chrome or Chromium on the host, but it captures the fully rendered page and strips out all scripts, leaving a static, reliable version.”

— Tam Nguyen, creator of Kage

Amazon

website archiving tool

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Unanswered Questions About Kage’s Capabilities

While Kage’s core functionality is demonstrated, it is not yet clear how it performs with very large or complex sites, or how well it preserves interactive elements that depend on scripts. Its compatibility with different browsers or future updates to Chromium is also uncertain. Additionally, the extent of its ability to handle dynamic content or sites with anti-scraping measures remains to be tested.

Amazon

single file website clone

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Future Developments and Community Adoption

Further testing and community feedback will clarify Kage’s robustness across diverse websites. Developers may contribute to its feature set, such as better handling of complex interactions or improved packaging options. The project could see integration into digital archiving workflows or offline reading tools, and future releases might include enhanced automation or support for additional formats. Monitoring its adoption and real-world use cases will be key to understanding its impact.

Amazon

offline browsing executable

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

Can Kage clone interactive or dynamic websites?

Kage renders pages in a real browser before stripping scripts, so static content is preserved. However, fully interactive or highly dynamic sites that depend on JavaScript for core functionality may not work offline without additional modifications.

Does Kage remove all tracking and analytics scripts?

Yes, Kage strips all JavaScript, including tracking and analytics, resulting in a clean, privacy-preserving offline copy of the site.

What formats can Kage package the site into?

Kage can produce a ZIM archive, a self-contained executable, or a directory of static files suitable for local hosting.

Is Kage suitable for large-scale web archiving projects?

While capable, performance and handling of very large sites are still being evaluated. Its effectiveness depends on the site’s complexity and size.

What are the system requirements for running Kage?

Kage requires Chrome or Chromium on the host system, or uses a container image that bundles Chromium, simplifying setup.

Source: Hacker News


You May Also Like

Air Purifier Sizing: CADR, Room Size, and Reality

Ineffective air purifier sizing can compromise your air quality; discover how to accurately match CADR ratings to your room size.

Glasspane: When Transparency Itself Becomes the Product

Glasspane is being positioned around live infrastructure visibility, AI provenance, workforce growth signals and public sharing links.

Password Security for Normal Humans: A Simple System That Works

Learn a straightforward, memorable password system that keeps your accounts secure—discover the key to protecting your digital life today.

I’m A USB-C Maximalist

A prominent tech enthusiast declares strong support for USB-C as the universal charging and data port, emphasizing its benefits and calling for industry-wide adoption.