๐ webrtc-swarm with friends
npm install friends-swarm
var friendsSwarm = require('friends-swarm')
Contributions welcome! Please read the contributing guidelines first.
:bee: a webrtc-swarm with friends
License: MIT License
๐ webrtc-swarm with friends
npm install friends-swarm
var friendsSwarm = require('friends-swarm')
Contributions welcome! Please read the contributing guidelines first.
This is a non-trivial change, but eventually it'd be great to see Friends using hypercore.
It offers one particular "killer feature" that'd be of great use to Friends, which is selective replication. Hyperlog forces complete replication of a data set, which, for chat, is almost never desirable: you don't want to download 100% of a channel's chat history when you join; you want just the last N messages. Hypercore provides this while still keeping the crypto guarantees on data integrity.
The big caveat is that hypercore doesn't handle many cross-referencing append-only logs like hyperlog does. A great module for someone to build out would be hyperlog-hypercore
or hyperlog2
: a module that provides hyperlog's API, but is powered by hypercore underneath.
Need fully fleshed out readme.
This could be tricky! how can this be tested?
Hey!
I've been thinking about how to solve the problem of a peer-to-peer group chat between a significant number of users without overloading the network: if I'm in a room with 1000 people, I don't want my browser to open 999 connections.
If I'm understanding the code correctly, does friends just open a connection to every other peer like I just described?
Lines 100 to 120 in 02bc0e1
This feels like it's going to be a super interesting problem to solve: have any of you thought about it before or know anything about the topic?
We should add an option when creating a friends-swarm
to override the official friends
signalhubs.
Should we remove the hardcoded signalhubs altogether and modify friends to pass in its hubs?
It'd be helpful to see the core p2p database part of this module broken out into its own module, with friends-swarm
layered on top. friends-db
then could just expose db ops and generic replication streams that would allow for additional, non-webrtc transports too.
the code :
"var friendsSwarm = require('friends-swarm')" is
too simple, please show us full example so that we can understand it .
Thanks
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.