Code Monkey home page Code Monkey logo

docs's Introduction

Dat 1.0 docs

Documentation resources for dat 1.0 release candidate 1 and the surrounding ecosystem.

Installation

npm install -g dat

Sharing data

Dat is a peer to peer file sharing tool. To share data, first cd into a directory you want to share, and type:

$ dat link

This will create a link, that looks like dat://.... This is a unique hash, generated by the contents of the files (including those in subdirectories) inside the current directory. Dat ignores hidden files.

Your output might look something like this:

$ dat link
Scanning folder, found 98 files in 5 directories. 47.12 MB total.
dat://a9933c3d00e1134e5814a0fe2b0f1166885f523dfe0d135a39a2ca4b43840d83
Serving data (1 connection(s))

On another computer, I can type:

dat dat://a9933c3d00e1134e5814a0fe2b0f1166885f523dfe0d135a39a2ca4b43840d83

And the files will be downloaded inside of the current directory. The process will stay open, re-hosting the data to ensure redundancy of the data.

Versioning

If you change any file inside the directory, you will get a different link. Each link is unique to the file list and data contents inside each file.

Everything about the filesystem is replicated between two dat hosts, including directory structure, file modes, among other filesystem metadata. For example, changing the file mode of a single file will create an entirely different link.

Peer Discovery

Dat uses a variety of different methods to discover peers that have the data it's looking for, including DNS, Multicast DNS, UDP, and TCP. See discovery-swarm for more information.

Local storage

Dat stores its data in a hidden folder that is stored by default in the user's home directory.

~/.dat

The global .dat folder has the following contents:

$ ls ~/.dat
db
config.json

docs's People

Contributors

clkao avatar jonahgeorge avatar karissa avatar mafintosh avatar max-mapper avatar okdistribute avatar olizilla avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.