aboutsummaryrefslogtreecommitdiffstats
path: root/notes/process.md
blob: bd3a516d99f3fa1fea1846a7bb64872936d71a1c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34

This is an ordered list of testable steps to get to a minimal dat client in
just about any language.

sleep
  read/write headers
  read/write individual elements as raw bytes
  read/write contiguous batches

registers
  read elements by index
  verify signature by index (not leaves)
  append elements

drive
  data register to a single file
  single file to a data register
  print metadata tree ("ls")
  create metadata tree for a directory
  directory to metadata+data registers
  registers to directory

sync
  send/receive messages to a known host
  pull register from a known host
  wrapper command




Shortcuts:
  key/value store instead of SLEEP files
  pull/read/to-file only
  don't verify any hashes (!)