Skip to content

A curation of awesome tools and resources for developers and auditors in the ethereum ecosystem

Notifications You must be signed in to change notification settings

damilolaedwards/awesome-solidity-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

60 Commits
Β 
Β 

Repository files navigation

Awesome Solidity Tools

This list compiles a variety of essential tools and libraries for Solidity development, aimed at enhancing the efficiency, security, and performance of smart contract projects. From fuzz testing and static analysis to debugging and deployment, these resources are invaluable for both novice and experienced developers working within the Ethereum ecosystem.

S/N Tool Description
1 Remix 🌐 A browser-based real-time compiler and integrated development environment (IDE) for Solidity. It supports testing, debugging, and deploying smart contracts right from your browser.
2 openzeppelin-contracts πŸ”’ A widely-used library for building secure, modular, and upgradeable smart contracts. It includes standard implementations for tokens, access control, and other important features.
3 EIPs πŸ“œ The Ethereum Improvement Proposals (EIPs) repository contains the technical proposals for changes to the Ethereum protocol, including core updates, interface standards, and contract standards.
4 DeFi-Developer-Road-Map πŸ›€οΈ A comprehensive roadmap and handbook for DeFi developers, including essential tools, resources, and tutorials for building decentralized applications (DApps).
5 foundry-rs/foundry ⚑ A fast, modular toolkit for Ethereum development, written in Rust. Foundry simplifies testing, deploying, and interacting with Ethereum smart contracts.
6 Consensys-smart-contract-best-practices βœ… A guide focused on security best practices for smart contract development, helping developers avoid common vulnerabilities and pitfalls.
7 wagmi βš›οΈ A collection of reactive primitives that make building Ethereum apps easy, especially for handling wallet connections and contract interactions.
8 Hardhat πŸ› οΈ A development environment for Ethereum that provides tools to compile, deploy, test, and debug smart contracts. It also supports a local blockchain for testing.
9 Slither πŸ•΅οΈ A powerful static analysis tool for Solidity that helps in finding vulnerabilities, code optimizations, and understanding the flow of a smart contract.
10 DeFiHackLabs πŸ§ͺ A repository for reproducing real-world DeFi hacks and incidents, using Foundry for testing and experimentation. It’s a learning tool for security and exploit analysis.
11 Mythril πŸ” A security analysis tool for Ethereum smart contracts, Mythril performs symbolic execution, taint analysis, and control flow checks to detect vulnerabilities.
12 rainbow-me 🌈 An Ethereum wallet app designed for mobile devices, enabling users to store, send, and receive crypto assets with ease. It's highly intuitive and user-friendly.
13 blockscout πŸ”— A blockchain explorer for Ethereum-based networks. It helps users inspect and analyze transactions, blocks, and accounts on EVM-based blockchains.
14 Echidna 🐍 A fuzz testing tool that allows you to define properties for your smart contracts and uses fuzzing to find security vulnerabilities.
15 viem πŸ“œ A TypeScript library providing a comprehensive interface for interacting with the Ethereum blockchain, designed for developers who prefer JavaScript ecosystems.
16 Solady βš™οΈ A collection of gas-optimized Solidity snippets, designed to reduce deployment and transaction costs in smart contracts.
17 Seth πŸ”§ A command-line interface for interacting with Ethereum, often described as "MetaMask for the command line," allowing developers to interact with contracts and perform Ethereum actions.
18 dapphub/dapptools πŸ’» A suite of command-line tools for Ethereum development, making it easy to build, test, and deploy smart contracts directly from your terminal.
19 Solcurity πŸ›‘οΈ An opinionated set of security and code quality standards for Solidity, focusing on making contracts safer and more robust.
20 DeFiVulnLabs πŸ” A resource for learning about common smart contract vulnerabilities using Foundry, enabling developers to enhance their security knowledge.
21 learn-evm-attacks πŸ“š A project that explores blockchain attacks in detail, maintained by Coinspect's audit team, offering insights into vulnerabilities and preventive measures.
22 Useful-solidity-patterns πŸ’‘ A collection of useful Solidity design patterns that can help developers write more efficient and secure smart contracts.
23 Solc-js πŸ“¦ JavaScript bindings for the Solidity compiler, allowing developers to compile Solidity code directly within JavaScript environments.
24 Crypto-OpSec-SelfGuard-RoadMap πŸ›‘οΈ A repository collecting the best practices and research related to operational security (OpSec) in DeFi, blockchain, and crypto environments. Contributions are encouraged!
25 dethcrypto/ethereum-code-viewer πŸ” A Visual Studio Code extension that allows users to view the source code of deployed Ethereum contracts, facilitating easier analysis and debugging.
26 coinbase-wallet-sdk πŸ“² An open protocol enabling users to connect their mobile wallets to decentralized applications (DApps), enhancing user accessibility and interaction.
27 evm-opcodes πŸ“œ A comprehensive reference for Ethereum opcodes and instructions, useful for developers looking to deepen their understanding of EVM execution.
28 hardhat-starter-kit πŸš€ A boilerplate code repository for testing, deploying, and shipping Chainlink Solidity code, designed to simplify the development process.
29 naddison36/sol2uml πŸ—οΈ A tool for generating Unified Modeling Language (UML) class diagrams from Solidity smart contracts, aiding in documentation and visualization of contract architecture.
30 Awesome-Solidity-Gas-Optimization β›½ A curated list of the best resources and practices for optimizing gas usage in Solidity contracts, helping developers reduce transaction costs.
31 cryo ❄️ A tool designed to simplify the extraction of blockchain data into various formats, including Parquet, CSV, JSON, or Python dataframes, making data analysis easier.
32 Surya πŸ” A set of utilities for analyzing and exploring Solidity contracts, offering insights into contract structure and relationships.
33 Intellij-solidity πŸ’» A Solidity plugin for IntelliJ IDEA, providing code completion, syntax highlighting, and other features to enhance Solidity development within the IDE.
34 Solidity-stringutils πŸ”€ A utility library for Solidity that provides string manipulation functions and slicing capabilities to make string handling easier in smart contracts.
35 Solhint βœ… An open-source linter for Solidity code, helping developers enforce coding standards and best practices while writing smart contracts.
36 /thirdweb-dev/contracts πŸ“¦ A collection of pre-built smart contracts that can be deployed easily via Thirdweb, aimed at speeding up DApp development.
37 sc-forks/solidity-coverage πŸ“Š A code coverage tool for Solidity that helps developers understand which parts of their code are tested and which are not, promoting better testing practices.
38 vscode-solidity πŸ–₯️ A Visual Studio Code extension that adds Solidity language support, including syntax highlighting and other useful features for Solidity development.
39 Prb-math βž— A library for advanced fixed-point mathematics in Solidity, providing developers with tools for high-precision calculations.
40 halmos βš™οΈ A symbolic testing tool for EVM smart contracts that helps in identifying potential vulnerabilities and ensuring correctness through automated testing.
41 ethereum-api πŸ“‘ An API designed for interacting with Ethereum smart contracts, facilitating easier integration and communication between DApps and contracts.
42 Sourcify πŸ” A service that provides source verification for smart contracts, enhancing transparency and improving user experience in web3 applications.
43 core βš™οΈ High-performance core libraries for Ethereum development, written in Rust, known for their robustness and comprehensive documentation.
44 crytic/solc-select πŸ”„ A command-line interface that allows developers to quickly switch between different versions of the Solidity compiler, facilitating testing and development.
45 prettier-solidity/prettier-plugin-solidity ✨ A Prettier plugin designed to automatically format Solidity code, ensuring consistent style and improving code readability.
46 awesome-openzeppelin 🌟 A curated list of resources, tools, and libraries related to OpenZeppelin, promoting secure and efficient smart contract development.
47 pyrometer πŸ”₯ A tool for analyzing the security and parameters of Solidity smart contracts, providing insights to enhance contract safety.
48 revoke.cash ❌ A service that allows users to revoke or update their token approvals, helping to manage and secure token permissions.
49 openzeppelin-upgrades πŸ”„ Plugins for Hardhat and Foundry that facilitate the deployment and management of upgradeable smart contracts on Ethereum.
50 Solidity By Example πŸ“– A collection of Solidity examples that serve as practical references for developers looking to learn by doing.
51 ConsenSys/vscode-solidity-auditor πŸ•΅οΈ A Visual Studio Code extension that provides language support and visual auditing tools to enhance Solidity code security and quality.
52 /eth-sig-util ✍️ A collection of functions that facilitate signing and verifying data using Ethereum keys, making it easier to handle authentication and data integrity.
53 smartbugs 🐞 A framework designed to analyze Ethereum smart contracts for vulnerabilities, helping developers identify and mitigate potential security issues.
54 tintinweb/solidity-shell πŸ’» An interactive Solidity shell that allows for lightweight session recording, making it easier for developers to test and debug smart contracts.
55 Tenderly/tenderly-cli ⚑ A command-line interface that enhances development by providing detailed error stack traces, helping developers quickly identify and fix issues.
56 4naly3er πŸ” A static code analysis tool for Ethereum smart contracts, providing insights into potential vulnerabilities and code quality issues.
57 Solidity-Bytes-Utils πŸ“¦ A utility library for Solidity that provides essential operations for working with tightly packed byte arrays, facilitating better data manipulation.
58 Coinbase Solidity Style Guide πŸ“š A set of coding standards and best practices for writing Solidity code, promoting consistency and quality across projects.
59 4bytes πŸ“– A repository of 4-byte function selectors for EVM smart contracts, useful for developers needing to interact with contract functions efficiently.
60 merkle-tree 🌳 A JavaScript library for generating Merkle trees and proofs, providing essential functionality for secure data verification in decentralized applications.
61 solidity-docgen πŸ“ A documentation generator specifically for Solidity projects, helping developers create comprehensive and readable documentation for their smart contracts.
62 ETH SDK πŸ“¦ A software development kit for Ethereum, providing tools and libraries that simplify the integration and development of Ethereum-based applications.
63 solstat πŸ“Š A static analyzer for Solidity that helps identify contract vulnerabilities and optimize gas usage, promoting safer and more efficient smart contracts.
64 Solidity-Attack-Vectors βš”οΈ A repository that catalogs common attack vectors targeting Solidity smart contracts, serving as a guide for developers to enhance security measures.
65 gochain/web3 🌐 A command-line interface tool for interacting with web3 blockchains such as Ethereum and GoChain, simplifying blockchain interactions for developers.
66 weiroll/weiroll πŸ“ A simple and efficient operation-chaining language for the Ethereum Virtual Machine (EVM), designed for ease of use in scripting blockchain interactions.
67 useWeb3 πŸ“š A curated resource that provides the best and latest information on Ethereum, blockchain, and web3 development, making it easier for developers to stay updated.
68 Abdk-libraries-solidity πŸ“– Open-source libraries for Solidity provided by ABDK Consulting, aimed at enhancing the functionality and reliability of smart contracts.
69 Aderyn 🦜 A Rust-based analyzer for Solidity Abstract Syntax Trees (AST), offering tools for deep analysis and understanding of smart contracts.
70 Fhevm πŸ”— A Solidity library that facilitates interactions with an fhEVM blockchain, enabling developers to work with advanced cryptographic techniques.
71 pyevmasm πŸ› οΈ A disassembler and assembler for the Ethereum Virtual Machine (EVM), providing essential tools for low-level smart contract development.
72 Solidity-nextjs-starter πŸš€ A full-stack dApp starter template that combines Ethereum (Solidity) with Next.js (React), designed to streamline the development of decentralized applications.
73 TheAlgorithms πŸ“Š A collection of algorithms and data structures implemented in Solidity, serving as educational resources for developers looking to deepen their understanding.
74 Smock πŸ§ͺ A mocking library for Solidity that enables developers to create and manipulate mock contracts for testing and development purposes.
75 flood 🌊 A load testing tool designed for benchmarking EVM nodes over RPC, helping developers assess performance and reliability under different conditions.
76 eth-utils πŸ› οΈ A collection of utility functions for working with Ethereum-related codebases, simplifying common tasks and improving developer productivity.
77 Medusa πŸ¦– A cross-platform fuzzer for smart contracts, based on go-ethereum and inspired by Echidna, designed to identify vulnerabilities in contracts.
78 RareSkills-solidity-riddles 🧩 A collection of exercises and puzzles focused on Solidity security, helping developers test their knowledge of the language's unique features.
79 Properties πŸ”‘ A repository of properties that can be used in unit tests or fuzzing, compatible with tools like Echidna and Medusa for testing smart contracts.
80 create2deployer πŸ› οΈ A helper smart contract that simplifies and secures the use of the CREATE2 opcode in EVM, enhancing contract deployment safety.
81 EthereumStudio πŸ’» A standalone desktop IDE for Ethereum development, providing a user-friendly environment for coding and testing smart contracts.
82 ethereum-optimism 🌐 A unified token list for Optimistic Rollups on Mainnet, Base, and other OP chains, facilitating easier token management across platforms.
83 OffcierCia-tips-solidity-code-auditors πŸ’‘ A collaborative repository for collecting tips and tricks for Solidity code auditors, aimed at improving audit effectiveness.
84 RareSkills-Solidity-Exercises πŸ“˜ A set of exercises designed to help developers learn Solidity, complementing the RareSkills learning resources.
85 Solidity Compiler Version Manager βš™οΈ A version manager for the Solidity compiler, simplifying the process of switching between different compiler versions for development.
86 Solidity Code Metrics πŸ“Š A tool for measuring various metrics of Solidity code, helping developers assess code quality and maintainability.
87 Slang πŸ“œ A set of tooling for Solidity compilers developed by Nomic Foundation, aiming to enhance the development workflow for Solidity programmers.
88 foundry-toolchain βš™οΈ A GitHub action for installing the Foundry toolchain, streamlining the setup process for developers.
89 cheatsheet.sol πŸ“œ A compilable cheatsheet for Solidity, providing quick references for developers working with the language.
90 Soldeer πŸ“¦ A Solidity package manager written in Rust, simplifying dependency management for Solidity projects.
91 Emacs-solidity πŸ› οΈ The official Solidity mode for Emacs, providing syntax highlighting and tooling support for Solidity development in the Emacs editor.
92 Solidity-RLP πŸ”— A Solidity library for Ethereum's RLP (Recursive Length Prefix) encoding and decoding, essential for data handling in Ethereum applications.
93 DeFiLabs 🏦 An on-chain testing platform for DeFi applications using Foundry, enabling developers to test and validate their DeFi projects in a realistic environment.
94 Starlight ⚑ A transpiler that converts Solidity code into zApp (zero-knowledge application) code, facilitating the development of privacy-focused applications.
95 solidity-merkle-trees 🌳 The most advanced Solidity library for verifying Merkle (multi) proofs across various types of Merkle trees, enhancing security and efficiency in smart contracts.
96 1inch-solidity-utils βš™οΈ Utility functions and libraries designed specifically for Solidity, providing essential tools for 1inch protocols and beyond.
97 Solidity + Hardhat πŸ› οΈ An IDE extension that adds comprehensive support for Solidity development within Hardhat, featuring code formatting, linting, snippets, and more for VSCode users.
98 Elliptic-curve-solidity πŸ” A library implementing elliptic curve arithmetic operations in Solidity, enabling advanced cryptographic functionalities.
99 SublimeEthereum πŸ’» Syntax highlighting and support for Ethereum languages like Solidity, Vyper, Yul, and StarkNet Cairo in Sublime Text editor.
100 chaindata πŸ”— Cross-chain token data specifically designed for EVM-based platforms, facilitating interoperability and data access.
101 a16z/metamorphic-contract-detector πŸ•΅οΈ A tool to identify potential metamorphic contracts, which may exhibit mutable properties, raising security concerns.
102 go-ethlibs πŸ“š Ethereum libraries written in Go for seamless interaction with Ethereum nodes, enhancing development capabilities.
103 sol-merger πŸ› οΈ A utility that merges all Solidity contract imports into a single file, simplifying contract management and deployment.
104 solidity-parser πŸ“œ A robust Solidity parser for JavaScript, built on ANTLR4 grammar, enabling syntax analysis and manipulation of Solidity code.
105 Crytic-Compile πŸ”§ A library designed to assist in the compilation of smart contracts, streamlining the development workflow.
106 Solidity-DevSecOps-Standard πŸ“‹ A checklist outlining DevSecOps best practices specifically tailored for EVM-based projects, ensuring security throughout the development lifecycle.
107 solgre 🧠 A semantic grep utility for Solidity, allowing developers to search and analyze Solidity codebases efficiently.
108 vscode-solidity-inspector πŸ” A Visual Studio Code extension that provides various utilities for Solidity smart contract development, enhancing productivity and code quality.
109 solarray ⚑ A high-performance library for managing dynamic arrays in Solidity, optimizing array operations for developers.
110 abiencoder πŸ”„ A robust ABI encoder from HashEx, simplifying the encoding and decoding of data structures in Ethereum contracts.
111 solidity zero finder rust πŸ•΅οΈβ€β™‚οΈ A tool for finding zero values in Solidity contracts, enhancing debugging and code analysis.
112 hardhat-ignition πŸš€ A declarative deployment system for Hardhat that simplifies the process of deploying smart contracts without the complexities of deployment mechanics.
113 Solidity-Proxy-Playground 🎭 An experimental repository showcasing various proxy implementations, highlighting their pros and cons.
114 solidity-benchmarks πŸ“Š A collection of benchmarks for popular contract implementations in Solidity, aiding performance analysis.
115 solidity-fuzzing-comparison πŸ” A comparative analysis of different Solidity fuzzing tools, including Foundry, Echidna, and Medusa.
116 swiss-knife πŸ› οΈ A comprehensive toolkit that aggregates various EVM tools into a single platform for developers.
117 ItsNickBarry/hardhat-contract-sizer πŸ“ A Hardhat plugin that outputs the sizes of contracts, assisting in optimization and analysis.
118 Farcaster-solidity 🌐 A collection of Solidity libraries designed for interacting with Farcaster messages on-chain.
119 nim-eth βš™οΈ Common utility functions and libraries for Ethereum, built with Nim.
120 go-defi πŸ’° A library that enables interaction with various DeFi protocols like Aave, Compound, and Uniswap in a single transaction, including flash loans and swaps.
121 peth 🐍 An all-in-one Ethereum SDK and command-line tool written in Python, providing essential utilities for Ethereum development.
122 dethtools βš’οΈ A versatile toolkit for Ethereum developers, offering various utilities and tools to streamline development processes.
123 solidity math utils βž— A library of mathematical utilities for Solidity, enhancing the precision and efficiency of calculations.
124 halo2-solidity-verifier πŸ” A set of tools for verifying halo2 circuits within Solidity contracts, facilitating advanced cryptographic applications.
125 abi2solidity πŸ“œ A utility that converts an ABI (Application Binary Interface) to a Solidity interface, simplifying contract interactions.
126 uniswap-v3-simulator πŸ“ˆ A backtester and impermanent loss simulator designed for LP strategies on Uniswap V3.
127 vscode-solidity-metrics πŸ“Š Generate metrics, complexity, and risk profile reports for your Solidity source code projects within Visual Studio Code.
128 solidity-json-writer πŸ“„ A library that assists in generating and constructing JSON for smart contract development, streamlining the process.
129 defi-resources πŸ“š A curated list of outstanding decentralized finance projects, software, trackers, dashboards, and management resources.
130 evm-blockchain-bridge πŸŒ‰ A simplified bridge for transferring assets between two EVM-compatible networks.
131 forge-alphanet βš™οΈ Foundry tools for interfacing with Reth Alphanet's latest EVM extensions.
132 solidity-debugger 🐞 A debugger specifically for Solidity, enhancing the debugging experience for developers.
133 sambacha/prettier-config-solidity 🎨 A Prettier configuration optimized to minimize AST churn and conform to Solidity specifications.
134 Tenderly πŸ› οΈ A platform for monitoring smart contracts with features like error tracking, alerting, and performance metrics.
135 fuzzlib πŸ§ͺ A library designed for fuzz testing Solidity smart contracts, identifying potential vulnerabilities.
136 free-eth-node πŸ”₯β›“ A tool for instant connection to any EVM chain, simplifying blockchain interactions.
137 buffer πŸ› οΈ A library for managing mutable byte buffers in Solidity, enhancing data handling capabilities.
138 web3j-solidity-gradle-plugin βš™οΈ A Gradle plugin that provides tasks for compiling Solidity contracts seamlessly.
139 ape-solidity 🦧 A Solidity compiler plugin specifically for the Ape Framework, enhancing development tools.
140 evm-mnemonic-generator πŸ”‘ A tool that generates mnemonics and retrieves wallet information for Ethereum wallets.
141 sol-profiler-vscode πŸ“Š A Visual Studio Code extension for generating and storing smart contract method profiles.
142 multicaller πŸ“ž A Python package designed to simplify and abstract multicaller contract calls on Ethereum and EVM chains.
143 evm-knife πŸ”ͺ A collection of Web3 tools that help developers encode, decode, and convert EVM-friendly values easily.

Contributing

Share your awesome tool(s)

About

A curation of awesome tools and resources for developers and auditors in the ethereum ecosystem

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published