Foundry – Solidity Tests, Fuzzing and so much more!

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • openzeppelin-contracts

    OpenZeppelin Contracts is a library for secure smart contract development.

  • To install the respective modules, we will need to first fetch the Github repo names to Openzepplin and Chainlink (click on these hyperlinks). We will enter this when installing. To add it into this Foundry Project, run:

    To install the respective modules, we will need to first fetch the Github repo names to Openzepplin and Chainlink (click on these hyperlinks). We will enter this when installing. To add it into this Foundry Project, run:

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • mocha

    ☕️ simple, flexible, fun javascript test framework for node.js & the browser

  • Until so long, the de facto testing framework was Chai/Mocha. That didn’t change as the industry weight started shifting from Truffle to Hardhat. The only drawback one might consider was that it needed a Solidity Developer who also knew Javascript. Granted most already do but the question raised by Foundry is that if you are writing your contracts in Solidity then why not the tests as well.

  • hardhat-starter-kit

    A repo for boilerplate code for testing, deploying, and shipping chainlink solidity code.

  • Fuzzing is basically when you supply all kinds of values to your contract to check which one breaks it. With Hardhat or Truffle you do not get the feature. You need to separately use Echidna to fuzz test your contracts. And while the starter kit from Chainlink does make it easy by bringing the scripts under one package.json, you need Docker to run it. Fuzzing with Foundry is as simple as passing in an argument to the test functions and Foundry handles the rest by passing a range of values when running those functions.

  • book

    The Rust Programming Language

  • Also, there is this really awesome Foundry book you might want to check out if you want to learn more. Apparently that trend is catching up and new languages, tools and frameworks publishing their docs as “books” with – Rust Book, Anchor Book, Nutanix Bible and so on already being available to learners.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts