ipfs-chat
orbitdb
Our great sponsors
ipfs-chat | orbitdb | |
---|---|---|
2 | 32 | |
125 | 8,114 | |
- | 0.9% | |
0.0 | 9.3 | |
over 1 year ago | 7 days ago | |
Shell | JavaScript | |
GNU General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ipfs-chat
-
Is there a real serverless working example of pubsub usage?
ipfs-chat: This is not a webapp, but a terminal-based end-end encrypted chatroom, private messaging and file-sharing application that is fully server/broker-less [not requiring any rendezvous server, except of course go-ipfs's default bootstrap nodes] and relies completely on the IPFS-pubsub and IPNS-pubsub.
-
Terminal-based secure chatrooms using Go-IPFS CLI; run from a single Bash script
Here is my labor of love. Hope you like it :-)
orbitdb
- OrbitDB reaches version 1.0 after 8 years of development
-
Open source P2P alternative to Slack and Discord built on Tor and IPFS
OrbitDB is not well-funded, but there's fresh work happening recently by some dedicated volunteers: https://github.com/orbitdb/orbitdb/commits/main
- Current Progress of IPFS
-
orbit-db VS db3 - a user suggested alternative
2 projects | 15 Jan 2023
- Jack Dorsey texts Elon Musk (March 26, 2022)
- Decentralised public immutable database
-
Ask HN: Is there a descentralized DB with a simple social conflict resolution?
I've been thinking it might be practical to build a simple decentralized database, where agents just know each other, so conflict resolution does not need to be so strong and can rely on the social layer.
I think this applies to most databases, but I'm particularly thinking of internal enterprise databases, some social networks, any federated database system, and different devices of a single user
I'm thinking of this features:
1- Append-only?, full history of operations. Deletes / edits do not remove data, they only modify the "active state"
2- Agents are public keys or similar (DIDs?)
3- Operations are signed, and receivers verify if operation is valid, and sender is allowed
4- Operations form a Merkel-DAG (similar to git, they link to the tips of current "active state", like a commit/merge in git)
So far I think I've basically described [OrbitDB](https://github.com/orbitdb/orbit-db)
Consensus is where things get real hard, [OrbitDb seems to use a last-write-wins CRDT](https://news.ycombinator.com/item?id=22920204), and although I don't know the details of orbitDb, I think for many simple use-cases, conflicts can just be resolved on the social layer. But I think we need to provide agents with good tools to resolve conflicts
I'll try my best here with some ideas:
- When merging, we can order operations by their timestamp, if operations enter conflict, raise it to the conflicting agents, or someone with permission to solve them.
If an agent makes public an operation that forks its own history, mark agent as malicious or compromised, alert other agents, this needs resolution on the social layer, you have proof of misconduct, an agent has signed diverging operations
Any operation becomes fully settled if you have proof that all agents of your system have referenced it directly or indirectly through newer operations.
Timestamps can be upgraded by using @opentimestamps to get proof that an operation existed at time X (prevents creation of operations in hindsight). Though this does not prove operation has been made public
-
How to make a crowdsourced distributed metadata database?
Both use OrbitDB: Peer-to-Peer Databases for the Decentralized Web. JavaScript. MIT license. repo
-
Release: New features for Nalli
I think a wallet-agnostic memo solution is definitely the way. Having wallets that end up (partly) incompatible is only gonna hurt the UX. Maybe a decentralised DB solution like OrbitDB or GunDB can be the best way forward, although I haven't dove deeply into the docs yet.
-
Building a decentralized database
Checkout this https://github.com/orbitdb/orbit-db peer-to-peer database for the decentralized Web.
What are some alternatives?
Peergos - A p2p, secure file storage, social network and application protocol
ipfs - Peer-to-peer hypermedia protocol
berty - Berty is a secure peer-to-peer messaging app that works with or without internet access, cellular data or trust in the network
web3.storage - DEPRECATED ⁂ The simple file storage service for IPFS & Filecoin
docker-etebase - Docker image files for Etebase server
gun - An open source cybersecurity protocol for syncing decentralized graph data.
ipfs-pubsub-room - IPFS Pubsub room
js-libp2p - The JavaScript Implementation of libp2p networking stack.
unstoppable-wallet-android - A powerful non-custodial multi-wallet for Bitcoin, Ethereum, Binance Smart Chain, Avalanche, Solana and other blockchains. Non-custodial crypto and NFT storage, onchain decentralized exchange, institutional grade analytics for cryptcurrency and NFT markets, extensive privacy controls and human oriented design. Implemented on Kotlin.
field-manual - The Offical User's Guide to OrbitDB
solid - Solid - Re-decentralizing the web (project directory)