This repo contains specifications for tbDEX
Specification | Description | Status |
---|---|---|
Protocol | Defines the message and resource formats that make up the tbDEX messaging protocol | Draft |
HTTP API | Defines a REST API that can be hosted by an individual PFI that wants to provide liquidity via tbDEX | Draft |
sequenceDiagram
participant Alice
participant PFI
PFI->>Alice: Offering (pull)
Alice->>+PFI: RFQ (push)
PFI->>Alice: Quote (push)
Alice->>PFI: Order (push)
PFI-->>Alice: OrderStatus (push)
deactivate PFI
For information on the development process for this protocol, check out sdk-development.
- JavaScript/Typescript
- Kotlin
- Swift (only supports client-side)
All projects (including the test vectors in this repo) use hermit to manage tooling like node, gradle, etc. Hermit version pins and automatically downloads and installs tooling for a repo, including compiler toolchains, utilities, etc. See this page to set up Hermit on your machine - make sure to download the open source build.
Implementations are run against a common set of test vectors. For more information about how test vectors are used, check out the Test Vectors section of the sdk-development
readme.
A hosted set of the JSON schemas are also availbled on the hosted site.
Feature | Typescript | Kotlin | Swift | Rust |
---|---|---|---|---|
Validation | ✅ | ✅ | ✅ | ❌ |
Signing | ✅ | ✅ | ✅ | ❌ |
Verification | ✅ | ✅ | ✅ | ❌ |
Parsing | ✅ | ✅ | ✅ | ❌ |
Feature | Typescript | Kotlin | Swift | Rust |
---|---|---|---|---|
Validation | ✅ | ✅ | ❌ | ❌ |
Signing | ✅ | ✅ | ❌ | ❌ |
Verification | ✅ | ✅ | ❌ | ❌ |
Parsing | ✅ | ✅ | ❌ | ❌ |
Feature | Typescript | Kotlin | Swift | Rust |
---|---|---|---|---|
Creation | ✅ | ✅ | ❌ | ❌ |
Validation | ✅ | ✅ | ❌ | ❌ |
Signing | ✅ | ✅ | ❌ | ❌ |
Verification | ✅ | ✅ | ❌ | ❌ |
Parsing | ✅ | ✅ | ❌ | ❌ |
Feature | Typescript | Kotlin | Swift | Rust |
---|---|---|---|---|
Creation | ✅ | ✅ | ✅ | ❌ |
Validation | ✅ | ✅ | ✅ | ❌ |
Signing | ✅ | ✅ | ✅ | ❌ |
Verification | ✅ | ✅ | ✅ | ❌ |
Parsing | ✅ | ✅ | ✅ | ❌ |
Feature | Typescript | Kotlin | Swift | Rust |
---|---|---|---|---|
Creation | ✅ | ✅ | ❌ | ❌ |
Validation | ✅ | ✅ | ❌ | ❌ |
Signing | ✅ | ✅ | ❌ | ❌ |
Verification | ✅ | ✅ | ❌ | ❌ |
Parsing | ✅ | ✅ | ❌ | ❌ |
Feature | Typescript | Kotlin | Swift | Rust |
---|---|---|---|---|
Creation | ✅ | ✅ | ✅ | ❌ |
Validation | ✅ | ✅ | ✅ | ❌ |
Signing | ✅ | ✅ | ✅ | ❌ |
Verification | ✅ | ✅ | ✅ | ❌ |
Parsing | ✅ | ✅ | ✅ | ❌ |
Feature | Typescript | Kotlin | Swift | Rust |
---|---|---|---|---|
Creation | ✅ | ✅ | ❌ | ❌ |
Validation | ✅ | ✅ | ❌ | ❌ |
Signing | ✅ | ✅ | ❌ | ❌ |
Verification | ✅ | ✅ | ❌ | ❌ |
Parsing | ✅ | ✅ | ❌ | ❌ |
Feature | Typescript | Kotlin | Swift | Rust |
---|---|---|---|---|
Creation | ✅ | ✅ | ✅ | ❌ |
Validation | ✅ | ✅ | ✅ | ❌ |
Signing | ✅ | ✅ | ✅ | ❌ |
Verification | ✅ | ✅ | ✅ | ❌ |
Parsing | ✅ | ✅ | ✅ | ❌ |
Feature | Typescript | Kotlin | Swift | Rust |
---|---|---|---|---|
Send Message | ✅ | ✅ | ✅ | ❌ |
Get Exchange | ✅ | ✅ | ✅ | ❌ |
Get Exchanges | ✅ | ✅ | ✅ | ❌ |
Get Offerings | ✅ | ✅ | ✅ | ❌ |
Feature | Typescript | Kotlin | Swift | Rust |
---|---|---|---|---|
Get Exchange Handler | ✅ | ✅ | ❌ | ❌ |
Get Exchanges Handler | ✅ | ✅ | ❌ | ❌ |
Get Offerings Handler | ✅ | ✅ | ❌ | ❌ |
Submit RFQ Handler | ✅ | ✅ | ❌ | ❌ |
Submit Order Handler | ✅ | ✅ | ❌ | ❌ |
Submit Close Handler | ✅ | ✅ | ❌ | ❌ |