# Introduction

`js-conflux-sdk` is a Javascript library for interacting with Conflux.

It’s commonly found in decentralized apps (dapps) to help with sending transactions, interacting with smart contracts, reading block data, and a variety of other use cases.

## Getting Started

* Unfamiliar with Conflux? → [confluxnetwork](http://confluxnetwork.org)
* Unfamiliar with Solidity? → [Solidity documentation](https://soliditylang.org/)
* Ready to code? → [QuickStart](https://confluxnetwork.gitbook.io/js-conflux-sdk/quick_start)
* Interested in a quick tour? → [Overview](https://confluxnetwork.gitbook.io/js-conflux-sdk/overview)
* Like to give back? → [Contribute](https://github.com/conflux-chain/js-conflux-sdk)
* Want to get testnet CFX? → [Conflux testnet faucet](http://faucet.confluxnetwork.org/)
* Conflux sponsorship mechanism? → [Sponsorship](https://doc.confluxnetwork.org/docs/core/core-space-basics/sponsor-mechanism)

## Table of Contents

* [QuickStart](https://confluxnetwork.gitbook.io/js-conflux-sdk/quick_start)
* [Overview](https://confluxnetwork.gitbook.io/js-conflux-sdk/overview)
* [Changelog](https://confluxnetwork.gitbook.io/js-conflux-sdk/change_log)
* [js-sdk examples](https://github.com/conflux-fans/js-sdk-example)

## Guides

* [Providers](https://confluxnetwork.gitbook.io/js-conflux-sdk/docs/providers) How to connect to Conflux network in different ways.
* [CIP37 Address](https://confluxnetwork.gitbook.io/js-conflux-sdk/docs/conflux_checksum_address) How to convert between different address formats.
* [Account](https://confluxnetwork.gitbook.io/js-conflux-sdk/docs/account) How to create and manage accounts.
* [Sending Transaction](https://confluxnetwork.gitbook.io/js-conflux-sdk/docs/how_to_send_tx) How to send transactions and wait tx confirmed.
* [Interact with Contract](https://confluxnetwork.gitbook.io/js-conflux-sdk/docs/interact_with_contract) How to interact with smart contracts.
* [Sign methods](https://confluxnetwork.gitbook.io/js-conflux-sdk/docs/sign_methods) How to sign messages and transactions.
* [Error Handling](https://confluxnetwork.gitbook.io/js-conflux-sdk/docs/error_handling) How to handle errors.
* [Batch RPC](https://confluxnetwork.gitbook.io/js-conflux-sdk/docs/batch_rpc) How to batch RPC requests.

## Examples

* [`Conflux` class initialization](https://github.com/Conflux-Chain/js-conflux-sdk/blob/v2/example/0_create_conflux.js)
* [Account and balance](https://github.com/Conflux-Chain/js-conflux-sdk/blob/v2/example/1_account_and_balance.js)
* [Send transaction](https://github.com/Conflux-Chain/js-conflux-sdk/blob/v2/example/2_send_transaction.js)
* [Epoch, Block, Transaction](https://github.com/Conflux-Chain/js-conflux-sdk/blob/v2/example/3_epoch_block_transaction.js)
* [Contract deploy and interact](https://github.com/Conflux-Chain/js-conflux-sdk/blob/v2/example/4_contract_deploy_and_call.js)
* [Contract override](https://github.com/Conflux-Chain/js-conflux-sdk/blob/v2/example/5_contract_override.js)

Check more community examples in [js-sdk-example](https://github.com/conflux-fans/js-sdk-example)

## API

* [Conflux](https://confluxnetwork.gitbook.io/js-conflux-sdk/api/conflux) The `Conflux` class provide methods to interact with RPC methods and send transaction.
* [Wallet](https://confluxnetwork.gitbook.io/js-conflux-sdk/api/wallet) The `Wallet` class provide methods to manage accounts and sign transactions.
* [PrivateKeyAccount](https://github.com/Conflux-Chain/js-conflux-sdk/blob/v2/docs/api/wallet/PrivateKeyAccount.md) The `PrivateKeyAccount` class can be used to sign transactions or messages. It can be created from a private key or be random generated.
* [Transaction](https://confluxnetwork.gitbook.io/js-conflux-sdk/api/transaction) The `Transaction` class provide methods to construct and encode transactions.
* [Drip](https://confluxnetwork.gitbook.io/js-conflux-sdk/api/drip) Drip - CFX converter
* [format](https://github.com/Conflux-Chain/js-conflux-sdk/blob/v2/docs/api/util/format.md) Type formaters
* [sign](https://github.com/Conflux-Chain/js-conflux-sdk/blob/v2/docs/api/util/sign.md) Crypto utilities
* [address utilities](https://github.com/Conflux-Chain/js-conflux-sdk/blob/v2/docs/api/util/address.md) Address utilities

## Other Docs

1. [Official developer documentation](https://doc.confluxnetwork.org/)
2. [RPC API](https://doc.confluxnetwork.org/docs/core/build/json-rpc/)
3. [Subscription](https://doc.confluxnetwork.org/docs/core/build/json-rpc/pubsub)
4. [FluentWallet Official Site](https://fluentwallet.com/)
5. [Fluent documentation](https://fluent-wallet.zendesk.com/hc/en-001)
