尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Free, open-source voice and screen sharing for small groups (2–8). Runs in the browser on desktop and mobile — no account, no media server, end-to-end encrypted, peer-to-peer with automatic friend-bridge and TURN fallback. Built with Claude Code.
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
Voice and screen with friends. Device to device, encrypted, no account. Built for small groups (2 to 8 people). Free, no ads, no tracking, open source. ▶ Open NitroCall · Português A group of friends, the Nitro Poker Club, wanted one simple thing: to talk and see each other's screens (a game, a YouTube video with sound) without creating accounts, installing anything heavy, paying for a subscription, or handing their conversations to a company.查看完整 README ↗
A group of friends, the Nitro Poker Club, wanted one simple thing: to talk and see each other's screens (a game, a YouTube video with sound) without creating accounts, installing anything heavy, paying for a subscription, or handing their conversations to a company.
Big tools solve this by routing everything through their own servers. NitroCall does the opposite: the friends' own devices are the infrastructure. The page is a static file. Once it's open, GitHub is out of the picture: audio and screen go straight from one device to another.
There is no commercial intent. No paid tier, no ads, no data collection, no "pro version". The project is, and will stay, free and open.
You open the link ──► GitHub serves the page (~2.4 MB, once)
│
▼
Devices find each other at a public "meeting point" (PeerJS; backup: Nostr)
│
▼
The call goes DIRECT between devices (WebRTC) ← almost always
or through a FRIEND in the room acting as bridge ← when two can't reach each other
or through TURN, still encrypted ← last resort
An hour-long call does not use an hour of our server. GitHub only serves the file; the call's bandwidth is carried by the participants themselves, like a phone call between two phones.
"No server" means no media server and no server of ours storing data. To find each other, NitroCall relies on free public services:
| Service | Used for | What it sees |
|---|---|---|
| GitHub Pages | serving the page | that someone opened the site (like any website) |
| PeerJS (0.peerjs.com) | meeting point: reserving your slot in the room | an identifier derived from the room code (hash), IPs |
| Public Nostr relays | backup meeting point if PeerJS is down | signaling messages encrypted with the room key |
| STUN (Google/Cloudflare) | each device learning its own public address | your IP |
| TURN (Cloudflare) + Worker | last-resort relay | IPs and encrypted packets; it cannot hear or see anything |
The room code lives after the # in invite links and is never sent to GitHub.
| Device | Browser | How | Result |
|---|---|---|---|
| iPhone (iOS 18.7) | Safari, Chrome, Brave | real device, Wi-Fi and 4G, with bots in the room | joins, hears/is heard, 🔒, camera both ways, relay via TURN |
| Windows | Chrome, Edge | automated suites (200+ checks) and real use | everything |
| Android | Chrome (engine) | automated, emulated phone profiles | joins, camera, background/return |
| iPhone/Android | any | automated "WebKit-like" checks (strict ICE config, Safari adapter, blocked Worker) | joins |
Not verified on real hardware yet: Android phones, iPad, Firefox. If something fails there, open the
link with &debug=<any-word> at the end and send the maintainer that word — the app streams its log
live (encrypted) so the problem can be seen as it happens.
To be upfront: this project was written together with Claude by Anthropic, using Claude Code (CLI). I decided what I wanted, tested it with real friends, complained about what was bad and set the direction; Claude wrote practically all of the code, the automated tests and the docs, and helped investigate every problem (NAT, codecs, GPUs, screen quality).
NitroCall is part of my learning roadmap for Anthropic's tools: Claude Code, agents, AI-driven testing, and how to build something real and useful with them. If you're learning the same, feel free to read the history, borrow ideas and open issues.
Source code, tests (multi-browser end-to-end, an image-quality lab and a network emulator)
and build instructions live in app/. The optional TURN credentials Worker is in
app/cloudflare/turn-worker/.
MIT. Use it, copy it, change it, share it.
Nitro Poker Club · made among friends, for friends.