// the find
muxinc/stream.new
The repo for https://stream.new
stream.new is Mux's reference implementation for a video upload and sharing app, built with Next.js App Router. It's meant to serve as a production-quality example of how to integrate Mux's direct upload, webhook, and playback APIs, and it's also the actual live service at stream.new.
- Real production app, not a toy demo — the code handles edge cases like polling with dynamic SWR refresh intervals, webhook signature verification, and multiple video orientations (horizontal, vertical, super vertical).
- Good range of player options in the codebase: mux-player, mux-player-classic, plyr, and even a Winamp skin player — useful as a reference for different embedding strategies.
- AI moderation integration via @mux/ai covers two providers (OpenAI + Hive AI) with configurable thresholds and auto-deletion, which is a realistic pattern for content platforms.
- Test coverage exists for components and lib utilities (Jest + spec files present), and there's a CI workflow — more than most example repos bother with.
- Hard dependency on Mux as the sole infrastructure — there's no abstraction layer, so this isn't useful as a reference architecture if you're not already committed to paying for Mux.
- The Slack moderator uses a plaintext password (`SLACK_MODERATOR_PASSWORD`) for authorizing asset deletion, which is a pretty weak auth mechanism to ship in a public-facing reference app.
- There's a `vendor/mux-mux-node-v14.0.0.tgz` checked into the repo, implying a vendored package outside of npm — this is a maintenance hazard and suggests some dependency management issues.
- No persistent storage beyond Mux's own API — there's no database, so metadata, user associations, or moderation audit trails don't exist. Fine for a demo, but anyone trying to extend this into a real product hits a wall immediately.