npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@socialtip/asset-proxy-video-player

v0.1.0

Published

MediaSource video player for asset-proxy with an optional React component

Readme

@socialtip/asset-proxy-video-player

MediaSource video player for asset-proxy. Streams video via the MediaSource API with support for cache-miss streaming, and falls back to plain <video src> on unsupported browsers.

Browser support

  • ManagedMediaSource on iPhone Safari (17.1+)
  • MediaSource on desktop browsers and iPad Safari
  • Plain <video src> fallback when neither is available

Installation

npm install @socialtip/asset-proxy-video-player

Usage

Imperative (no framework)

import { playVideoWithMediaSource } from "@socialtip/asset-proxy-video-player";

const video = document.querySelector("video")!;
const controller = new AbortController();

playVideoWithMediaSource(
  video,
  "/cors:1/cdc:1/f:fmp4/video.mp4",
  controller.signal,
);

React component

Requires react as a peer dependency.

import { MediaSourceVideo } from "@socialtip/asset-proxy-video-player/react";

<MediaSourceVideo src="/cors:1/cdc:1/f:fmp4/video.mp4" muted loop />;

URL requirements

The source URL must include:

  • cors:1 — enables CORS headers so the player can fetch the video
  • codec:1 or cdc:1 — tells the proxy to expose codec info in the Content-Type header, needed to configure the MediaSource buffer
  • f:fmp4 — required for cache-miss streaming. Plain mp4 is not streamable on cache miss, and webm does not require MSE.