{"data":{"slug":"trystero","name":"Trystero","tagline":"MIT serverless WebRTC rooms via Nostr/MQTT/BitTorrent/IPFS","category":"comms","categoryName":"Comms","url":"https://trystero.dev","github":"https://github.com/dmotz/trystero","pricing":"open-source","hook":"Trystero is serverless WebRTC room discovery when you want multiplayer without deploying PeerServer, Colyseus, PartyKit, or Gatho.","whatsGood":"MIT. npm `trystero` by Dan Motzenbecker (dmotz). Same API across Nostr (default), MQTT, BitTorrent, IPFS, Supabase, Firebase, or an optional self-hosted WebSocket relay. Rooms, broadcast, automatic (de)serialization, chunking/throttling, media streams with metadata, end-to-end session encryption. Works in browsers; Node/Bun/Deno with a WebRTC polyfill. Homepage trystero.dev; source github.com/dmotz/trystero.","theCatch":"Vs PeerJS, Colyseus, PartyKit, and Gatho: discovery+P2P data library — not a rooms product, not a state-sync game server, not Durable Object rooms, not a process-per-room toolkit, not a PeerServer you host. NAT/TURN still bites some networks even after signaling succeeds. You still own matchmaking UX, presence policy, and anything that needs a true authoritative server.","verdict":"MIT serverless WebRTC matchmaking. Free forever; pick it when discovery without your own signaling stack is the point.","addedAt":"2026-09-09","featured":false,"domain":"Comms","subSpecialty":"Realtime","subcategory":"Realtime","tags":["self-host","permissive","realtime","active"],"capabilities":["webrtc","p2p","serverless"],"surfaces":["Self-host"],"ecosystem":["Browser","Node.js"],"licenseModel":"OSS/MIT","githubStars":2796,"starsPerWeek":9,"access":"free","archived":false,"repo":{"createdAt":"2020-10-26","pushedAt":"2026-10-18","license":"MIT","archived":false,"checkedAt":"2026-10-19"}},"related":[{"slug":"livekit","name":"LiveKit","tagline":"Apache-2.0 realtime rooms, SFU, and agents"},{"slug":"chatwoot","name":"Chatwoot","tagline":"MIT-core support inbox you can self-host for $0/agent"},{"slug":"socket-io","name":"Socket.IO","tagline":"MIT realtime library with fallbacks, not a hosted product"},{"slug":"plunk","name":"Plunk","tagline":"AGPL-3.0 transactional email, workflows, and broadcasts"},{"slug":"centrifugo","name":"Centrifugo","tagline":"Apache-2.0 Go realtime server binary, not in-process Socket.IO"}],"links":{"self":"/api/gems/trystero","html":"/gems/trystero","markdown":"/gems/trystero.md","category":"/api/gems?category=comms","categoryPage":"/stacks/comms"}}