All Projects → myelnet → pop

myelnet / pop

Licence: BSD-3-Clause license
Run a point-of-presence within Myel, the community powered content delivery network.

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to pop

Peergos
A p2p, secure file storage, social network and application protocol
Stars: ✭ 895 (+3096.43%)
Mutual labels:  peer-to-peer, ipfs, decentralized, p2p
field-manual
The Offical User's Guide to OrbitDB
Stars: ✭ 178 (+535.71%)
Mutual labels:  peer-to-peer, ipfs, decentralized, p2p
Rust Ipfs
The InterPlanetary File System (IPFS), implemented in Rust.
Stars: ✭ 739 (+2539.29%)
Mutual labels:  peer-to-peer, ipfs, decentralized, p2p
Unstoppable Wallet Android
A secure and decentralized Bitcoin and other cryptocurrency wallet for Android phones. Supports Bitcoin, Ethereum, EOS, Binance Chain, Bitcoin Cash, DASH, ...
Stars: ✭ 165 (+489.29%)
Mutual labels:  peer-to-peer, ipfs, decentralized, p2p
Unstoppable Wallet Ios
A secure and decentralized Bitcoin and other cryptocurrency wallet for iPhone. Supports Bitcoin, Ethereum, EOS, Binance Chain, Bitcoin Cash, DASH, ...
Stars: ✭ 180 (+542.86%)
Mutual labels:  peer-to-peer, ipfs, decentralized, p2p
Js Ipfs
IPFS implementation in JavaScript
Stars: ✭ 6,129 (+21789.29%)
Mutual labels:  peer-to-peer, ipfs, decentralized, p2p
Orbit Db
Peer-to-Peer Databases for the Decentralized Web
Stars: ✭ 6,381 (+22689.29%)
Mutual labels:  peer-to-peer, ipfs, decentralized, p2p
Js Dag Service
Library for storing and replicating hash-linked data over the IPFS network.
Stars: ✭ 81 (+189.29%)
Mutual labels:  peer-to-peer, ipfs, decentralized, p2p
Yjs
Shared data types for building collaborative software
Stars: ✭ 5,894 (+20950%)
Mutual labels:  peer-to-peer, decentralized, p2p
Decentralized Internet
A SDK/library for decentralized web and distributing computing projects
Stars: ✭ 406 (+1350%)
Mutual labels:  peer-to-peer, decentralized, p2p
Ipfd
An imageboard, but images are stored in a peer-to-peer network
Stars: ✭ 77 (+175%)
Mutual labels:  peer-to-peer, ipfs, decentralized
Spruce Network
Decentralized peer-to-peer mesh network.
Stars: ✭ 61 (+117.86%)
Mutual labels:  peer-to-peer, decentralized, p2p
ipfs-chat
Real-time P2P messenger using go-ipfs pubsub. TUI. End-to-end encrypted texting & file-sharing. NAT traversal.
Stars: ✭ 84 (+200%)
Mutual labels:  peer-to-peer, ipfs, decentralized
Layr
A decentralized (p2p) file storage system built atop Kademlia DHT that enforces data integrity, privacy, and availability through sharding, proofs of retrievability, redundancy, and encryption, with smart-contract powered incentive scheme
Stars: ✭ 90 (+221.43%)
Mutual labels:  peer-to-peer, decentralized, p2p
Ensichat
Project discontinued
Stars: ✭ 143 (+410.71%)
Mutual labels:  peer-to-peer, decentralized, p2p
trystero
🤝 Serverless WebRTC matchmaking for painless P2P — Make any site multiplayer in a few lines — Use BitTorrent, IPFS, or Firebase
Stars: ✭ 512 (+1728.57%)
Mutual labels:  peer-to-peer, ipfs, decentralized
Wikipedia Ipfs
An exploration to host Wikipedia in IPFS
Stars: ✭ 158 (+464.29%)
Mutual labels:  ipfs, decentralized, p2p
Ipfs Pubsub Room
IPFS Pubsub room
Stars: ✭ 229 (+717.86%)
Mutual labels:  ipfs, decentralized, p2p
Bitchatclient
Technitium Bit Chat, a secure, peer-to-peer, instant messenger!
Stars: ✭ 111 (+296.43%)
Mutual labels:  peer-to-peer, decentralized, p2p
Gun
An open source cybersecurity protocol for syncing decentralized graph data.
Stars: ✭ 15,172 (+54085.71%)
Mutual labels:  peer-to-peer, decentralized, p2p


🍿

pop


Run a point-of-presence within Myel, the community powered content delivery network.

Technical Highlights

  • Libp2p, IPFS and Filecoin protocols for data transfer.
  • Content is routed via Gossipsub.
  • New content to cache is directly replicated by connected peers.
  • Payments to retrieve content are made via Filecoin payment channels.

Background

Our mission is to build a community powered content delivery network that is resilient 🦾, scalable 🌏, and peer-to-peer ↔️ to suit the long-term needs of Web3 applications.

We're currently using Filecoin building blocks and are aspiring to make this library as interoperable as possible with existing Web3 backends such as IPFS.

This library is still experimental so feel free to open an issue if you have any suggestion or would like to contribute!

Install

As a CLI:

$ go install github.com/myel/pop/cmd/pop@latest

As a library:

$ go get github.com/myelnet/pop/exchange

CLI Usage

Run any command with -h flag for more details.

$ pop
USAGE
  pop subcommand [flags]

This CLI is still under active development. Commands and flags will
change until a first stable release. To get started run 'pop start'.

SUBCOMMANDS
  start   Starts a POP daemon
  off     Gracefully shuts down the Pop daemon
  ping    Ping the local daemon or a given peer
  put     Put a file into an exchange transaction for storage
  status  Print the state of any ongoing transaction
  commit  Commit a DAG transaction
  get     Retrieve content from the network
  list    List all content indexed in this pop
  wallet  Manage your wallet

FLAGS
  -log info  Set logging mode

Metrics Collection

pop nodes can push statistics measuring the performance of retrievals to an InfluxDB v2 database if certain environment variables are set. Set these variables as follows:

export INFLUXDB_URL=<INSERT InfluxDB ENDPOINT>
export INFLUXDB_TOKEN=<INSERT TOKEN>
export INFLUXDB_ORG=<INSERT ORG>
export INFLUXDB_BUCKET=<INSERT BUCKET>

Auto-updating

pop supports auto-updating via GitHub webhooks.

To activate it pass the flag -upgrade-secret to pop start such that it matches the GitHub webhook secret set for your server. Make sure you run as sudo, or that your current user has authorization to modify your pop binary.

Your pop will then automatically download and install new releases.

Deployment

You can deploy a cluster of nodes on AWS using kubernetes, as detailed in infra/k8s.

Library Usage

See go docs.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].