diff options
-rw-r--r-- | README.md | 21 | ||||
-rw-r--r-- | contents.json | 2 | ||||
-rw-r--r-- | package.json | 2 | ||||
-rw-r--r-- | welcome.md | 70 |
4 files changed, 40 insertions, 55 deletions
@@ -1,4 +1,23 @@ -# Documentation for the Dat ecosystem +## Dat Project Documentation + +Repository for the documentation of the Dat Project ecosystem. View the docs at [docs.dat-data.com](http://docs.dat-data.com). + +[![#dat IRC channel on freenode](https://img.shields.io/badge/irc%20channel-%23dat%20on%20freenode-blue.svg)](http://webchat.freenode.net/?channels=dat) +[![datproject/discussions](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/datproject/discussions?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) +[![docs](https://img.shields.io/badge/Dat%20Project-Docs-green.svg)](http://docs.dat-data.com) + +## Writing & Editing Docs + +This documentation uses [minidocs](https://www.npmjs.com/package/minidocs). + +The table of contents is in `content.json`. + +### Installation & Usage + +1. Clone Repository +2. `npm install` +3. `npm run build` to build the docs. +4. `npm run deploy` to deploy docs to GitHub pages. ## License diff --git a/contents.json b/contents.json index 07441c6..3238dfe 100644 --- a/contents.json +++ b/contents.json @@ -1,7 +1,7 @@ { "Introduction": { "Welcome to Dat": "welcome.md", - "How Dat works": "how-dat-works.md" + "How Dat Works": "how-dat-works.md" }, "Ecosystem": { "Overview": "ecosystem.md" diff --git a/package.json b/package.json index 3efa4aa..53f033b 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "main": "index.js", "scripts": { "update": "curl -Ssl https://raw.githubusercontent.com/clkao/awesome-dat/master/readme.md | grep '📔' | egrep -o 'github.com/[a-zA-Z0-9_-]+/[a-zA-Z0-9_-]+' | cut -f 2- -d / | uniq > repos.txt", - "build": "minidocs . -c contents.json -p -o dist -l dat-data.png -t 'The Dat Project' -s styles.css", + "build": "minidocs . -c contents.json -p -i welcome -o dist -l dat-data.png -t 'The Dat Project' -s styles.css", "deploy": "echo docs.dat-data.com > dist/CNAME && gh-pages -d dist", "paper": "pandoc --variable author=\"Maxwell Ogden, Karissa McKelvey, Mathias Buus\" --variable title=\"Dat - Distributed Dataset Synchronization And Versioning\" --variable date=\"Version 1.0.0, May 2016\" --variable classoption=twocolumn --variable papersize=a4paper -s dat-paper.md -o dat-paper.pdf" }, @@ -1,61 +1,27 @@ -# Dat 1.0 docs +# dat -Documentation resources for [dat](https://github.com/maxogden/dat) 1.0 release candidate 1 and the surrounding ecosystem. +Dat is a decentralized data tool for distributing data small and large. -## Installation +[![#dat IRC channel on freenode](https://img.shields.io/badge/irc%20channel-%23dat%20on%20freenode-blue.svg)](http://webchat.freenode.net/?channels=dat) +[![datproject/discussions](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/datproject/discussions?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) +[![docs](https://img.shields.io/badge/Dat%20Project-Docs-green.svg)](http://docs.dat-data.com) -``` -npm install -g dat -``` +## About Dat -## Sharing data +Documentation for the Dat project is available at [docs.dat-data.com](http://docs.dat-data.com). -Dat is a peer to peer file sharing tool. To share data, first `cd` into a directory you want to share, and type: +### Key features: -``` -$ dat link -``` + * **Live sync** folders by sharing files as they are added to the folder. + * **Distribute large files** without copying data to a central server by connecting directly to peers. + * **Intelligently sync** by deduplicating data between versions. + * **Verify data integrity** using strong cryptographic hashes. + * **Work everywhere**, including in the [browser](https://github.com/datproject/dat.land) and on the [desktop](https://github.com/juliangruber/dat-desktop). -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. +Dat embraces the Unix philosophy: a modular design with composable parts. All of the pieces can be replaced with alternative implementations as long as they implement the abstract API. -Your output might look something like this: +### Ways to Use Dat -``` -$ 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](https://github.com/mafintosh/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 -``` + * [Dat CLI](https://github.com/maxogden/dat): command line tool + * [Dat Desktop](https://github.com/juliangruber/dat-desktop/): desktop application + * [dat.land](https://github.com/datproject/dat.land): website application
\ No newline at end of file |