Demo project

Live demo project with real-world sites

The fastest way to understand Famir is to read and run the demo project:

famir-demo

The demo is a small, complete Famir project. It shows how the three applications (reverse, console, actions) are assembled from @famir/* npm packages, how campaigns are described in presets, and how middleware controllers customize the behavior of each mirrored website.

Use it as a template for your own project.

How the demo is built

The demo is not a fork of Famir. It is a separate project that depends on the public @famir/* npm packages and composes them into runnable applications.

In practice this means:

  • @famir/reverse-app provides the multi-target reverse proxy.
  • @famir/console-app provides the REPL and TCP console.
  • @famir/actions-app provides the background workers.
  • Presets under the project describe campaigns.
  • Controllers under src/ describe per-site middleware.

You install them the same way the demo does, then write your own presets and controllers on top.

Running the demo

The repository ships with a working package.json. The flow is short:

# Install dependencies and build the project
npm install
npm build

# Prepare environment
cp .env.example .env
# Edit .env and fill in credentials (Redis, S3, Caddy Admin API, ...)

# Start the reverse proxy (data plane)
npm run start:reverse:std

# Start the console — either the standalone CLI
npm run start:console:cli
# ...or the TCP console server
npm run start:console:net

# Start the analysis app
npm run start:analyze:std

Each start:* script corresponds to one of the Famir applications. Running them together gives you a working platform.

Review .env.example before starting. It lists every external dependency the demo expects: Redis, S3-compatible storage, Caddy admin API, etc...

Campaigns in the demo

Campaigns are described in preset YAML files. Each preset declares the donor site, its subdomains, how the mirror maps to them, and which controllers apply.

httpbin.org

Arbitrary request/response mirroring. Transparent reverse proxy, streaming responses, endpoint capture, spec customization.

Live demo: https://httpbin.fake-mirrors.net

ja3.zone

Mirror of a fingerprinting service (JA3, JA4, PeetPrint, Akamai).

Live demo: https://ja3zone.fake-mirrors.net/test

browserleaks.com

Mirror of a browser security and privacy test suite.

Live demo: https://browserleaks.fake-mirrors.net/test

news.ycombinator.com

A realistic site with authentication: site title rewrite, credential and session capture stored to S3, Google reCAPTCHA v2 bypass, closed access via secret lure links, and logout blocking to preserve captured sessions.

Live demo: https://hackernews.fake-mirrors.net/test