~/talk

Building a Browser Based Code Editor

Talkat NDC London 2025 · 2025-01-27..01-31· [javascript, web-platform, typescript]
slides:none on file

Builds a browser editor that accepts TypeScript, syntax highlights live and executes user code by sending it to Deno Subhosting functions which return a URL shown in an iframe; uses React + Vite + TypeScript on the client, Oak on the server, and Prism.js with an overlay trick (transparent textarea over a highlighted code block) for editing. Claims sandboxed execution in milliseconds, avoids provisioning clusters or heavy ops by delegating to subhosting, and the demo successfully runs live imports and HTTP examples.

AI-written summary · about

  1. 0:00Introduction
  2. 1:13Building in-browser editor
  3. 2:38Security risks of third-party code
  4. 4:25Tools for the editor
  5. 5:25Dino and its features
  6. 8:35Setting up with Dino
  7. 12:49Project structure and UI
  8. 17:05React UI logic
  9. 19:14Server-side API
  10. 22:07Deploying user code
  11. 25:46Syntax highlighting
  12. 28:16Deploying with Dino Deploy
  13. 29:44Live demo
  14. 33:18Benefits and use cases
  15. 34:04Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.