Architecture updates
This commit is contained in:
@@ -27,7 +27,6 @@ The XO Stack adopts an Object-Oriented design for several key reasons:
|
|||||||
- Type safety when using TypeScript
|
- Type safety when using TypeScript
|
||||||
- Clear inheritance hierarchies
|
- Clear inheritance hierarchies
|
||||||
- Intuitive method discovery through class interfaces
|
- Intuitive method discovery through class interfaces
|
||||||
- Familiar paradigm for most developers
|
|
||||||
|
|
||||||
4. **Code Organization**
|
4. **Code Organization**
|
||||||
- Logical grouping of related functionality
|
- Logical grouping of related functionality
|
||||||
@@ -97,16 +96,33 @@ graph LR
|
|||||||
BaseStore --> StoreInMemory
|
BaseStore --> StoreInMemory
|
||||||
BaseStore --> StoreIndexedDB
|
BaseStore --> StoreIndexedDB
|
||||||
BaseStore --> StoreSQLite
|
BaseStore --> StoreSQLite
|
||||||
|
BaseStore --> StoreHTTP
|
||||||
|
|
||||||
EventEmitter --> BaseWallet
|
EventEmitter --> BaseWallet
|
||||||
BaseWallet --> WalletP2PKH
|
BaseWallet --> WalletP2PKH
|
||||||
BaseWallet --> WalletHD
|
BaseWallet --> WalletHD
|
||||||
WalletHD --> WalletXO
|
BaseWallet --> WalletMultisig
|
||||||
|
|
||||||
EventEmitter --> BaseBlockchain
|
EventEmitter --> BaseBlockchain
|
||||||
BaseBlockchain --> BlockchainInMemory
|
BaseBlockchain --> BlockchainInMemory
|
||||||
BaseBlockchain --> BlockchainElectrum
|
BaseBlockchain --> BlockchainElectrum
|
||||||
|
BaseBlockchain --> BlockchainChaingraph
|
||||||
|
BaseBlockchain --> BlockchainP2PNetwork
|
||||||
|
|
||||||
|
EventEmitter --> BaseP2PChannel
|
||||||
|
BaseP2PChannel --> P2PChannelLibP2P
|
||||||
|
|
||||||
|
EventEmitter --> BaseRates
|
||||||
|
BaseRates --> RatesComposite
|
||||||
|
BaseRates --> RatesCoinbase
|
||||||
|
BaseRates --> RatesOracle
|
||||||
|
|
||||||
|
EventEmitter --> BaseBCMR
|
||||||
|
BaseBCMR --> BCMRHTTP
|
||||||
|
BaseBCMR --> BCMRComposite
|
||||||
|
```
|
||||||
|
|
||||||
|
<!-- Clicking support if we ever want it
|
||||||
click EventEmitter "https://example.com/docs/EventEmitter" "Go to EventEmitter documentation"
|
click EventEmitter "https://example.com/docs/EventEmitter" "Go to EventEmitter documentation"
|
||||||
click BaseStore "https://example.com/docs/BaseStore" "View BaseStore documentation"
|
click BaseStore "https://example.com/docs/BaseStore" "View BaseStore documentation"
|
||||||
click StoreInMemory "https://example.com/docs/StoreInMemory" "View StoreInMemory documentation"
|
click StoreInMemory "https://example.com/docs/StoreInMemory" "View StoreInMemory documentation"
|
||||||
@@ -119,4 +135,4 @@ graph LR
|
|||||||
click BaseBlockchain "https://example.com/docs/BaseBlockchain" "View BaseBlockchain documentation"
|
click BaseBlockchain "https://example.com/docs/BaseBlockchain" "View BaseBlockchain documentation"
|
||||||
click BlockchainInMemory "https://example.com/docs/BlockchainInMemory" "View BlockchainInMemory documentation"
|
click BlockchainInMemory "https://example.com/docs/BlockchainInMemory" "View BlockchainInMemory documentation"
|
||||||
click BlockchainElectrum "https://example.com/docs/BlockchainElectrum" "View BlockchainElectrum documentation"
|
click BlockchainElectrum "https://example.com/docs/BlockchainElectrum" "View BlockchainElectrum documentation"
|
||||||
```
|
-->
|
||||||
|
|||||||
Reference in New Issue
Block a user