Sphinx is an open-core DevOps platform for smart contract deployments.
Here is the deployment process with the DevOps platform:
- Define your project in a single declarative config file instead of writing deployment scripts. Sphinx has a Hardhat and Foundry plugin.
- Propose your deployment gaslessly from a CI process or the command line.
- Maintain a balance of USDC on a single chain to fund deployments. You don't need native gas tokens on any chain.
- Approve your deployment with a single meta transaction signed by your project owners. You'll always sign a single meta transaction regardless of the number of chains or the size of the deployment.
- Sphinx trustlessly executes your deployment on every chain and verifies your contracts on Etherscan. Your contracts will have consistent addresses across networks because Sphinx uses
CREATE3
by default. - Generate deployment artifacts in the same format as
hardhat-deploy
.
You can request access for the DevOps platform here. We are working out pricing with teams on a case-by-case basis.
You can also use Sphinx's Hardhat or Foundry plugin as a feature-limited deployment tool. With this CLI tool, you can define your deployments in a declarative config file and generate deployment artifacts in the same format as hardhat-deploy
. Your contracts will be deployed using CREATE3
. However, you won't be able to use any of the other features described above.
The standalone CLI tool is free to use and fully open-source. All of the code is in this repository. You can use it without using the DevOps platform.
- Foundry:
- Hardhat:
- Foundry:
- Hardhat:
- Sphinx Config File: Where you define smart contract deployments for a project.
- Post-Deployment Actions: How to call arbitrary functions after your contracts are deployed.
- Constructor Argument Overrides: How to set constructor arguments on a chain-by-chain basis.
- Contract Variables: Shows how to define every type of contract variable in your Sphinx config file (structs, arrays, etc.).
- The
SphinxManager
Contract: The contract that deploys your project. - FAQ
- Ethereum
- Optimism
- Arbitrum
- Polygon
- Polygon zkEVM
- BNB Smart Chain (aka BSC)
- Gnosis Chain
- Avalanche C-Chain
- Linea
- Fantom
- Base
Test networks:
- Ethereum Goerli
- Optimism Goerli
- Arbitrum Goerli
- Polygon Mumbai
- Polygon zkEVM Testnet
- BNB Smart Chain Testnet
- Gnosis Chiado
- Avalanche Fuji
- Linea Goerli
- Fantom Testnet
- Base Goerli
More networks are on the way! Please feel free to reach out in our Discord if there are networks you'd like us to add.
@smartcontracts
Wonderland
@rpate97
@sam-goldman
Contributions to Sphinx are greatly appreciated! To get started, please read our contributing guide. Then, check out the list of Good First Issues. Let us know if you have any questions!
If you have any questions or feature requests, send us a message in our Discord!
MIT © 2022