The PartyBid V1 protocol allowed people to pool funds together to acquire NFTs. V2 (Party Protocol) adds new features to allow parties to use and govern those NFTs together as well. The party never ends!
PLEASE READ THE PROTOCOL DOCS HERE!
docs/ # Start here
├── overview.md
├── crowdfund.md
└── governance.md
contracts/
│ # Used during the crowdfund phase
├── crowdfund/
│ ├── AuctionCrowdfund.sol
│ ├── BuyCrowdfund.sol
│ ├── CollectionBuyCrowdfund.sol
│ ├── CrowdfundFactory.sol
│ ├── Crowdfund.sol
│ └── CrowdfundNFT.sol
├── gatekeepers/
│ ├── AllowListGateKeeper.sol
│ └── TokenGateKeeper.sol
├── globals/
│ └── Globals.sol
│ # Used during the governance phase
├── party/
│ ├── Party.sol
│ ├── PartyFactory.sol
│ ├── PartyGovernance.sol
│ └── PartyGovernanceNFT.sol
├── proposals/
│ ├── ProposalExecutionEngine.sol
│ ├── ArbitraryCallsProposal.sol
│ ├── FractionalizeProposal.sol
│ ├── ListOnOpenseaProposal.sol
│ └── ListOnZoraProposal.sol
├── distribution/
│ └── TokenDistributor.sol
| # Used to render crowdfund and governance NFTs
└── renderers/
├── CrowdfundNFTRenderer.sol
└── PartyGovernanceNFTRenderer.sol
sol-tests/ # Foundry tests
tests/ # TS tests
First install Foundry.
forge install
yarn -D
yarn buildyarn testyarn test:tsyarn test:sol
# If you want gas reports:
yarn test:gasforge test -m testFork --fork-url $YOUR_RPC_URLThis code is provided under the Beta Software License Agreement.