-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Добавить описание технологии #3
Comments
Сейчас проект на стадии Proof of Concept,это больше демо того что это вообще возможно и поэтому многое устроено наивно. Я отвечу как оно уже работает, и как можно сделать потом. Все написано на JS, соответственно можно прогонять проект прямо из HTML файла. Проект состоит из нескольки ключевых деталей:
Внутри гит использует BrowserFS(https://github.com/jvilk/BrowserFS).
Соединение и синхронизация данных выполняется через WebRTC data channels, пока сделана full mesh топология. Это работает только для малого числа пользователей. Но можно было бы использовать уже работающий в JS WebTorrent, не знаю IPFS, blockchain , существующие протоколы что бы быть настоящей распределенной сеткой и OpenSource бы уже ничто не угрожало))) Или может даже имплементировать какие-то хорошие протоколы полностью через WebRTC, что бы обеспечить универсальность и кроссплатформенность Signalling(поиск пользователя в сети) можно делать в ручную - тогда надо пересылать друг другу коды например через мессенджер или фоткать QR коды друг друга) Но уже поддерживаются signalling через HTTPS или Firebase. Обычно его имплементируют через вебсокеты. Хотелось бы пока оставаться универсальными и пускай каждый делает signalling как хочет. Кстати проверял и соединение работает на локальной сети без подключения к интернету. То есть это и приватно и устойчиво, и потенциально быстрее. Например можно маленькой командой работать в своем доме и пакеты даже его и не покинут.
В идеи архетиктуры есть три сущности - приложения, данные, сеть. Хотелось бы хранить данные полнустью у пользователя. И что бы доступ к ним и к сети запрашивали приложения в Sandbox манере. И тогда можно было бы использовать разные приложения для тех же данных - хочешь пользуешься Paint, хочешь Photoshop. И если данные хранить у пользователя, то распределенный фейсбук будет использовать тоже самое что и распределенный myspace, и тогда пускай они уже конкурируют как просто приложения. А не так что у кого данные тот и выйграл. |
Я скопирую постом ниже ответ данный автором в комментарии в youtube.
Думаю полезно этот ответ добавить в Wifi или Readme.
The text was updated successfully, but these errors were encountered: