# Web3 libraries and tools

> The original version of this document is [Arbitrum Docs](https://docs.arbitrum.io/build-decentralized-apps/reference/web3-libraries-tools).

The following frameworks will help you build your decentralized apps:

<table><thead><tr><th width="89.7421875">Name</th><th width="104.31640625">Language</th><th width="411.2578125">Description</th><th>Documentation</th></tr></thead><tbody><tr><td>Ethers.js</td><td>TypeScript</td><td>Ethers.js is a lightweight library for Ethereum and EVM-compatible blockchains. It offers secure key management, node compatibility, ENS integration and supports JSON wallets, mnemonic phrases, and HD wallets. The library is TypeScript-ready and well-documented under the MIT License.</td><td><a href="https://docs.ethers.org/">Ethers.js Documentation</a></td></tr><tr><td>alloy</td><td>Rust</td><td>Alloy is a collection of utilities and crates for Ethereum development in Rust. It helps create and manage Rust prototypes that support Ethereum-like smart contract execution. Alloy focuses on interoperability and cross-chain communication..</td><td><a href="https://alloy.rs/">alloy Documentation</a></td></tr><tr><td>thirdweb SDK</td><td>TypeScript</td><td>thirdweb SDK offers a comprehensive suite for Web3 development on EVM-compatible blockchains. It includes wallet connectivity, blockchain interaction, decentralized storage, and authentication. Gasless transactions, wallet components, FIAT on-ramps, and data APIs are key features.</td><td><a href="https://portal.thirdweb.com/sdk">thirdweb SDK Portal</a></td></tr><tr><td>Viem</td><td>TypeScript</td><td>Viem is a modular tool for Ethereum and EVM-compatible blockchain development. It provides performance-optimized APIs, JSON-RPC API abstractions, and smart contract interaction tools, and it supports environments like Anvil, Hardhat, and Ganache.</td><td><a href="https://viem.sh/">Viem</a></td></tr><tr><td>Web3.js</td><td>JavaScript</td><td>Web3.js is a JavaScript library for Ethereum and EVM-compatible node interaction. It enables transactions via HTTP, IPC, or WebSocket. Compatible with web browsers, Node.js, and Electron, it's commonly used with MetaMask.</td><td><a href="https://github.com/web3/web3.js/">Web3.js GitHub</a></td></tr><tr><td>Web3.py</td><td>Python</td><td>Web3.py is a Python library for interacting with Ethereum and EVM-compatible blockchains. It facilitates transactions, smart contract operations, and blockchain data access. Tailored for Python developers, it's a versatile tool for Ethereum-based applications.</td><td><a href="https://github.com/ethereum/web3.py/">Web3.py GitHub</a></td></tr></tbody></table>
