What is your smart contract development environment setup?

I am running:

What I have done is
(A) base ubuntu docker image
(B) installed, git, node, npm, nvm
('C) installed ganache-cli global {plus a 1000 other apt install that are needed for keccak, truffle and solc}
(D) installed geth {for ganache-cli fork}

after tons of experimenting and learning came to conclusion that I will HAVE to
(E) install OZ right in this container

docker commit this image

Now use it for my OZ projects as separate containers. Each of these child containers has to go through a lot of mess for updating any global npm package.

Hope this is helpful. More than happy to elaborate more. Thank you.

I also heavily use the OpenZeppelin documentation

1 Like