This repository contains the dharma.js
client application development libraries. dharma.js
makes it easy for developers who may not be deeply familiar with smart contract development to interact with the various components of Dharma protocol and build hyper-flexible lending applications.
Extensive documentation on the libraries can be found here.
For examples of how to integrate dharma.js
into a client application, we recommend perusing the Dharma React Starter Kit repository and playing around with the sample application
yarn add @dharmaprotocol/dharma.js
import Dharma from "@dharmaprotocol/dharma.js"
const dharma = new Dharma(web3.currentProvider);
We recommend brushing up on the basics of Dharma protocol before diving in -- a non-techincal primer can be found here. For a deeper dive, study the Dharma whitepaper.
Join us on our chat for any technical or general questions.
Dharma is a protocol for generic tokenized debt issuance and fundraising on blockchains supporting requisite smart contract functionality (i.e. EVM blockchains). For a full description of the protocol's mechanics, a thorough overview can be found in the Dharma Protocol Whitepaper.
Happy Hacking!
Install dependencies:
yarn
Start testrpc
and setup dependencies:
yarn chain
Wait until the dependency migration complete
message appears before interacting with the contracts.
yarn test:watch
- Dharma
- adapters
- blockchain
- contracts
- getTokenAddressBySymbolAsync
- loadDebtKernelAsync
- loadDebtRegistryAsync
- loadDebtTokenAsync
- loadDharmaContractsAsync
- loadERC20TokenAsync
- loadRepaymentRouterAsync
- loadRepaymentRouterAtAsync
- loadSimpleInterestTermsContract
- loadTermsContractAsync
- loadTermsContractRegistry
- loadTokenBySymbolAsync
- loadTokenRegistry
- loadTokenTransferProxyAsync
- order
- servicing
- signer
- token