DeFi Developer Road Map
DeFi Developer roadmap is a curated Developer handbook which includes a list of the best tools for DApps development, resources and references!
This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.
Translations:
Translations
Basics:
Try Capture The Ether Game
Game for hacking Ethereum smart contracts and learning security.
Hardhat
An Ethereum development environment that helps developers manage and automate the recurring tasks inherent to building smart contracts and DApps
Remix
An online Integrated Development Environment used to write, compile, debug and deploy solidity code for smart contracts
Foundry
Fast Ethereum toolkit
EIPs
Standards for the Ethereum platform, including core protocol specifications, client APIs, and contract standards.
Solidity by Example
Introduction to the language with simple examples.
Awesome roadmap.sh RoadMaps Collection
Engineering career roadmaps
Genesis 0x01: Simplified Roadmap for Blockchain Security
Covers all rudimentary topics that one needs to know in order to get into the field of Blockchain Security.
Solidity Security Explained
Comprehensive list of known attack vectors and common anti-patterns.
cryptozombies.io
Interactive code school that teaches you to write smart contracts through building your own crypto-collectibles game.
useweb3.xyz
Curated overview of the best and latest Ethereum and Web3 development resources.
WTF Solidity
Open-source, community-reviewed tutorial in Chinese and English covering intro, advanced, and application topics.
ERCs
Ethereum Improvement Proposals
ERC-20
Token contract for fungible assets.
ERC-721
Token standard for non-fungible assets.
ERC-1155
Token standard for semi-fungible tokens
ERC-918
Mineable Token Standard.
ERC-1363
Payable Token Standard.
ERC-4626
Tokenized Vault Standard.
ERC-165
Creates a standard method to publish and detect what interfaces a smart contract implements.
ERC-725
A standard interface for a simple proxy account.
ERC-173
A standard interface for ownership of contracts.
Introduction to Smart Contract Development with Solidity
and ERC20 Programming
eth-cli
CLI tools.
REPL
Solidity REPL.
gencall-cli
An interactive smart contract encoder and sender from your ABI file
Optimize Solidity Function Name
Optimize function names to reduce costs
solc-typed-ast compiler
TypeScript package providing a normalized typed Solidity AST along with the utilities necessary to generate the AST (from Solc) and traverse/manipulate it.
dApps
Remix
An online Integrated Development Environment used to write, compile, debug and deploy solidity code for smart contracts
Ethfiddle
A solidity browser-based development tool
Truffle
Development environment for blockchain applications.
Vyper
Pythonic Smart Contract Language for the EVM
Atom
(Free,Cross-platform,Plugins): electron based editor with numerous plugins and easy modifications. Cross-platform with settings and plugins synchronized through the sync-settings plugin.
Vim solidity
Vim syntax file.
Solana VS Code Extension
First VS Code extension for Solana with real-time security analysis (9 detectors) and Trident fuzz coverage visualization
vscode-solidity-lang
Solidity Semantic Highlighting for VSode. available at vscode marketplace
MetaMask OpenRCP API Playground
View and Interact with MetaMasks RPC API
Ethernaut
is a Web3/Solidity based wargame for those interested in learning ethereum
Consensys best practices
This document provides a baseline knowledge of security considerations for intermediate Solidity programmers. It is maintained by ConsenSys Diligence, and the broader Ethereum community.
Solidity Patterns
A compilation of patterns and best practices.
Smart Contracts Threats DB
A compilation of the worst patterns.
ETH.build
An Educational Sandbox For Web3
Node Guardians
Story-rich Quests with practical coding challenges
ZK-SNARKs
zkp.science
All you should know about ZK-SNARKs
ZoKrates
A toolbox for zkSNARKS on Ethereum
The AZTEC Protocol
Confidential transactions on the Ethereum network, implementation is live on the Ethereum main-net
Nightfall
Make any ERC-20 / ERC-721 token private - open source tools & microservices
NuCypher Network
A proxy re-encryption network to empower data privacy in decentralized systems
pyUmbral
Threshold proxy re-encryption cryptographic library
NuFHE
GPU accelerated FHE library
Zk snarks under the hood
Technical explanation of zk-SNARKS.
StarkWare
and StarkWare Resources - StarkEx scalability engine storing state transitions on-chain
Frameworks
Truffle
🐙 - A world class development environment, testing framework and asset pipeline for blockchains using the Ethereum Virtual Machine (EVM).
Ganache
🐙 - Personal blockchain for Ethereum development.
Drizzle
🐙 - A collection of front-end libraries that make writing dapp user interfaces easier and more predictable.
Akula
an implementation of Ethereum protocol ("client") written in Rust, based on Erigon architecture.
Mainnet End Point
Infura provides infrastructure and tools for developers to build amazing Web 3.0 applications
Frameworks List
Ethereum Frameworks Listing.
Ape
The smart contract development tool for Pythonistas, Data Scientists, and Security Professionals.
Brownie
Brownie is a Python framework for deploying, testing and interacting with Ethereum smart contracts.
Embark
Framework for DApp development
Waffle
Framework for advanced smart contract development and testing, small, flexible, fast (based on ethers.js)
Etherlime
ethers.js based framework for Dapp deployment
Parasol
[Depreciated] Agile smart contract development environment with testing, INFURA deployment, automatic contract documentation and more. It features a flexible and unopinionated design with unlimited customizability
0xcert
JavaScript framework for building decentralized applications
OpenZeppelin SDK
OpenZeppelin SDK: A suite of tools to help you develop, compile, upgrade, deploy and interact with smart contracts.
sbt-ethereum
A tab-completey, text-based console for smart-contract interaction and development, including wallet and ABI management, ENS support, and advanced Scala integration.
Cobra
A fast, flexible and simple development environment framework for Ethereum smart contract, testing and deployment on Ethereum virtual machine(EVM).
Ether Jar
Java integration library for Ethereum blockchain
Starport
A CLI tool for building sovereign IBC-enabled blockchains.
Sign in with Ethereum | SIWE
Workflow to authenticate Ethereum accounts using message signing in order to establish a cookie-based web session that manages user metadata.
Foundry
A smart contract development toolchain for project compilation, dependency management, testing, deployments, on-chain interactions...
Solmate
These contracts have been audited but they were not developed with users in mind. They mainly seek to optimize gas and optimizations for smart contract development
Supercool
Relayer infra for meta-transaction and account-abstraction superpowers: automate smart contract interactions, create gasless transactions, and more.
Web3.js
/ Chinese version
IPFS
A peer-to-peer hypermedia protocol designed to make the web faster, safer, and more open.
Storej
Blockchain-based, end-to-end encrypted, distributed object storage, where only you have access to your data.
Paradigm Faucet
claim testnet ETH here
Ethnode
Run an Ethereum node (Geth or Parity) for development, as easy as npm i -g ethnode && ethnode.
Ganache
App for test Ethereum blockchain with visual UI and logs
Kaleido
Use Kaleido for spinning up a consortium blockchain network. Great for PoCs and testing
Besu Private Network
Run a private network of Besu nodes in a Docker container
Orion
Component for performing private transactions by PegaSys
Artemis
Java implementation of the Ethereum 2.0 Beacon Chain by PegaSys
Cliquebait
Simplifies integration and accepting testing of smart contract applications with docker instances that closely resemble a real blockchain network
Local Raiden
Run a local Raiden network in docker containers for demo and testing purposes
Private networks deployment scripts
Out-of-the-box deployment scripts for private PoA networks
Local Ethereum Network
Out-of-the-box deployment scripts for private PoW networks
Ethereum on Azure
Deployment and governance of consortium Ethereum PoA networks
Ethereum on Google Cloud
Build Ethereum network based on Proof of Work
CloudFlare Distributed Web Gateway
Provides access to the Ethereum network through the Cloudflare instead of running your own node
NOWNodes
NOWNodes provide a full access to Ethereum testnets and access to more than 110 blockchain RPC nodes via API
Chainstack
Shared and dedicated Ethereum nodes as a service (Mainnet, Ropsten, Rinkeby)
Alchemy
Blockchain Developer Platform, Ethereum API, and Node Service (Mainnet, Ropsten, Rinkeby, Goerli, Kovan)
ZMOK
JSON-RPC Ethereum API (Mainnet, Rinkeby, Front-running Mainnet)
Watchdata
Provide simple and reliable API access to Ethereum blockchain
GetBlock
Blockchain RPC access to Ethereum blockchain and 50 + others
Azul
Free, no-signup public RPC for Base mainnet (chainId 8453). No API key required.
Nethereum.Faucet
A C#/.NET faucet
Front End
React Roadmap
React roadmap that links the framework to its surrounding ecosystem and tooling.
aragonUI
A React library including Dapp components
components.bounties.network
A React library including Dapp components
ui.decentraland.org
A React library including Dapp components
dapparatus
Reusable React Dapp components
Metamask ui
Metamask React Components
DappHybrid
A cross-platform hybrid hosting mechanism for web based decentralised applications
Nethereum.UI.Desktop
Cross-platform desktop wallet sample
eth-button
Minimalist donation button
Rimble Design System
Adaptable components and design standards for decentralized applications.
brave-ui
List of reusable React components to empower your brave UI
DApp frontend security
In this article, Author will take a look at security for DApps.
Project management
Dework
| Web3 Trello with token payments, credentials, bounties...
Wonderverse
| Jira alternative with an intuitive task management system that allows DAOs to pay contributors and collaborate in their projects.
Important (security)
Further Readings
链新社 (ChainNewsClub) - Chinese blockchain & Web3 structured learning platform
Chinese-language platform covering DeFi, smart contracts, and Web3 development paths
Public APIs
A comprehensive list of free APIs for various purposes.
The Reading List
and This repo with Engineering Data List
How to become a smart contract auditor
Frequently asked questions that are related to auditing and auditors can get their first job.
Genesis 0x01: Simplified Roadmap for Blockchain Security
Covers all rudimentary topics that one needs to know in order to get into the field of Blockchain Security.
Tools Collection
OpenChainBench
Live, neutral benchmarks for crypto infrastructure: public RPC latency across 22 EVM chains plus Solana, oracle deviation, bridge quote fees, perp DEX all-in cost, gas oracle accuracy. Open methodology, CC BY 4.0 data.
Solidity by Example
Introduction to the language with simple examples.
Etherscan Gas Tracker
Live Ethereum gas stats. ethgasstation.info is no longer active; see also the OpenChainBench gas estimation benchmark for a live comparison of gas oracle accuracy across providers.
Tx Combo
easily create flashloans without writing a single line of code.
CoinPaprika
Free crypto market data API — prices, OHLCV, exchanges, and coin metadata for 7,000+ assets. No API key required.
DexPaprika
Free DEX data API — real-time pools, token prices, OHLCV, and trades across all chains and DEXes. No API key, no limits.
Solhint
Linter that provides security, style guide, and best practice rules for smart contract validation.
Solidity-coverage
Code coverage tool.
TypeChain
TypeScript bindings for Ethereum smart contracts.
Tenderly
Easily monitor your smart contracts with error tracking, alerting, performance metrics, and detailed contract analytics.
Frostbyte Wallet API
Multi-chain wallet REST API supporting 9 blockchains (Ethereum, Polygon, BSC, Arbitrum, Optimism, Avalanche, Base, Solana, Bitcoin) with HD wallet generation, token transfers, and cross-chain swaps.
dapp-bin
Ethereum repo providing implementations for many common data structures and utilities in Solidity, Serpent and LLL.
Solidity Collections
Collections of code snippets and utility libraries.
OpenZeppelin
Framework to build secure smart contracts.
polymarket.com
(docs) - Largest prediction market, $2B+ in 2024 volume betting on real-world events
Zeppelin
Contains tested reusable smart contracts like SafeMath and OpenZeppelin SDK library for smart contract upgradeability
cryptofin-solidity
A collection of Solidity libraries for building secure and gas-efficient smart contracts on Ethereum.
Modular Libraries
A group of packages built for use on blockchains utilising the Ethereum Virtual Machine
DateTime Library
A gas-efficient Solidity date and time library
ARC
an operating system for DAOs and the base layer of the DAO stack.
0x
DEX protocol
Token Libraries with Proofs
Contains correctness proofs of token contracts wrt. given specifications and high-level properties
Provable API
Provides contracts for using the Provable service, allowing for off-chain actions, data-fetching, and computation
ABDK Libraries for Solidity
Fixed-point (64.64 bit) and IEEE-754 compliant quad precision (128 bit) floating-point math libraries for Solidity
DeFiMath
Gas-optimized Solidity library for DeFi math: Black-Scholes option pricing, Greeks, interest rates, and statistics
Dappsys: Safe, simple, and flexible Ethereum contract building blocks
Contract system framework for flexible multi-contract dapps.
Simpler Ethereum Multisig
especially section Benefits
CryptoFin Solidity Auditing Checklist
A checklist of common findings, and issues to watch out for when auditing a contract for a mainnet launch.
MythX
Security verification platform and tools ecosystem for Ethereum developers
Mythril
Open-source EVM bytecode security analysis tool
Oyente
Alternative static smart contract security analysis
Securify
Security scanner for Ethereum smart contracts
SmartCheck
Static smart contract security analyzer
Ethersplay
EVM disassembler
Evmdis
Alternative EVM disassembler
Hydra
Framework for cryptoeconomic contract security, decentralised security bounties
Solgraph
Visualise Solidity control flow for smart contract security analysis
Manticore
Symbolic execution tool on Smart Contracts and Binaries
Slither
A Solidity static analysis framework
Trident
Fuzzing framework for Solana DeFi smart contracts
Adelaide
The SECBIT static analysis extension to Solidity compiler
solc-verify
A modular verifier for Solidity smart contracts
Solidity security blog
Comprehensive list of known attack vectors and common anti-patterns
Awesome Buggy ERC20 Tokens
A Collection of Vulnerabilities in ERC20 Smart Contracts With Tokens Affected
Free Smart Contract Security Audit
Free smart contract security audits from Callisto Network
Piet
A visual Solidity architecture analyzer
Web3.js
Javascript Web3
Eth.js
Javascript Web3 alternative
Ethers.js
Javascript Web3 alternative, useful utilities and wallet features
light.js
A high-level reactive JS library optimized for light clients.
Web3Wrapper
Typescript Web3 alternative
Ethereumjs
A collection of utility functions for Ethereum like ethereumjs-util and ethereumjs-tx
Codex
Real-time, enriched blockchain data API indexing 60M+ tokens and 400M wallets across 80+ networks
flex-contract
and flex-ether - Modern, zero-configuration, high-level libraries for interacting with smart contracts and making transactions.
ez-ens
Simple, zero-configuration Ethereum Name Service address resolver.
web3x
A TypeScript port of web3.js. Benefits includes tiny builds and full type safety, including when interacting with contracts.
Nethereum
Cross-platform Ethereum development framework
dfuse
A TypeScript library to use dfuse Ethereum API
Drizzle
Redux library to connect a frontend to a blockchain
Tasit SDK
A JavaScript SDK for making native mobile Ethereum dapps using React Native
useMetamask
a custom React Hook to manage Metamask in Ethereum ĐApp projects
WalletConnect
Open protocol for connecting Wallets to Dapps
ChainAbstractionLayer
Communicate with different blockchains (including Ethereum) using a single interface.
Delphereum
a Delphi interface to the Ethereum blockchain that allows for development of native dApps for Windows, macOS, iOS, and Android.
Torus
Open-sourced SDK to build dapps with a seamless onboarding UX
Fortmatic
A simple to use SDK to build web3 dApps without extensions or downloads.
Portis
A non-custodial wallet with an SDK that enables easy interaction with DApps without installing anything.
create-eth-app
Create Ethereum-powered front-end apps with one command.
Scaffold-ETH
Beginner friendly forkable github for getting started building smart contracts.
Jolly Roger
dApp framework using ethereum, builder, svelte and thegraph
Notify.js
Deliver real-time notifications to your users. With built-in support for Speed-Ups and Cancels, Blocknative Notify.js helps users transact with confidence. Notify.js is easy to integrate and quick to customize.
Web3.py
Python Web3
Web3.php
PHP Web3
Ethereum-php
PHP Web3
Web3j
Java Web3
Nethereum
.Net Web3
Ethereum.rb
Ruby Web3
rust-web3
Rust Web3
ethers-rs
Ethers-rs
Web3.hs
Haskell Web3
KEthereum
Kotlin Web3
Eventeum
A bridge between Ethereum smart contract events and backend microservices, written in Java by Kauri
Ethereumex
Elixir JSON-RPC client for the Ethereum blockchain
Ethereum-jsonrpc-gateway
A gateway that allows you to run multiple Ethereum nodes for redundancy and load-balancing purposes. Can be ran as an alternative to (or on top of) Infura. Written in Golang.
EthContract
A set of helper methods to help query ETH smart contracts in Elixir
Ethereum Contract Service
A MESG Service to interact with any Ethereum contract based on its address and ABI.
Ethereum Service
A MESG Service to interact with events from Ethereum and interact with it.
Marmo
Python, JS, and Java SDK for simplifying interactions with Ethereum. Uses relayers to offload transaction costs to relayers.
Ethereum Logging Framework
provides advanced logging capabilities for Ethereum applications and networks including a query language, query processor, and logging code generation
Besu
an open-source Ethereum client developed under the Apache 2.0 license and written in Java. The project is hosted by Hyperledger.
Geth
Go client
Erigon
a mostly Go implementation of Ethereum client built on the efficiency frontier
Akula
an implementation of Ethereum protocol ("client") written in Rust, based on Erigon architecture.
Nethermind
.NET Core client
Mainnet End Point
Infura provides infrastructure and tools for developers to build amazing Web 3.0 applications
Trinity
Python client using py-evm
Ethereumjs
JS client using ethereumjs-vm
Seth
Seth is an Ethereum client tool—like a "MetaMask for the command line"
Quorum
A permissioned implementation of Ethereum supporting data privacy by JP Morgan
Awesome Quorum
A curated list of awesome software, libraries, tools and more to build on ConsenSys Quorum.
Chainstack
Shared and dedicated Ethereum nodes as a service (Mainnet, Ropsten, Rinkeby)
QuikNode
Blockchain developer cloud with API access and node-as-a-service.
Watchdata
Provide simple and reliable API access to Ethereum blockchain
DB3 Network
Decentralized Firebase Firestore Alternative.
IPFS
A peer-to-peer hypermedia protocol designed to make the web faster, safer, and more open.
Mahuta
IPFS Storage service with added search capability, formerly IPFS-Store
OrbitDB
Decentralised database on top of IPFS
JS IPFS API
A client library for the IPFS HTTP API, implemented in JavaScript
TEMPORAL
Easy to use API into IPFS and other distributed/decentralised storage protocols
PINATA
The Easiest Way to Use IPFS
Aleph.im
an offchain incentivized peer-to-peer cloud project (database, file storage, computing and DID) compatible with ETH and IPFS.
dAppling Network
Uses IPFS for quick and easy decentralized web hosting.
Fleek
similar to netlify but uses ipfs for hosting websites.
Truffle boxes
Packaged components for the Ethereum ecosystem
Besu Private Network
Run a private network of Besu nodes in a Docker container
Testchains
Pre-configured .NET devchains for fast response (PoA)
Blazor/Blockchain Explorer
Wasm blockchain explorer (functional sample)
Local Raiden
Run a local Raiden network in docker containers for demo and testing purposes
Private networks deployment scripts
Out-of-the-box deployment scripts for private PoA networks
Local Ethereum Network
Out-of-the-box deployment scripts for private PoW networks
Kaleido
Use Kaleido for spinning up a consortium blockchain network. Great for PoCs and testing
Cheshire
A local sandbox implementation of the CryptoKitties API and smart contracts, available as a Truffle Box
aragonCLI
aragonCLI is used to create and develop Aragon apps and organizations.
ColonyJS
JavaScript client that provides an API for interacting with the Colony Network smart contracts.
ArcJS
Library that facilitates javascript application access to the DAOstack Arc ethereum smart contracts.
Onboard.js
Blocknative Onboard is the quick and easy way to add multi-wallet support to your project. With built-in modules for more than 20 unique hardware and software wallets, Onboard saves you time and headaches.
web3-react
React framework for building single-page Ethereum dApps
ABI decoder
library for decoding data params and events from Ethereum transactions
Ethereum ABI UI
Auto-generate UI form field definitions and associated validators from an Ethereum contract ABI
headlong
type-safe Contract ABI and Recursive Length Prefix library in Java
EasyDapper
Generate dapps from Truffle artifacts, deploy contracts on public/private networks, offers live customizable public page to interact with contracts.
One Click dApp
Instantly create a dApp at a unique URL using the ABI.
Truffle Pig
a development tool that provides a simple HTTP API to find and read from Truffle-generated contract files, for use during local development. Serves fresh contract ABIs over http.
Nethereum-CodeGenerator
A web based generator which creates a Nethereum based C# Interface and Service based on Solidity Smart Contracts.
Testing Tools
Web3Wrapper
Typescript Web3 alternative
Solidity-coverage
Code coverage tool.
Sol-profiler
Alternative and updated Solidity smart contract profiler
Espresso
Speedy, parallelised, hot-reloading solidity test framework
Eth tester
Tool suite for testing Ethereum applications
Cliquebait
Simplifies integration and accepting testing of smart contract applications with docker instances that closely resemble a real blockchain network
Seth
Seth is an Ethereum client tool—like a "MetaMask for the command line"
Ethereum graph debugger
Solidity graphical debugger
Tenderly CLI
Speed up your development with human readable stack traces
Solhint
Linter that provides security, style guide, and best practice rules for smart contract validation.
Ethlint
Linter to identify and fix style & security issues in Solidity, formerly Solium
Decode
npm package which parses tx's submitted to a local testrpc node to make them more readable and easier to understand
truffle-assertions
An npm package with additional assertions and utilities used in testing Solidity smart contracts with truffle. Most importantly, it adds the ability to assert whether specific events have (not) been emitted.
Psol
Solidity lexical preprocessor with mustache.js-style syntax, macros, conditional compilation and automatic remote dependency inclusion.
solpp
Solidity preprocessor and flattener with a comprehensive directive and expression language, high precision math, and many useful helper functions.
Decode and Publish
Decode and publish raw ethereum tx. Similar to https://live.blockcypher.com/btc-testnet/decodetx/
Doppelgänger
a library for mocking smart contract dependencies during unit testing.
glide.r
a tool for performing smart contract queries (audit/bug-bounty).
rocketh
A simple lib to test ethereum smart contract that allow to use whatever web3 lib and test runner you choose.
pytest-cobra
PyTest plugin for testing smart contracts for Ethereum blockchain.
ERCx
Testing tool with a Web interface to test conformance and properties of ERC-20 tokens. Based on Foundry forge.
bbscope
Scope gathering tool for HackerOne, Bugcrowd, Intigriti, YesWeHack, and Immunefi!
immunefi.com
Bug bounty platform focused on blockchain and smart contract security.
code4rena.com
Auditors compete to identify and eliminate high-severity bugs before production.
www.jobprotocol.xyz
& try HR games!
Support Me:
0xB25C5E8fA1E53eEb9bE3421C59F6A66B786ED77A
ERC20 & ETH officercia.eth
Related lists in Decentralized Systems
See categoryAwesome Bitcoin
igorbarinov/awesome-bitcoin
A curated list of bitcoin services and tools for software developers
Awesome Algorand
awesome-algorand/awesome-algorand
⚡A curated list of awesome resources related to the Ⱥlgorand Blockchain ⛓
Awesome ATProto
atblueprints/awesome-atproto
A curated list of awesome AT Protocol resources
Awesome Mastodon
hyperupcall/awesome-mastodon
Curated list of awesome Mastodon-related stuff!
Standard
4337Mafia/awesome-account-abstraction
📖 A curated list of resources dedicated to Account Abstraction (EIP-4337)
Awesome Cosmos
cosmos/awesome-cosmos
Collection of Cosmos related resources