{"id":20837329,"url":"https://github.com/idecentralize-finance/erclib","last_synced_at":"2025-07-11T09:34:34.403Z","repository":{"id":44601581,"uuid":"435046930","full_name":"idecentralize-finance/erclib","owner":"idecentralize-finance","description":"An ERC Library for Ethereum and other EVM compatible chains.","archived":false,"fork":false,"pushed_at":"2023-10-12T15:50:43.000Z","size":157,"stargazers_count":3,"open_issues_count":0,"forks_count":5,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-11-01T01:15:34.295Z","etag":null,"topics":["blockchain","cryptocurrency","dapp","ethereum","library","web3"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/idecentralize-finance.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-12-05T01:26:04.000Z","updated_at":"2023-06-18T18:32:26.000Z","dependencies_parsed_at":"2023-01-20T01:47:14.675Z","dependency_job_id":null,"html_url":"https://github.com/idecentralize-finance/erclib","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idecentralize-finance%2Ferclib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idecentralize-finance%2Ferclib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idecentralize-finance%2Ferclib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idecentralize-finance%2Ferclib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/idecentralize-finance","download_url":"https://codeload.github.com/idecentralize-finance/erclib/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225110577,"owners_count":17422411,"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":["blockchain","cryptocurrency","dapp","ethereum","library","web3"],"created_at":"2024-11-18T01:07:02.920Z","updated_at":"2024-11-18T01:07:03.561Z","avatar_url":"https://github.com/idecentralize-finance.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# erclib\n[![Version npm](https://img.shields.io/npm/v/@idecentralize/erclib.svg?logo=npm)](https://www.npmjs.com/package/@idecentralize/erclib)\n[![Node.js CI](https://github.com/idecentralize-finance/erclib/actions/workflows/npm-publish.yml/badge.svg)](https://github.com/idecentralize-finance/erclib/actions/workflows/npm-publish.yml)\n[![Socket Badge](https://socket.dev/api/badge/npm/package/@idecentralize/erclib)](https://socket.dev/npm/package/@idecentralize/erclib)\n\nERC library for blockchain Development\n\n\nIn development. More networks, asset's and features are coming...\n\n## Install and import\n\n```npm install @idecentralize/erclib```\n\n\u003e *address should be checksumed*\n\n## Usage\n\n### Retrieve the chain id from your current provider or configuration\n```javascript\n// using ethersV6\nimport {BrowserProvider} from \"ethers\";\nconst provider = new BrowserProvider(window.ethereum);\nconst chainId = (await PROVIDER.getNetwork()).chainId.toString() \n```\n\n### import your library\n   - ERC20\n   - ERC721 \n   - NETWORK\n   - ROUTER\n   - IPFS_SVG_PATH\n\nExample of the NETWORK object entry\n```javascript\n        id: 137,\n        network: \"Polygon\",\n        chain: \"MATIC\",\n        chainId: 137,\n        type: \"Mainnet\",\n        rpc:\"https://polygon-rpc.com\",\n        explorer: \"https://polygonscan.com/address/\",\n        color: \"#8247e5\",\n        defaultNFT: \"0x5265535c7\n```\n\nShow the chain native currency logo\n```javascript\nimport {IPFS_SVG_PATH, NETWORK} from \"@idecentralize/erclib\";\n\u003cNetwork src={`${IPFS_SVG_PATH}${NETWORK[chainId].chain}.svg`}/\u003e\n   \n```\n\n```javascript \nconst rpc = NETWORK[chainId].rpc\nconst usdc = \"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\";\nconst decimals = ERC20[chainId][usdc].decimals \nconst CToken = ERC20[chainId][usdc].compound\nconst color = ERC20[chainId][usdc].colors\n```\n\n\u003e FORKING :\n\u003e network_id should be the chain id return by the provider.\n\u003e When forking the mainnet using hardhat, the network id is 31337 and we want to use the mainnet asset under network id 1.\n\n\n```javascript\nERC20[network_id === 31337 ? 1 : network_id][usdc].decimals  // output decimals of asset\n```\n\n# Supported Network\n- IPFS\n- Ethereum\n- Polygon\n- BSC\n- Aurora\n- Avanlance\n- xDai\n\n# Supported Testnet \u0026 protocols\n\n- Compound \n- Aave \n- Yearn v2 \n\nPlease report any issues!\n\nTo add some assets, please submit a PR and provide the new IPFS CID.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fidecentralize-finance%2Ferclib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fidecentralize-finance%2Ferclib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fidecentralize-finance%2Ferclib/lists"}