A tiny player
that's actually
good.

3 KB gzip core. Modular streaming, ads, DRM, and UI — add only what you need. Built on web standards.

3 KB gzipped·zero deps·ESM only
Why Vide

Small footprint,
big capability.

No bloat, no implicit behavior. Just a clean, composable player that delegates to the browser whenever possible.

Web Standards First
Proxies HTMLVideoElement directly. play(), pause(), currentTime — the API you already know.
3 KB Core
Loads instantly. Zero runtime deps. Every plugin is a separate import — pay only for what you use.
Full Ad Stack
VAST 4.2, VMAP, SSAI, VPAID, SIMID, OMID, and Google IMA — every ad format, built-in.
Streaming & DRM
HLS and DASH with adaptive bitrate. Widevine, FairPlay, PlayReady, and ClearKey.
Framework Ready
React hooks, Vue 3 composables, Svelte 5. First-class TypeScript. Tree-shakeable ESM.
Event API
Subscribe to anything. Build analytics, chapters, and custom UI on top of a clean event bus.
Quick start

Three steps
and you're done.

Sensible defaults, thorough docs, and TypeScript types from the first import.

1

Install

npm, pnpm, or a script tag.

pnpm add @videts/vide
2

Create

One function. Pass a video element.

createPlayer(videoEl)
3

Extend

Add plugins for what you need.

player.use(hls())
Read the full docs →
main.ts
// pnpm add @videts/vide
import { createPlayer } from "@videts/vide";
import { hls } from "@videts/vide/hls";
import { ui } from "@videts/vide/ui";
import "@videts/vide/ui/theme.css";

const video = document.querySelector("video");
const player = createPlayer(video);

player.use(hls());
player.use(ui({ container: video.parentElement }));

player.src = "https://example.com/live.m3u8";

// Listen for events
player.on("play", () => {
  console.log("playing");
});
Bundle impact

Pay only for what you use.

Every plugin is a separate entry point. Tree-shaking works out of the box.

Core3.0 KB
UI + Theme10.3 KB
HLS1.4 KB
DASH1.4 KB
VAST 4.27.9 KB
VMAP8.8 KB
DRM2.6 KB
SSAI2.3 KB

Ship a better player today.

Open source, MIT licensed. Built for teams who care about performance.