๐ ๐ฝ๏ธ MisoTube
August 24, 2026 ยท View on GitHub
A YouTube-style video app written entirely in Haskell, compiled to WebAssembly with Miso.
Everything on screen is rendered from Haskell โ the home grid uses live
<video> elements as thumbnails (real first frames via media fragments, real
durations from loadedmetadata, muted previews on hover), and the watch page
drives a chromeless <video> through Miso's Miso.Media API: play/pause,
seeking, volume, playback rate, theater mode, fullscreen and autoplay-next.
Features
- ๐ Home grid with hover previews, duration badges and category chips
- ๐ Search across titles and channels
- ๐บ Channel pages with subscribe/unsubscribe
- ๐ Shorts, ๐ฅ Trending, ๐ Library (liked videos) and ๐ History feeds
- โถ๏ธ Custom player chrome, entirely Haskell-driven
- ๐ฑ Mobile friendly, with a drawer sidebar
Try online
Build and run
Install Nix Flakes, then:
nix develop
make
make serve