Open Source Tools

We have built and contributed to a variety of modules that support our work on Dat as well as the larger data and code ecosystem. Feel free to go deeper and see the implementations we are using in the Dat command-line tool and the Dat Desktop.

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. We believe this creates better end-user software, but more importantly, will create more sustainable and impactful open source tools.

User Software

  • dat - The command line interface for Dat.
  • Dat Desktop - Desktop application for Dat.
  • datproject.org - Repository for the Dat project website, a public data registry and sharing.

Specifications

Core Modules

These modules form the backbone of Dat software:

  • hypercore - A secure, distributed append-only log.
  • hyperdrive - A secure, real time distributed file system (built on hypercore).
  • dat-node - High-level module for building Dat applications on the file system.
  • hyperdiscovery - Defaults for networking discovery and connection management.
  • dat-storage - Default storage module for Dat.

View more on Github.

Modules We Like & Use

These modules we use throughout our applications:

  • Choo - A 4kb framework for creating sturdy frontend applications.
  • neat-log - A neat cli logger for stateful command line applications Edit Add topics
  • mirror-folder - Mirror a folder to another folder, supports hyperdrive and live file watching.
  • toiletdb - CRUD database using a JSON file for storage.