{"id":20011220,"url":"https://github.com/mgnfy-view/steaking","last_synced_at":"2026-05-18T14:11:05.870Z","repository":{"id":252031763,"uuid":"838029897","full_name":"mgnfy-view/steaking","owner":"mgnfy-view","description":"Steaking allows users to stake raw ETH, earn points on a backend server, and deposit their staked ETH into a WETH vault after the Steak protocol launch","archived":false,"fork":false,"pushed_at":"2024-08-16T17:28:22.000Z","size":191,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-12T14:47:35.471Z","etag":null,"topics":["erc4626","ethereum","ethersjs","foundry","pnpm","points","pre-launch","smart-contracts","staking","vault","vyper","vyper-contracts","yield-farming"],"latest_commit_sha":null,"homepage":"","language":"Solidity","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mgnfy-view.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-04T18:24:36.000Z","updated_at":"2024-10-01T05:58:13.000Z","dependencies_parsed_at":"2024-08-07T09:46:55.347Z","dependency_job_id":"94c7666c-acdf-4a0a-b5b1-f295e3a6fc7b","html_url":"https://github.com/mgnfy-view/steaking","commit_stats":null,"previous_names":["mgnfy-view/steaking"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mgnfy-view%2Fsteaking","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mgnfy-view%2Fsteaking/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mgnfy-view%2Fsteaking/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mgnfy-view%2Fsteaking/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mgnfy-view","download_url":"https://codeload.github.com/mgnfy-view/steaking/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241447644,"owners_count":19964336,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["erc4626","ethereum","ethersjs","foundry","pnpm","points","pre-launch","smart-contracts","staking","vault","vyper","vyper-contracts","yield-farming"],"created_at":"2024-11-13T07:24:49.692Z","updated_at":"2026-05-18T14:11:00.833Z","avatar_url":"https://github.com/mgnfy-view.png","language":"Solidity","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Steaking\n\n\u003cbr/\u003e\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"./images/logo.png\" width=\"250\" alt=\"project-name\"\u003e\n\u003c/p\u003e\n\u003cbr/\u003e \n\n\n# Contest Details\n\n### Prize Pool\n\n- High - 100xp\n- Medium - 20xp\n- Low - 2xp\n\n- Starts: TBD\n- Ends: TBD\n\n### Stats\n\n- nSLOC: 177\n- Complexity Score: 🤷\n\n## About the Project\n\nSteak is a yield farming protocol in its pre-launch phase. It boasts an attractive APY, various vault management strategies, and a strong and active community. Being in the pre-launch phase, Steak wants to bootstrap liquidity for its ERC4626 WETH vault and reward early adopters. For this, Steak has launched a points campaign where users can stake their ETH and earn points, which will allow users to be eligible for the $STEAK token airdrop in the future.\n\nThe staking period lasts for a total of 4 weeks where users can stake their raw ETH in the `Steaking` contract. The minimum amount that can be staked is `0.5` ether. 1 ETH staked gives the user 1000 points on the backend server. Users can unstake to adjust their staked ETH amount, or withdraw it completely.\n\nAfter the 4 week staking period ends, the Steak protocol team will set the address of the freshly deployed ERC4626 WETH vault. Users will be able to convert their raw staked ETH into WETH, deposit into the WETH vault, and claim their shares.\n\n## Actors\n\n1. **Users**: Can stake and unstake raw ETH into the vault. After the staking period ends, users can convert ETH to WETH, and deposit it into the WETH vault.\n2. **Steak protocol team multisig**: The multisig is the owner of the `Steaking` contract, and is responsible for setting the vault address after the staking period ends.\n\n## Scope (contracts)\n\nAll the files listed below are in scope.\n\n```\nsrc\n├── steaking-contracts\n│   └── src\n│       └── interfaces\n│       │   ├── IWETH.vyi\n│       │   └── IWETHSteakVault.vyi\n│       └── Steaking.vy\n└── steaking-server\n    └── src\n        ├── models\n        │   └── steakPoints.js\n        ├── utils\n        │   ├── connectToMongoDb.js\n        │   ├── constants.js\n        │   └── getConfig.js\n        └── main.js\n```\n\n## Compatibilities\n\nThe `Steaking` contract is to be deployed on Ethereum mainnet only.\n\n## Setup\n\nEnsure that you have git, python3, pip3, venv, foundry, node.js, and pnpm installed and configured on your system.\n\n### Setting up the contracts\n\nCd into the `steaking-contracts` folder, create a virtual environment with python3 venv, and activate it,\n\n```bash\ncd steaking-contracts\n\npython3 -m venv .venv\n\nsource .venv/bin/activate\n```\n\nThen install all the requirements from `requirements.txt`,\n\n```bash\npip3 install -r requirements.txt\n```\n\nNow, it's time to setup Foundry,\n\n```bash\nforge install foundry-rs/forge-std --no-commit\nforge install openzeppelin/openzeppelin-contracts --no-commit\nforge test\n```\n\nThat's it! You should be good to go now.\n\n### Setting up the server\n\nThis one is slightly easier. Cd into `steaking-server`,\n\n```bash\ncd steaking-server\n```\n\nContinue by filling in the values in `.env.example`, and renaming the file to `.env`. Then install the node modules,\n\n```bash\npnpm install\npnpm run dev\n```\n\n## Known Issues\n\nThe protocol has not been audited before, and there are no currently known issues.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmgnfy-view%2Fsteaking","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmgnfy-view%2Fsteaking","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmgnfy-view%2Fsteaking/lists"}