Skip to content

Commit fbea11e

Browse files
committed
Add live REPL demo and other fixes
1 parent c0f0e4f commit fbea11e

File tree

6 files changed

+1151
-11
lines changed

6 files changed

+1151
-11
lines changed
-11.1 MB
Binary file not shown.
70.2 KB
Loading

content/blog/browserpod-beta-announcement.mdx

Lines changed: 35 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,18 @@
11
---
2-
title: "BrowserPod: Client-side sandboxing in the browser using WASM"
3-
subtitle: "BrowserPod: zero latency in-browser code sandboxes in WebAssembly"
4-
description: "placeholder"
2+
title: "BrowserPod: WebAssembly in-browser code sandboxes for Node, Python, and Rails"
3+
description: |
4+
BrowserPod Beta is live: zero latency in-browser code sandboxes in WebAssembly for Node, Python and Rails.
55
authors:
66
- alessandro
77
- stefano
8-
pubDate: "December 10 2024"
9-
heroImage: "./banners/BrowserPod_beta-hero.png"
8+
pubDate: "December 10 2025"
9+
heroImage: "./banners/BrowserPod_beta-hero.webp"
1010
tags:
1111
- BrowserPod
1212
---
1313

1414
TLDR: We’re beta-launching BrowserPod today, a WebAssembly-powered code sandbox for Node.js, Python and Ruby on Rails. Pods are instantly provisioned in-browser containers that use client-side compute, and can be exposed to the public internet. You can [start using BrowserPod now][BP-link], or keep reading to learn more.
1515

16-
<video controls autoplay loop muted playsinline>
17-
<source src="./browserpod_demo.mp4" type="video/mp4" />
18-
</video>
19-
2016
Agentic coding, vibe coding, generative coding – different flavours of LLM-created or assisted code are everywhere, and their omnipresence are giving sandboxed computing environments a major moment in the spotlight. AI agents generate untrusted code, can introduce vulnerabilities and execute malicious instructions through prompt injection attacks or, on occasions, decide to wipe your whole filesystem. Sandboxes protect systems, local networks and data from threats by isolating agentic code in a secure virtual computing environment.
2117

2218
Sandboxes are typically ephemeral cloud instances. This is at first sight a great solution to the problem; by virtue of being in the cloud they’re naturally isolated from your system and they come with the additional benefit of portability, easily accessed through API calls and customized if needed. But they also come with a few drawbacks, for instance:
@@ -37,6 +33,27 @@ At Leaning Technologies, we’ve been at the forefront of WebAssembly-based solu
3733

3834
BrowserPod represents for us an opportunity to package everything we’ve learned in our 10+ years of experience to solve the problem of sandboxed computing. We can take advantage of the capabilities of modern browsers to reduce boot latency, pressure on data centers and the operational costs of provisioning virtual machines for untrusted user payloads.
3935

36+
import BrowserPodDemo_Beta from "@/components/BrowserPodDemo_Beta.svelte";
37+
38+
<figure class="w-full">
39+
<div class="w-full relative">
40+
<BrowserPodDemo_Beta
41+
client:only="svelte"
42+
showReplTab={true}
43+
readyActions={[
44+
{
45+
command: "node",
46+
args: [],
47+
terminal: "repl"
48+
}
49+
]}
50+
/>
51+
</div>
52+
<figcaption>
53+
Node 22 REPL running live in BrowserPod.
54+
</figcaption>
55+
</figure>
56+
4057
# A bit of history
4158

4259
Over the years, we’ve pursued multiple approaches to executing large-scale native payloads as browser applications. Although the details change for every scenario, there are a few general patterns that hold, these can be logically separated into three components:
@@ -99,7 +116,14 @@ What this means, in practice, is that whenever a Pod is booted it is assigned a
99116

100117
Any port which is bound to public interfaces inside the pod will be exposed to the internet via this secret link. By sharing a link like this, you can show early adopters or clients how your application works without setting up any actual hosting. Moreover, you’ll be able to test your application from mobile devices, for example by encoding the link in a QR code on your main device screen.
101118

102-
[VITE DEMO HERE]
119+
<figure class="w-full">
120+
<video controls autoplay loop muted playsinline>
121+
<source src="./browserpod_demo.mp4" type="video/mp4" />
122+
</video>
123+
<figcaption class="text-center">
124+
An example of BrowserPod being used to run a full Vite+Svelte in-browser editor.
125+
</figcaption>
126+
</figure>
103127

104128
Caption: An example of BrowserPod being used to run a full Vite+Svelte in-browser editor
105129

@@ -147,7 +171,7 @@ import { DISCORD_URL } from "@/consts.ts";
147171
/>
148172
</div>
149173

150-
We think BrowserPod has the potential to revolutionize client-side sandboxing, and we are looking to hear what you think!
174+
We think BrowserPod has the potential to revolutionize client-side sandboxing, and we are looking to hear what you think
151175

152176
[BP-link]: https://browserpod.io/
153177
[BP-demo-link]: https://vitedemo.browserpod.io/

0 commit comments

Comments
 (0)