artgobblers/art-gobblers

An experimental decentralized art factory by Justin Roiland and Paradigm.

SolidityPythonSMT
This is stars and forks stats for /artgobblers/art-gobblers repository. As of 20 Apr, 2024 this repository has 417 stars and 54 forks.

Art Gobblers • Art Gobblers is an experimental decentralized art factory by Justin Roiland and Paradigm. Background Art Gobblers is a decentralized art factory owned by aliens. As artists make cool art, Gobblers gains cultural relevance, making collectors want the art more, incentivizing artists to make cooler art. It's also an on-chain game. See our overview of the system, as well as deep dives into some of the project's mechanisms, like GOO and VRGDAs. Deployments Contract Mainnet Goerli ArtGobblers 0x60bb1e2aa1c9acafb4d34f71585d7e959f387769 0x60bb1e2aa1c9acafb4d34f71585d7e959f387769 Pages 0x600df00d3e42f885249902606383ecdcb65f2e02 0x600df00d3e42f885249902606383ecdcb65f2e02 Goo 0x600000000a36f3cd48407e35eb7c5c910dc1f7a8 0x600000000a36f3cd48407e35eb7c5c910dc1f7a8 State Diagrams Usage You will need a copy of Foundry installed before proceeding. See the installation guide for details. To build the contracts: git clone https://github.com/artgobblers/art-gobblers.git cd art-gobblers forge install Run Tests In order to run unit tests, run: forge test For longer fuzz campaigns, run: FOUNDRY_PROFILE="intense" forge test For differential fuzzing against a python implementation, see here. Run Slither After installing Slither, run: slither src/ --solc-remaps 'ds-test/=lib/ds-test/src/ solmate/=lib/solmate/src/ forge-std/=lib/forge-std/src/ chainlink/=lib/chainlink/contracts/src/ VRGDAs/=lib/VRGDAs/src/ goo-issuance/=lib/goo-issuance/src/' Update Gas Snapshots To update the gas snapshots, run: forge snapshot Deploy Contracts In order to deploy the art gobblers contracts, set the relevant constants in the DeployMainnet script, and run the following command(s): export DEPLOYER_PRIVATE_KEY=$DEPLOYER_PRIVATE_KEY export GOBBLER_PRIVATE_KEY=$GOBBLER_PRIVATE_KEY export PAGES_PRIVATE_KEY=$PAGES_PRIVATE_KEY export GOO_PRIVATE_KEY=$GOO_PRIVATE_KEY forge script script/deploy/DeployMainnet.s.sol:DeployMainnet --rpc-url $RPC_URL --verify --etherscan-api-key $API_KEY We use profanity2 to securely generate vanity addresses for the ArtGobblers, Pages, and Goo contracts. As a result, each of these contracts must be deployed using a unique private key. To simplify deployment, the deployment script ensures that only DEPLOYER_PRIVATE_KEY needs to be seeded with ETH, by automatically transferring 0.25 ETH from it to the other deployers before they are used. To ensure security in case the private keys generated by profanity2 are compromised, the script immediately revokes GOBBLER_PRIVATE_KEY's ownership over ArtGobblers and transfers it to a configurable address. Pages and Goo do not grant any special authority to their respective deployers. Audits The following auditors were engaged to review the project before launch: samczsun (No report) Spearbit (Report here) code4rena (Report here) Riley Holterhus (No Report) License MIT © 2022 Art Gobblers
Read on GithubGithub Stats Page
repotechsstarsweeklyforksweekly
abigger87/huffplateSolidity25020
ZeframLou/bagholderSolidityShellMakefile47060
val-lang/valSwiftPythonOther9390390
PaddlePaddle/FastDeployC++PythonJava2.3k+16397+3
k2-fsa/sherpa-ncnnC++CMakeShell5500990
metacomp/nyu-cs2262-001-fa20DockerfilePython2053+2
jordeam/sel0456Emacs LispPythonC40150
react-native-webrtc/react-native-webrtcJavaObjective-CTypeScript4.3k01.2k0
openai/whisperPython46k05.3k0
FrozenBurning/Text2LightJupyter NotebookPython4980380