# Libraries

Developers who want to construct DApps on the Bifrost Network can utilize any library that supports Ethereum. The following is a list of some of the supported libraries.

### Ether.js

The ethers.js library aims to be a complete and compact library for interacting with the Ethereum blockchain and its ecosystem. You can find more information in their [documentation](https://docs.ethers.io/).

### Web3.js/Web3.py

Web3.js has a longer history and more maintainers than Ether.js and it provides a single instantiated web3 object with methods for interacting with the blockchain.\
You can find more information in their [documentation](https://web3py.readthedocs.io/en/v5/).

### OpenZeppelin

[OpenZeppelin](https://openzeppelin.com/) is well known in the Ethereum developer community as their set of audited smart contracts and libraries has become a standard in the industry. For example, most of the tutorials that show developers how to deploy an ERC-20 token use OpenZeppelin contracts.\
You can find more information in their [documentation](https://docs.openzeppelin.com/openzeppelin/).

### Polkadot.js

For exceptional developers who require Substrate runtime, pallets, or client interactions for their DApp development, `polkadot.js` will be an optimal choice. You can find more information in their [documentation](https://polkadot.js.org/docs/api).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.bifrostnetwork.com/bifrost-network/developer-documentations/ethereum-api/libraries.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
