Environment Setup
Only applicable if experimenting with building cool stuff using the Fismo SDK. If you want to directly work on, test, or audit the Fismo protocol, you should visit the Fismo Repo.
Stack
For the Fismology project, the stack is a simple one:
- Solidity
- JavaScript
- Node/NPM
- HardHat
- Ethers
Download or clone the Fismology repository
- Download a zip file of the head of branch
main
. - Or clone the repo using
git
:
git clone https://github.com/cliffhall/Fismology.git
Install Node (also installs NPM)
- Use the latest LTS (long term support) version.
Install required Node modules
- All NPM modules are project local. No global installs required.
cd path/to/Fismology
npm install
Configure Environment
- Copy environments_template.js to
environments.js
and edit to suit. - API keys are only needed for deploying to public networks.
environments.js
is included in.gitignore
and will not be committed to the repo.- For your target Ethereum network environment, set:
gasLimit
: override the default gasLimit for transactionsexplorer
: the url of the etherscan-based block explorertxNode
: the endpoint for sending ethereum transactionsmnemonic
: a valid ethereum HD wallet seed phrase (first wallet is used as deployer)deployments.Fismo
: your clone of the official Fismo deploymentdeployments.Operator
: your clone of the official Fismo deployment
- API Keys are needed for various operations:
apiKey.block_explorer
: your etherscan/poloygonscan/etc API key (used to verify deployed contracts)apiKey.coinmarketcap
: your API key for CoinMarketCap (used with hardhat-gas-reporter)apikey.nft_storage
: your API key for NFT.Storage Filecoin/IPFS gateway