Full Stack · Engineering ProjectFebruary 1, 2025 — March 1, 2025

P2P WebRTC File Share

A peer-to-peer file sharing application using WebRTC for direct transfer and FastAPI for WebSocket signaling, with no server-side storage.

Domain

Full Stack · Web Dev

Architecture

Full-Stack System

Core Runtime

FastAPI · WebSockets

Status

Production Ready

Full Stack
P2P WebRTC File Share
5 TechnologiesVerified Build
RUNTIME INTERFACE STUDIO

System Interface & Feature Workflows

High-resolution captures of core production runtime views and algorithmic tools.

01 / 02
p2p-file-share.app/room-join-signaling
1/2
P2P WebRTC File Share - Room Join & Signaling
Click to expand
WORKFLOW 01Room Join & Signaling

Users join a room via WebSocket. The FastAPI server manages room state and relays WebRTC signaling data (offer, answer, ICE candidates) between peers.

All Workflows & Screens (2)Tip: Use ← → keys to cycle

Architecture & Overview

Built a direct peer-to-peer file sharing application that guarantees privacy by ensuring no files are uploaded to any central server.

The architecture leverages FastAPI and WebSockets exclusively for signaling (exchanging connection details like SDP offers/answers and ICE candidates).

Once a WebRTC connection is established, files are chunked into 16KB packets and sent directly via DataChannels from the uploader to the downloader, after which they are reassembled locally.

Shiven Goomer

Engineered by Shiven Goomer

Full Stack & Quant Engineer

Technical Highlights & Outcomes

FastAPI and WebSockets for real-time signaling and room management
WebRTC DataChannels for secure, direct P2P data transfer
No server-side file storage; fully decentralized transfer
Binary chunking and local reassembly using browser Blob APIs
Real-time peer presence and offline state handling

Full Technology & Tooling Stack (5)

FastAPIWebSocketsWebRTCPythonJavaScript