Skip to content

Latest commit

 

History

History
52 lines (40 loc) · 1.92 KB

README.md

File metadata and controls

52 lines (40 loc) · 1.92 KB

module/net - API - CHANGES

Interact with a Convex network.

;; Add to dependencies in `deps.edn`:
;;
world.convex/net
{:deps/root "module/net"
 :git/sha   "06c7137"
 :git/tag   "stable/2023-01-18"
 :git/url   "https://github.com/convex-dev/convex.cljc"}
;; Supported platforms:
;;
[:jvm]

This library hosts network utilities for the Convex stack. Peers are nodes of the Convex network that perform transactions in consensus and keep a state in sync. The fast binary client is used to connect to a peer for querying information from the network or submitting transactions, such as creating or calling smart contracts.

Most network interactions require a key pair. For instance, each user account in the network has a public key attached. When a transaction is submitted for an account, executed on behalf of that account, it must be signed using the matching private key. This is public-key cryptography and it ensures that only the owner of an account, owning its secret private key, can submit code to be executed in the context of that account.

Overview of namespaces:

Namespace Purpose
convex.client Fast binary client for talking to the Convex network
convex.key-pair Generate and handle key pairs
convex.pfx Store key pairs securely in password protected files
convex.server Run a peer node

Those namespaces are built on top of convex-core and convex-peer in the core Java repository and provide commonly needed features for building tools and decentralized applications.

Examples and walk-through can be found in :module/recipe.