Hacker News Digest

Тег: #nostr

Постов: 2

Are we decentralized yet? (arewedecentralizedyet.online) 🔥 Горячее 💬 Длинная дискуссия

  • Fediverse (Mastodon, Pixelfed и др.): серверы разделены на «крупнейший» и «остальные» в процентах.
  • Atmosphere (Bluesky, WhiteWind и др.): аналогичное деление.

Данные обновляются регулярно.
Концентрация измеряется индексом Херфиндаля-Хиршмана (HHI):

  • 0 ≈ полная децентрализация,
  • 10 000 ≈ монополия.
    В экономике: <100 — высокая конкуренция, <1500 — неконцентрировано, >2500 — высокая концентрация.

Отслеживаются активные пользователи: для Fediverse — на серверах (инстансах), для Atmosphere — на PDS (личных серверах данных).

Код и данные на GitHub. Предложения и PR приветствуются.
Автор: Rob Ricci (@ricci@discuss.systems, @ricci.io).

by Bogdanp • 30 августа 2025 г. в 19:26 • 436 points

ОригиналHN

#fediverse#mastodon#bluesky#atproto#nostr#bittorrent#bitcoin#github#smtp#hhi

Комментарии (223)

  • Обсуждение крутилось вокруг того, насколько реально «избежать централизации» в разных сетях: Fediverse, ATProto/Bluesky, Nostr, Git, BitTorrent, SMTP, Bitcoin.
  • Участники согласились, что полной децентрализации не существует: всегда появляются «точки притяжения» — GitHub, крупные инстансы Mastodon, Coinbase, трекеры.
  • Сравнивали HHI-метрику: Mastodon выглядит менее сконцентрированным, но уступает по числу пользователей; Bluesky проще для массового пользователя, но дороже в инфраструктуре.
  • Поднимали риски: спам и DDoS в открытых сетях, исчезновение мелких узлов, дефедерация, отсутствие UX-консистентности.
  • Главный вывод: «децентрализация» сама по себе не цель, а баланс между устойчивостью к цензуре, удобством и экономикой узлов.

Make any site multiplayer in a few lines. Serverless WebRTC matchmaking (oxism.com)

Trystero — безсерверный WebRTC-матчмейкинг.
Добавь мультиплеер в пару строк.

Прямо сейчас все на этой странице соединяются напрямую и синхронизируют курсоры и клики.
Поддерживаются BitTorrent, Nostr, MQTT, IPFS, Supabase, Firebase.

Пример:

import {joinRoom} from 'trystero'
const room = joinRoom({appId: 'trystero-lounge'}, '101')

room.onPeerJoin(addCursor)
room.onPeerLeave(removeCursor)

const [sendMove, getMove] = room.makeAction('mouseMove')
const [sendClick, getClick] = room.makeAction('click')

window.addEventListener('mousemove', e => sendMove([e.clientX, e.clientY]))
window.addEventListener('click', () => sendClick(randomFruit()))

getMove(([x, y], id) => setCursorPosition(id, x, y))
getClick((fruit, id) => dropFruitFrom(id, fruit))

Также доступны аудио/видео-потоки и файлы.

by haxiomic • 25 августа 2025 г. в 09:48 • 197 points

ОригиналHN

#webrtc#bittorrent#nostr#mqtt#ipfs#supabase#firebase#p2p#javascript#serverless

Комментарии (59)

  • Демо-страница Trystero вызвала восторг: «круто», «весело», «отличный API», но подчёркнули, что это не «serverless» — просто чужие серверы для SDP-сигналинга.
  • Вопросы масштабируемости: p2p-видео комнаты выше 4-8 человек требуют SFU/TURN-серверов, иначе падает кодировка и сеть.
  • Safari и Firefox жалуются на лаги, зависания и DOMException при множестве PeerConnection.
  • Сравнение с PeerJS: тот использует один центральный сервер, Trystero — гибкий мульти-сигналинг.
  • Подняли юридические риски: в UK и штате Mississippi такой «социальный» сайт обязывает собирать ID пользователей.