
Security News
MCP Steering Committee Launches Official MCP Registry in Preview
The MCP Steering Committee has launched the official MCP Registry in preview, a central hub for discovering and publishing MCP servers.
@wooy/pool-contracts
Advanced tools
The Wooy Prize Savings Protocol Ethereum smart contracts.
For an overview of the concepts and API please see the documentation
This project is available as an NPM package:
$ yarn add @wooy/pool-contracts
There are deployment artifacts available in the deployments/
directory. For example, to pull in the PoolWithMultipleWinnersBuilder artifact:
const PoolWithMultipleWinnersBuilder = require('@wooy/pool-contracts/deployments/rinkeby/PoolWithMultipleWinnersBuilder.json')
const { abi, address, receipt } = PoolWithMultipleWinnersBuilder
Application Binary Interfaces for all Wooy contracts and related contracts are available in the abis/
directory.
For example, to pull in the PrizePool ABI:
const PrizePool = require('@wooy/pool-contracts/abis/PrizePool.json')
First clone this repository and enter the directory.
Install dependencies:
$ yarn
We use direnv to manage environment variables. You'll likely need to install it.
We use Hardhat and hardhat-deploy
To run unit & integration tests:
$ yarn test
To run coverage:
$ yarn coverage
To run fuzz tests:
$ yarn echidna
Ensure your environment variables are set up. Make sure your Alchemy URL is set. Now start a local fork:
$ yarn start-fork
Setup account impersonation and transfer eth:
$ ./scripts/setup.sh
Start a local node and deploy the top-level contracts:
$ yarn start
NOTE: When you run this command it will reset the local blockchain.
Start up a Hardhat Console:
$ hardhat console --network localhost
Now you can load up the deployed contracts using hardhat-deploy:
> await deployments.all()
If you want to send transactions, you can get the signers like so:
> let signers = await ethers.getSigners()
Let's mint some Dai for ourselves:
> let dai = await ethers.getContractAt('ERC20Mintable', (await deployments.get('Dai')).address, signers[0])
> await dai.mint(signers[0]._address, ethers.utils.parseEther('10000'))
> ethers.utils.formatEther(await dai.balanceOf(signers[0]._address))
Copy over .envrc.example to .envrc
$ cp .envrc.example .envrc
Make sure to update the enviroment variables with suitable values.
Now enable the env vars using direnv
$ direnv allow
Now deploy to a network like so:
$ yarn deploy rinkeby
It will update the deployments/
dir.
FAQs
Wooy Prize Linked Savings Account Pool Smart Contracts
We found that @wooy/pool-contracts demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 12 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
The MCP Steering Committee has launched the official MCP Registry in preview, a central hub for discovering and publishing MCP servers.
Product
Socket’s new Pull Request Stories give security teams clear visibility into dependency risks and outcomes across scanned pull requests.
Research
/Security News
npm author Qix’s account was compromised, with malicious versions of popular packages like chalk-template, color-convert, and strip-ansi published.