---
title: Dapp Development Frameworks
description: Explore the advantages of frameworks and compare available options.
lang: en
---

## Introduction to frameworks {#introduction-to-frameworks}

Building a full-fledged dapp requires
different pieces of technology. Software frameworks include many of the needed
features or provide easy plugin systems to pick the tools you
desire.

Frameworks come with a lot of out-of-the-box functionality,
like:

- Features to spin up a local blockchain instance.
- Utilities to compile and test your smart contracts.
- Client development add-ons to build your user-facing application
  within the same project/repository.
- Configuration to connect to Ethereum networks and deploy
  contracts, whether to a locally running instance, or one of
  Ethereum's public networks.
- Decentralized app distribution - integrations with storage
  options like IPFS.

## Prerequisites {#prerequisites}

Before diving into frameworks, we recommend you first read through our introduction to [dapps](/developers/docs/dapps/) and the [Ethereum stack](/developers/docs/ethereum-stack/).

## Available frameworks {#available-frameworks}

**Foundry** - **_Foundry is a blazing fast, portable and modular toolkit for Ethereum application development_**

- [Install Foundry](https://book.getfoundry.sh/)
- [Foundry book](https://book.getfoundry.sh/)
- [Foundry community chat on Telegram](https://t.me/foundry_support)
- [Awesome Foundry](https://github.com/crisgarner/awesome-foundry)

**Hardhat -** **_Ethereum development environment for professionals._**

- [hardhat.org](https://hardhat.org)
- [GitHub](https://github.com/nomiclabs/hardhat)

**Ape -** **_The smart contract development tool for Pythonistas, Data Scientists, and Security Professionals._**

- [Documentation](https://docs.apeworx.io/ape/stable/)
- [GitHub](https://github.com/ApeWorX/ape)

**Web3j -** **_A platform for developing blockchain applications on the JVM._**

- [Homepage](https://www.web3labs.com/web3j-sdk)
- [Documentation](https://docs.web3j.io)
- [GitHub](https://github.com/web3j/web3j)

**ethers-kt -** **_Async, high-performance Kotlin/Java/Android library for EVM-based blockchains._**

- [GitHub](https://github.com/Kr1ptal/ethers-kt)
- [Examples](https://github.com/Kr1ptal/ethers-kt/tree/master/examples)
- [Discord](https://discord.gg/rx35NzQGSb)

**Create Eth App -** **_Create Ethereum-powered apps with one command. Comes with a wide offering of UI frameworks and DeFi templates to choose from._**

- [GitHub](https://github.com/paulrberg/create-eth-app)
- [Templates](https://github.com/PaulRBerg/create-eth-app/tree/develop/templates)

**Scaffold-ETH 2 -** **_Next.js, Wagmi, Viem and RainbowKit with your choice of Hardhat or Foundry: contract hot reload, custom React hooks, a burner wallet and local faucet, and extension modules for full-stack dapp development._**

- [Website](https://scaffoldeth.io/)
- [GitHub](https://github.com/scaffold-eth/scaffold-eth-2)

**Tenderly -** **_Web3 development platform that enables blockchain developers to build, test, debug, monitor, and operate smart contracts and improve dapp UX._**

- [Website](https://tenderly.co/)
- [Documentation](https://docs.tenderly.co/)

**The Graph -** **_The Graph for querying blockchain data efficiently._**

- [Website](https://thegraph.com/)
- [Tutorial](/developers/tutorials/the-graph-fixing-web3-data-querying/)

**Alchemy -** **_Ethereum Development Platform._**

- [alchemy.com](https://www.alchemy.com/)
- [GitHub](https://github.com/alchemyplatform)
- [Discord](https://discord.com/invite/alchemyplatform)

**NodeReal -** **_Ethereum Development Platform._**

- [Nodereal.io](https://nodereal.io/)
- [GitHub](https://github.com/node-real)
- [Discord](https://discord.gg/V5k5gsuE)

**thirdweb SDK -** **_Build web3 applications that can interact with your smart contracts using our powerful SDKs and CLI._**

- [Documentation](https://portal.thirdweb.com/sdk/)
- [GitHub](https://github.com/thirdweb-dev/)

**Chainstack -** **_Web3 (Ethereum and otherwise) Development Platform._**

- [chainstack.com](https://www.chainstack.com/)
- [GitHub](https://github.com/chainstack)
- [Discord](https://discord.gg/BSb5zfp9AT)

**Crossmint -** **_Enterprise-grade web3 development platform, that allows you to build NFT applications on all major chains EVM Chains(and others)._**

- [Website](https://www.crossmint.com)
- [Documentation](https://docs.crossmint.com)
- [Discord](https://discord.com/invite/crossmint)

**Brownie -** **_Python-based development environment and testing framework._**

- [Documentation](https://eth-brownie.readthedocs.io/en/latest/)
- [GitHub](https://github.com/eth-brownie/brownie)
- **Brownie is currently unmaintained**

**OpenZeppelin SDK -** **_The Ultimate Smart Contract Toolkit: A suite of tools to help you develop, compile, upgrade, deploy and interact with smart contracts._**

- [OpenZeppelin Defender SDK](https://docs.openzeppelin.com/defender/sdk)
- [GitHub](https://github.com/OpenZeppelin/openzeppelin-sdk)
- [Community Forum](https://forum.openzeppelin.com/c/support/17)
- **OpenZeppelin SDK development has ended**

**Catapulta -** **_Multi-chain smart contracts deployment tool, automate verifications in block explorers, keep track deployed smart contracts and share deployment reports, plug-n-play for Foundry and Hardhat projects._**

- [GitHub](https://github.com/catapulta-sh)

**GoldRush (powered by Covalent) -** **_GoldRush offers the most comprehensive blockchain data API suite for developers, analysts, and enterprises. Whether you are building a DeFi dashboard, a wallet, a trading bot, an AI agent or a compliance platform, the data APIs provide fast, accurate, and developer-friendly access to the essential onchain data you need_**

- [Website](https://goldrush.dev/)
- [Documentation](https://goldrush.dev/docs/chains/ethereum)
- [GitHub](https://github.com/covalenthq)
- [Discord](https://www.covalenthq.com/discord/)

**Wake -** **_All-in-one Python framework for contracts testing, fuzzing, deployment, vulnerability scanning and code navigation._**

- [Homepage](https://getwake.io/)
- [Documentation](https://ackeeblockchain.com/wake/docs/latest/)
- [GitHub](https://github.com/Ackee-Blockchain/wake)
- [VS Code Extension](https://marketplace.visualstudio.com/items?itemName=AckeeBlockchain.tools-for-solidity)

**Veramo -** **_Open source, modular and agnostic framework that makes it easy for decentralized application developers to build decentralized identities and verifiable credentials into their applications._**

- [Homepage](https://veramo.io/)
- [Documentation](https://veramo.io/docs/basics/introduction)
- [GitHub](https://github.com/uport-project/veramo)
- [Discord](https://discord.com/invite/FRRBdjemHV)
- [NPM Package](https://www.npmjs.com/package/@veramo/core)

**Moccasin -** **_A fast, Pythonic smart contract development and testing framework for Vyper, built on Titanoboa._**

- [Documentation](https://cyfrin.github.io/moccasin/)
- [GitHub](https://github.com/Cyfrin/moccasin)

## Further reading {#further-reading}

_Know of a community resource that helped you? Edit this page and add it!_

## Related topics {#related-topics}

- [Set up a local development environment](/developers/local-environment/)

## Tutorials: Development frameworks on Ethereum {#tutorials}

- [Hello World Smart Contract for Beginners – Fullstack](/developers/tutorials/hello-world-smart-contract-fullstack/) _– Build and deploy a hello world smart contract using Hardhat, then connect it to a frontend._
