Skip to content

Instantly share code, notes, and snippets.

View daviddias's full-sized avatar

David Dias daviddias

View GitHub Profile

ImmutableDB

An interface for immutable databases

ImmutableDB is an abstract interface for content-addressed databases that:

  1. save the same blob of data to the same key every time (write)
  2. return the same blob of data with the same query key every time (read)

The difference to a a traditional key-value store is that the key doesn't get specified explicitly. Instead, the key gets calculated based on the data using a hashing function. This is also called content-addressed storage.

@victorb
victorb / a-readme.md
Last active September 5, 2016 21:16
Makes it clear if you're on a private Github repository or not by making the header background BLACK!

Client-Side Services

This is a proposal of a pattern for building interlinking web apps. It would allow sandboxed integration with third-party services running on the same computer.

This would enable:

  • services to manage their own client-side secrets (e.g. private keys)
  • building shared caches
  • sharing p2p network resources
@joyrexus
joyrexus / README.md
Last active February 24, 2024 15:16
collapsible markdown

collapsible markdown?

CLICK ME

yes, even hidden code blocks!

print("hello world!")
// This script counts how many days you have been in the USA
// This is a personal script, use it at your own risk
// This is not an official tool and it can do wrong calculations
// which might result in loss in visa status, green card, citizenship
// and whatever you can think of
// This extracts data from the i94 website from the history result view
function daysInYear(year) {
var recs = angular.element(".history-results").scope().vm.recs
@vmx
vmx / exploration-graphsync.md
Last active May 18, 2018 16:01
Exploration for GraphSync

This is where the actual retrieving of the data happens: https://github.com/ipfs/js-ipfs-unixfs-engine/blob/7992ad9860360da3f7a9fb0639e4a7a67746057f/src/exporter/file.js#L117

Where the Wantlist (the block that IPLD requested) is sent off: https://github.com/ipfs/js-ipfs-bitswap/blob/51f5ce08bad4876c9b709eba27faac533e9c00d4/src/want-manager/index.js#L125

Next step: find where the wantlist is received Decision Engine gets the Wantlist and then sends of the corresponding blocks Here it gets the blocks it should send from the blockstore: https://github.com/ipfs/js-ipfs-bitswap/blob/51f5ce08bad4876c9b709eba27faac533e9c00d4/src/decision-engine/index.js#L99

@pgte
pgte / peer-star-app.md
Last active June 27, 2018 14:50
peer-star-app
  • Released on June 27th 2018
  • Expires on July 31st 2018

peer-star-app for peer-star app developers

Hello peer-star app developer! 👋

In an effor to make PeerPad scale better for many users editing the same pad, over the last few weeks I've been focused on implementing the topology and protocol described here. This is materializing in the form of a package named peer-star-app.