Giter Club home page Giter Club logo

foundry's Introduction

XMTP Foundry Development Container for Docker and VS Code

Foundry

This development container for Visual Studio Code is a pre-configured and isolated environment that allows you to develop, build, and test your software projects using consistent tools and settings. This development container can be used in Docker to create a standardized and reproducible environment for your development workflow. This is useful when working on projects that require specific versions of programming languages, libraries, tools, and other dependencies. By using this development container, you can ensure that all members of your development team work with the same development environment, reducing issues related to differences in configurations and dependencies.

Key benefits of using development containers in Visual Studio Code include:

  1. Consistency: Development containers ensure that everyone on the team is using the same environment, reducing "works on my machine" issues.

  2. Isolation: Containers provide isolation from the host system, preventing conflicts between different software versions.

  3. Reproducibility: Containers can be versioned, making it easy to replicate the exact development environment in different stages of the project.

  4. Portability: Development containers can be shared and run on different machines, making it easier to onboard new team members or work across multiple devices.

  5. Dependency Management: Containers encapsulate dependencies, eliminating the need to install and manage them directly on the host system.

To use this development container in Visual Studio Code, specify the Dockerfile as defined below and reopen in the Remote Containers module.

Supported Toolchain

Everything needed to develop smart contracts with Ethereum and Foundry

GO: 1.22.0 ETH: 1.13.12 SOLC: 0.8.24

Deployments

Releases

Deployments are available for all supported platforms.

Platform Support

  • linux/amd64
  • linux/arm64

Building

  • requires:
    • 16 Gb memory
    • Docker
    • BuildKit TARGETARCH $ DOCKER_BUILDKIT=1 docker build . -t ...

arm64

To build locally, run: $ sh build.sh

Then it can be used normally, as below.

Example Dockerfile

FROM ghcr.io/xmtp/foundry:latest

ENV PATH=${PATH}:~/.cargo/bin
RUN forge build --sizes
RUN forge test -vvv

Help

$ forge --help
$ anvil --help
$ cast --help

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.