x 3 лет назад
Родитель
Сommit
7598362fb9
2 измененных файлов с 37 добавлено и 0 удалено
  1. 1 0
      doc/src/SUMMARY.md
  2. 36 0
      doc/src/architecture/tooling.md

+ 1 - 0
doc/src/SUMMARY.md

@@ -14,6 +14,7 @@
   - [Blockchain](architecture/blockchain.md)
   - [DNA](architecture/dna.md)
   - [Smart Contracts](architecture/smart_contracts.md)
+  - [Tooling](architecture/tooling.md)
 - [Client](clients/clients.md)
   - [darkfid JSON-RPC API](clients/darkfid_jsonrpc.md)
   - [cashierd JSON-RPC API](clients/cashierd_jsonrpc.md)

+ 36 - 0
doc/src/architecture/tooling.md

@@ -0,0 +1,36 @@
+# Tooling
+
+# DarkFi Fullnode Daemon
+
+`drkd` the darkfi fullnode. It manages the blockchain, validates transactions
+and remains connected to the p2p network.
+
+Clients can connect over localhost RPC or secure socket and perform these functions:
+
+* Get the node status and modify settings realtime.
+* Query the blockchain.
+* Broadcast txs to the p2p network.
+* Get tx status, query the mempool and interact with components.
+
+`drkd` does not have any concept of keys or wallet functionality. It does not
+manage keys.
+
+# Low Level Client
+
+Clients manage keys and objects. They make queries to `drkd`, and receive notes
+encrypted to their public keys.
+
+Their design is usually specific to their application but modular.
+
+They also expose a high level simple to use API corresponding **exactly** to
+their commands so that product teams can easily build an application. They will
+use the command line tool as an interactive debugging application and
+point of reference.
+
+NOTE: should the API use byte arrays or hex strings?
+
+The API should be well documented with all arguments explained. Likewise for the
+commands help text.
+
+Command cheatsheets and example sessions are strongly encouraged.
+