Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 21 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,30 @@ The Pi has no inbound ports; the browser uses the Pi's own residential network.*
## Demos

Captured from real runs against a Raspberry Pi 5 worker (Chromium 154, headless)
and a Mac worker (Chrome 154).
and a Mac worker (Chrome 154), driven by ordinary Playwright over CDP.

![CLI: nodes, lease, devices](docs/assets/cli-nodes.png)

The browser's real network (a residential ISP, not a datacenter range) and a real
search run on the Pi:

| | |
|---|---|
| ![Browser network egress](docs/assets/pi-network.png) | ![Amazon search on the Pi](docs/assets/pi-amazon.png) |

Marketplaces and travel, loaded from the Pi's own connection:

| | |
|---|---|
| ![Amazon India](docs/assets/amazon-in.png) | ![Flipkart](docs/assets/flipkart.png) |

![Booking.com](docs/assets/booking.png)

One profile, two leases, a brand-new browser each time:

| | |
|---|---|
| ![CLI: nodes, lease, devices](docs/assets/cli-nodes.png) | ![Browser network egress: residential ISP](docs/assets/pi-network.png) |
| ![Amazon search loaded on the Pi](docs/assets/pi-amazon.png) | Two nodes, a lease, and a real Amazon search — all driven by ordinary Playwright over CDP. |
| ![Lease 1](docs/assets/profile-lease-1.png) | ![Lease 2](docs/assets/profile-lease-2.png) |

Sites that aggressively challenge automation are left alone. Devdooth is not an
anti-bot or CAPTCHA-bypass product; it uses the network and profile of the
Expand Down
Binary file added docs/assets/amazon-in.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/booking.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/assets/demo.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/flipkart.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/profile-lease-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/profile-lease-2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
34 changes: 33 additions & 1 deletion docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -268,14 +268,46 @@ <h2>See it working</h2>
</figcaption>
</figure>
</div>

<h3 class="step" style="margin-top:32px">Marketplaces and travel</h3>
<p class="sub">Loaded from the Pi's own connection, no proxy.</p>
<div class="two">
<figure>
<img src="assets/amazon-in.png" alt="Amazon India homepage showing delivery to the browser's local city.">
<figcaption>Amazon.in, localized to the browser's own city and currency.</figcaption>
</figure>
<figure>
<img src="assets/flipkart.png" alt="Flipkart homepage.">
<figcaption>Flipkart, rendered with local pricing.</figcaption>
</figure>
</div>
<figure style="margin-top:22px">
<img src="assets/booking.png" alt="Booking.com homepage.">
<figcaption>Booking.com, with the visitor's own region and currency.</figcaption>
</figure>

<h3 class="step" style="margin-top:32px">A profile that persists</h3>
<p class="sub">One profile, two leases, a brand-new browser each time.</p>
<div class="two">
<figure>
<img src="assets/profile-lease-1.png" alt="A card showing a value saved by the browser in the first lease.">
<figcaption>Lease 1: the browser saves a value in its profile.</figcaption>
</figure>
<figure>
<img src="assets/profile-lease-2.png" alt="A card showing the same value still present in a second lease.">
<figcaption>Lease 2, new browser process: the value is still there.</figcaption>
</figure>
</div>

<figure style="margin-top:22px">
<img src="assets/cli-nodes.png" alt="Terminal showing devdooth nodes, lease, and devices output.">
<figcaption>Everything is one binary and a small HTTP API.</figcaption>
</figure>
<p class="sub" style="margin-top:18px">
Sites that aggressively challenge automation are left alone. Devdooth is not an
anti-bot or CAPTCHA-bypass product; it simply uses the network and profile of the
machine you chose.
machine you chose. Some sites still refuse headless Chromium regardless of IP, and
those are not shown here.
</p>
</section>

Expand Down
Binary file added internal/webui/assets/amazon-in.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added internal/webui/assets/booking.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified internal/webui/assets/demo.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added internal/webui/assets/flipkart.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added internal/webui/assets/profile-lease-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added internal/webui/assets/profile-lease-2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
34 changes: 33 additions & 1 deletion internal/webui/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -268,14 +268,46 @@ <h2>See it working</h2>
</figcaption>
</figure>
</div>

<h3 class="step" style="margin-top:32px">Marketplaces and travel</h3>
<p class="sub">Loaded from the Pi's own connection, no proxy.</p>
<div class="two">
<figure>
<img src="assets/amazon-in.png" alt="Amazon India homepage showing delivery to the browser's local city.">
<figcaption>Amazon.in, localized to the browser's own city and currency.</figcaption>
</figure>
<figure>
<img src="assets/flipkart.png" alt="Flipkart homepage.">
<figcaption>Flipkart, rendered with local pricing.</figcaption>
</figure>
</div>
<figure style="margin-top:22px">
<img src="assets/booking.png" alt="Booking.com homepage.">
<figcaption>Booking.com, with the visitor's own region and currency.</figcaption>
</figure>

<h3 class="step" style="margin-top:32px">A profile that persists</h3>
<p class="sub">One profile, two leases, a brand-new browser each time.</p>
<div class="two">
<figure>
<img src="assets/profile-lease-1.png" alt="A card showing a value saved by the browser in the first lease.">
<figcaption>Lease 1: the browser saves a value in its profile.</figcaption>
</figure>
<figure>
<img src="assets/profile-lease-2.png" alt="A card showing the same value still present in a second lease.">
<figcaption>Lease 2, new browser process: the value is still there.</figcaption>
</figure>
</div>

<figure style="margin-top:22px">
<img src="assets/cli-nodes.png" alt="Terminal showing devdooth nodes, lease, and devices output.">
<figcaption>Everything is one binary and a small HTTP API.</figcaption>
</figure>
<p class="sub" style="margin-top:18px">
Sites that aggressively challenge automation are left alone. Devdooth is not an
anti-bot or CAPTCHA-bypass product; it simply uses the network and profile of the
machine you chose.
machine you chose. Some sites still refuse headless Chromium regardless of IP, and
those are not shown here.
</p>
</section>

Expand Down
Loading