HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
Peer5
ShareFest
JavaScript2013–2024
Peer5 / ShareFest

ShareFest

Web based p2p file sharing built on WebRTC Data Channels API

11Distinct people
16Mentions
1Explicit recommenders
1.7KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Web based p2p file sharing built on WebRTC Data Channels API

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

It is way more complicated than that. WebRTC is all great and shiny but there is strong obstacles to build correct data transfer applications on top of that: - You still need a…

tOkeshu used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year16 dated mentions

Observed mentions: 2013-02-04 20:14:28 UTC to 2024-07-08 02:15:53 UTC.

0510152013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 13 mentions; 1 submissions, 12 comments20132014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20182019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC13112
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC101
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC000
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC000
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC000
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC101
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC000
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC000
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC000
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC000
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC000
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC101

What Hacker News says

16 sources
In Sharedrop: Easy P2P file transfer powered by WebRTC – inspired by Apple AirDrop
tOkeshu·Dec 19, 2013Recommendation phrase
It is way more complicated than that. WebRTC is all great and shiny but there is strong obstacles to build correct data transfer applications on top of that: - You still need a server to do the "signaling" part - NAT are everywhere and will fail your p2p connections sometimes (14% of WebRTC calls according to Google, back in may) [1] - Ultimately there is a problem with JavaScript API that does not allow you to download big files seamlessly The signaling part can be solved in many ways but the server approach is the easiest and probably the most efficient/reliable one. For more informations I recommend checking an article on the infrastructure needed for WebRTC applications [2] The NAT problem is solved by ICE via STUN and TURN [3]. TURN is the ultimate fallback, it is a media relay. TURN servers are bandwidth expensive and most of them r
Read the rest
equire credentials in a way that does not fit WebRTC properly. Finally, there is the browsers problem. None of them provide a proper and standard way to give you the ability to download a stream of data coming from JavaScript (although after checking the issue, sharefest may have solved this problem, but I don't know if it works properly with firefox). There the File API in Chrome but it is not supported in Firefox. There is the blob URI but you need the whole file to create this object. This mean that your application will slow down your browser in the case of a big file sharing [4]. Ideally I wanted to see the stream API be implemented but it seems it's not going to happen, so we need something else [5]. In conclusion, no, it's not as easy as you think it is. To have a proper file sharing application you will need to address ALL of these problems. Moreover, it's good to note that these problem are not specific to WebRTC applications. Indeed, most of these are problems we have with the Internet in general. WebRTC is just an API on top of existing solutions. I hope this answer was not too negative but informative enough :) [1] http://webrtcstats.com/first-webrtc-statistics/ [2] http://www.html5rocks.com/en/tutorials/webrtc/infrastructure... [3] https://en.wikipedia.org/wiki/Interactive_Connectivity_Estab... [4] https://github.com/Peer5/ShareFest/issues/8 [5] https://bugzilla.mozilla.org/show_bug.cgi?id=891286 EDIT: formating/typos
In My contribution to XKCD’s #949
sharefest.me is another alternative to secured file sharing. The main advantage is browser only - sandbox security. And p2p - files don't touch the server. Although not yet as secured as the other, we're working to improve it. Would love any security feedback on github.com/peer5/sharefest/issues
In Prism Break
Nothing (assuming the MITM is someone who can break HTTPS or Peer5 themselves), which is why I proposed this: https://github.com/Peer5/ShareFest/issues/30#issuecomment-20... You can download ShareFest, audit it and store it locally so you can run your known-good version. It's just an HTML page and a few JS files (or at least it was, last time I looked). I was going to create a version of this that was a single webpage and had as little code as possible (for auditability and ease of saving/deployment), but other projects got in the way (plus it's easier to improve ShareFest than write it from scratch).
In An easy way to share files P2P, and how it works
I submitted a feature request for encryption over this (it's probably vulnerable to MITM attacks as-is, as you never verify the recipient). My request was: * Generate the URL like sharefest.me/roomid#randomstring * Sharefest encrypts the file contents before and after transmission with randomstring as key using the SJCL. * Send the URL/key out of band, over a secure channel. * Voila, end-to-end crypto. I don't know if anything became of it, though. EDIT: Oh, here it is: https://github.com/Peer5/ShareFest/issues/24
In An easy way to share files P2P, and how it works
Great suggestion. Added on https://github.com/Peer5/ShareFest/issues/29 I think the main advantage of WebP2P projects over traditional client based projects is that they can use the power of the web to enhance the experience. Whether it's by adding great user interface, social features, search, easy embedding and sharing which are so inherent in the web today. Looking forward for this to happen!
In Sharefest HTML5 plugin-free P2P file sharing platfrom using WebRTC DataChannels

Showing the 15 most recent of 16 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.