{"id":22873960,"url":"https://github.com/angleprotocol/borrow-lptokens-contracts","last_synced_at":"2025-03-31T12:41:38.816Z","repository":{"id":110073303,"uuid":"566278874","full_name":"AngleProtocol/borrow-lpTokens-contracts","owner":"AngleProtocol","description":"Borrowing module adapted to yield-bearing tokens receiving rewards","archived":false,"fork":false,"pushed_at":"2024-06-24T09:49:43.000Z","size":1303,"stargazers_count":0,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-06T18:46:41.794Z","etag":null,"topics":["ethereum-contract","foundry","solidity"],"latest_commit_sha":null,"homepage":"","language":"Solidity","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AngleProtocol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2022-11-15T10:40:59.000Z","updated_at":"2024-06-19T07:37:20.000Z","dependencies_parsed_at":"2024-06-10T14:57:52.425Z","dependency_job_id":"1732b5cf-da2c-4b79-9752-a981aff96dcb","html_url":"https://github.com/AngleProtocol/borrow-lpTokens-contracts","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":"AngleProtocol/boilerplate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngleProtocol%2Fborrow-lpTokens-contracts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngleProtocol%2Fborrow-lpTokens-contracts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngleProtocol%2Fborrow-lpTokens-contracts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngleProtocol%2Fborrow-lpTokens-contracts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AngleProtocol","download_url":"https://codeload.github.com/AngleProtocol/borrow-lpTokens-contracts/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246472531,"owners_count":20783224,"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":["ethereum-contract","foundry","solidity"],"created_at":"2024-12-13T14:32:03.919Z","updated_at":"2025-03-31T12:41:38.795Z","avatar_url":"https://github.com/AngleProtocol.png","language":"Solidity","funding_links":[],"categories":[],"sub_categories":[],"readme":"# \u003cimg src=\"logo.svg\" alt=\"Angle Borrowing Module\" height=\"40px\"\u003e Angle Borrowing Module - Productive Assets\n\n[![CI](https://github.com/AngleProtocol/borrow-stakedToken/workflows/CI/badge.svg)](https://github.com/AngleProtocol/borrow-stakedToken/actions?query=workflow%3ACI)\n\n## Documentation\n\nThis repository contains the contracts of the Angle Protocol Borrowing module adapted to productive assets (e.g. staked tokens that can receive rewards).\n\n### Further Information\n\nFor more details about what Angle or the Borrowing module are, you can check Angle documentation [here](https://docs.angle.money) or the contracts for the Borrowing module of the protocol using vanilla collateral assets [here](https://github.com/AngleProtocol/borrow-contracts).\n\nOther Angle-related smart contracts can be found in the following repositories:\n\n- [Angle Core module contracts](https://github.com/AngleProtocol/angle-core)\n- [Angle Strategies](https://github.com/AngleProtocol/angle-strategies)\n- [Angle Router contracts](https://github.com/AngleProtocol/angle-router)\n- [Angle Algorithmic Market Operations](https://github.com/AngleProtocol/angle-amo)\n\nOtherwise, for more info about the protocol, check out [this portal](https://linktr.ee/angleprotocol) of resources.\n\n## Starting\n\nThis repo contains the contracts and tests associated to this extension of the Borrowing module. Follow the steps described below if you want to be able to use it by yourself.\n\nIt only works with Foundry.\n\n### Install packages\n\nYou can install all dependencies by running\n\n```bash\nyarn\nforge i\n```\n\n### Install submodules\n\nBefore being able to compile the contracts of the repo, you need to install the repository's submodules.\n\n```bash\ngit submodule init\ngit submodule update --remote\n```\n\n### Create `.env` file\n\nIn order to interact with non local networks, you must create an `.env` that has:\n\n- `PRIVATE_KEY`\n- `MNEMONIC`\n- network key (eg. `ALCHEMY_NETWORK_KEY`)\n- `ETHERSCAN_API_KEY`\n\nFor additional keys, you can check the `.env.example` file.\n\nWarning: always keep your confidential information safe.\n\n## Headers\n\nTo automatically create headers, follow: \u003chttps://github.com/Picodes/headers\u003e\n\n## Foundry Installation\n\n```bash\ncurl -L https://foundry.paradigm.xyz | bash\n\nsource /root/.zshrc\n# or, if you're under bash: source /root/.bashrc\n\nfoundryup\n```\n\nTo install the standard library:\n\n```bash\nforge install foundry-rs/forge-std\n```\n\nTo update libraries:\n\n```bash\nforge update\n```\n\n### Foundry on Docker 🐳\n\n**If you don’t want to install Rust and Foundry on your computer, you can use Docker**\nImage is available here [ghcr.io/foundry-rs/foundry](http://ghcr.io/foundry-rs/foundry).\n\n```bash\ndocker pull ghcr.io/foundry-rs/foundry\ndocker tag ghcr.io/foundry-rs/foundry:latest foundry:latest\n```\n\nTo run the container:\n\n```bash\ndocker run -it --rm -v $(pwd):/app -w /app foundry sh\n```\n\nThen you are inside the container and can run Foundry’s commands.\n\n### Tests\n\nYou can run tests as follows:\n\n```bash\nforge test -vvvv --watch\nforge test -vvvv --match-path test/foundry/vaultManager/VaultManagerListing.t.sol\nforge test -vvvv --match-test \"testAbc*\"\n```\n\nYou can also list tests:\n\n```bash\nforge test --list\nforge test --list --json --match-test \"testXXX*\"\n```\n\n### Deploying\n\nThere is an example script in the `scripts/foundry` folder. Then you can run:\n\n```bash\nyarn foundry:deploy \u003cFILE_NAME\u003e --rpc-url \u003cNETWORK_NAME\u003e\n```\n\n### Coverage\n\nWe recommend the use of this [vscode extension](ryanluker.vscode-coverage-gutters).\n\n```bash\nyarn foundry:coverage\n```\n\n### Gas report\n\n```bash\nyarn foundry:gas\n```\n\n## Slither\n\n```bash\npip3 install slither-analyzer\npip3 install solc-select\nsolc-select install 0.8.11\nsolc-select use 0.8.11\nslither .\n```\n\n## Media\n\nDon't hesitate to reach out on [Twitter](https://twitter.com/AngleProtocol) 🐦\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangleprotocol%2Fborrow-lptokens-contracts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fangleprotocol%2Fborrow-lptokens-contracts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangleprotocol%2Fborrow-lptokens-contracts/lists"}