TypeScript MIT

p2p.kiwi

p2p.kiwi πŸ₯, Cross-Platform screen πŸ–₯️ sharing πŸ“‘ made simple ⚑.

D

dont-be-evil-company

Dernière activité 25 sept. 2026
dont-be-evil-company/p2p.kiwi

6,6Β k

Γ©toiles

293

forks

4

issues ouvertes

cross-platformmulti-cursorp2ppair-programmingpairingpeer-to-peerscreensharing

Ce README est souvent en anglais.

p2p.kiwi logo

p2p.kiwi - P2P Conferencing and Screen Sharing

Downloads Discord GitHub release (latest by date)

Install β€’ Website β€’ Privacy Policy β€’ Terms of Service β€’ Code of Conduct

p2p.kiwi P2P Conferencing and Screen Sharing is a simple and easy-to-use screen sharing tool for Mac, Windows, and Linux.

It utilizes a peer-to-peer connection to share your screen with others, without the need for an account. STUN and optional TURN servers are still used to exchange ICE connectivity information.

That is not a signaling server for chat or media keys.

p2p.kiwi open-graph image

Install

Install Manually

Grab the latest release from the GitHub releases page.

Install via Arch Linux AUR

paru -S p2p-kiwi-bin`

or

yay -S p2p-kiwi-bin`

Install via Homebrew

brew install --cask p2p-kiwi

E2EE (End-to-End Encryption)

Warning

Don't determine whether the call is E2EE by checking whether WebRTC reports DTLS-SRTP. DTLS-SRTP is expected to encrypt transport.

Our actual E2EE guarantee comes from MLS-managed application keys encrypting the media with SFrame.

E2EE (End-to-End Encryption) Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                  MLS                        β”‚
β”‚       membership + E2EE key management      β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                 SFrame                      β”‚
β”‚       E2EE encryption of media frames       β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚               DTLS-SRTP                     β”‚
β”‚          WebRTC transport security          β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚               ICE / UDP                     β”‚
β”‚               networking                    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

MLS answers: "Who is in this encrypted group, and what cryptographic secrets should they possess?"

SFrame answers: "How do I encrypt this video/audio frame so infrastructure carrying it can't read it?"

DTLS-SRTP answers: "How do I securely transport WebRTC media over this connection?"

E2EE (End-to-End Encryption) Example

     MLS Group
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Alice Bob Carol β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         β”‚
 derives E2EE keys
         β”‚
         β–Ό
      SFrame
   encrypt media
         β”‚
         β–Ό
     DTLS-SRTP
         β”‚
 WebRTC transport
         β”‚
         β–Ό
        Peer

Projets similaires

Free, open-source screen sharing for friends. P2P-first, with browser viewing, a desktop app and optional self-hosting.

TypeScriptp2pscreen-sharingself-hosted
TTNTcraftHIM
1,3Β k Γ©toiles69

Deskreen turns any device with a web browser into a secondary screen for your computer. ⭐️ Star to support our work!

TypeScriptblueprintjsdarkwire-iodeskreen
Ppavlobu
21,5Β k Γ©toiles1,2Β k

Share your screen with one simple room code. No downloads or sign-ups required.

TypeScriptscreen-sharingwebrtc
Ttonghohin
1,7Β k Γ©toiles135