'Dat' Protocol Interface

Interface with the 'Dat' p2p network protocol < https://datproject.org>. Clone archives from the network, share your own files, and install packages from the network.


Build status Coverage

datr allows R users to interact with the Dat network. You can load, store, or share data on the Dat network, without including any intermediaries that can snoop on your content. All transfers are end-to-end encrypted.

GIF of demo

or in plain text

datr::dat_install(os = 'linux')
 
datr::clone_dat('dat://0286381d95864386a83aadb136a60c1d09d079c5a4ff0e403fa126644ba4c6ab',
 dir = '~/test-datr/')
 
dir.create('~/test-datr-sharing')
setwd('~/test-datr-sharing')
 
datr::create_dat()
 
write.csv(data.frame(x = rnorm(100, 0, 1), y = rnorm(100, 50, 23)),
 '~/test-datr-sharing/test-data.csv',
 row.names = FALSE)
 
datr::sync_dat()

Installation

You can install datr from GitHub with:

# install.packages("devtools")
devtools::install_github("libscie/datr")

See below for Windows, Mac, and Linux specific instructions for installing Dat. v0.1.0 will be submitted to CRAN (almost done 🏁)!

Windows

Fire up R with Administrator privileges by right clicking the icon and selecting "Run as administrator"

Run as administrator

Once the program launches, run datr::dat_install(). The package then initiates downloading Dat and installs it on your local machine.

Upon completion, reboot R and you can start using the package 😻 (adminstrator privileges no longer needed)

Mac

devtools::install_github('libscie/datr', ref = 'install')
datr::dat_install(os = 'macos')

Note that there currently is an issue out that could benefit from feedback on installation on Mac (#7).

Linux

Run datr::dat_install(os = 'linux') from your R console. There's no need to specify which flavor of Linux you're running, but you might to need to restart your R session 🙋

Code of conduct

This project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. We welcome you with open arms if you are mindful and respectful of differences. You might not always understand another person's perspective; acknowledging that other people's feelings or perspectives are valid regardless of your understanding is prerequisite number one to being both mindful and respectful. We will not consider contributions if they are not done in a respectful manner, no matter how "genius" they might be.

License

All code is licensed GPLv3. All non-code assets are available under a CC 0 Public Domain Dedication.

News

datr 0.1.0

  • dat_install(): Install Dat binaries
  • ACTION_dat(), where ACTION is replacable with:
    • clone => create local copy of Dat filesystem
    • create => interactively create a Dat filesystem in working directory
    • share => initialize Dat filesystem (without metadata) and synchronize
    • sync => restore synchronization of working directory with Dat network
    • pull => update local copy of Dat filesystem remote updates
    • log => show the append-only log of the working directory Dat
    • status => show information about Dat filesystem (link, size, version)
  • install_dat(): Install an R package hosted on the Dat network
  • RStudio does not like interactive system calls, which this package is based on (see also issue #8). Beware!

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("datr")

0.1.0 by Chris Hartgerink, a year ago


https://github.com/libscie/datr


Report a bug at https://github.com/libscie/datr/issues


Browse source code at https://github.com/cran/datr


Authors: Chris Hartgerink [aut, cre]


Documentation:   PDF Manual  


GPL-3 license


Imports devtools

Suggests covr, testthat

System requirements: dat (>= 13.10.0)


See at CRAN