Enzyme is an Ethereum-based protocol for decentralized on-chain asset management. It is a protocol for people or entities to manage their wealth & the wealth of others within a customizable and safe environment. Enzyme empowers anyone to set up, manage and invest in customized on-chain investment vehicles.
If you find a vulnerability that may affect live deployments, you can submit a report via:
A. Immunefi (https://immunefi.com/bounty/enzymefinance/), or
B. Direct email to security@enzyme.finance
Please DO NOT open a public issue.
This is the branch for active development, and it contains:
For deployed, in-production system contracts, see the relevant release branch (e.g., v4
).
v4 contract deployments can be found here.
This repository comes with a reproducible development environment based on nix
and direnv
.
For the best possible developer experience, make sure you have the following installed:
Once you have these installed, your isolated local development environment will be set up automatically whenever you navigate to this directory.
If you don't want to use nix
, make sure to have the following installed:
Then, clone this repository:
git clone [GIT_REPOSITORY_URL]
Generate internal interfaces for foundry deployment and tests:
make build
First, create your .env
file by copying .env.example
. Input your Ethereum (and/or other networks) node endpoint info as-needed (generally, only setting ETHEREUM_NODE_MAINNET
, ETHEREUM_NODE_POLYGON
, etc is fine).
Then, in order to run the test suite:
make test
You can also manually run parts of the test suite using forge
directly, e.g:
forge test --match-test <REGEX>
This repository has been migrated from Hardhat to Foundry, and old test suites are still being ported.
If you are looking for the legacy test suite & test coverage please refer to the hardhat branch.
See our contributing instructions.
Please note that all repositories hosted under this organization follow our Code of Conduct, make sure to review and follow it.