{"id":25015212,"url":"https://github.com/cowprotocol/token-lists","last_synced_at":"2025-04-12T23:13:59.049Z","repository":{"id":61039058,"uuid":"547814359","full_name":"cowprotocol/token-lists","owner":"cowprotocol","description":null,"archived":false,"fork":false,"pushed_at":"2025-04-12T00:05:15.000Z","size":27032,"stargazers_count":7,"open_issues_count":234,"forks_count":20,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-12T23:13:50.618Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://files.cow.fi/tokens/CowSwap.json","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cowprotocol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE.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":"2022-10-08T10:47:10.000Z","updated_at":"2025-04-12T21:52:17.000Z","dependencies_parsed_at":"2023-12-28T09:26:37.786Z","dependency_job_id":"b457eb6f-88c2-4b8b-9664-80b2afba8a82","html_url":"https://github.com/cowprotocol/token-lists","commit_stats":null,"previous_names":[],"tags_count":67,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cowprotocol%2Ftoken-lists","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cowprotocol%2Ftoken-lists/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cowprotocol%2Ftoken-lists/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cowprotocol%2Ftoken-lists/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cowprotocol","download_url":"https://codeload.github.com/cowprotocol/token-lists/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248643006,"owners_count":21138355,"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":[],"created_at":"2025-02-05T08:18:21.216Z","updated_at":"2025-04-12T23:13:59.018Z","avatar_url":"https://github.com/cowprotocol.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Token Lists\n\nCoW Swap default token lists and token image repository\n\n## Managing the tokens\n\nThe process has been automated, and it's now much simpler.\nThe forms are self-explanatory and should contain all the info you need to proceed.\n\n**Notes**:\n\n- Images will be optimized in the background\n- If you want to add a token/image to multiple networks, create one issue per network\n\nHead to the [issues section](https://github.com/cowprotocol/token-lists/issues/new/choose) and pick your action:\n\n### Add or update token\n\nFor adding tokens to CoW Swap's default token list, or to update an existing one, use the [`Add Token` form](https://github.com/cowprotocol/token-lists/issues/new?assignees=\u0026labels=addToken\u0026projects=\u0026template=1-addTokenForm.yml\u0026title=%5BAddToken%5D+%60SYMBOL%60+on+%60NETWORK%60).\n\n### Remove token from the list\n\nUse the [`Remove Token` form](https://github.com/cowprotocol/token-lists/issues/new?assignees=\u0026labels=removeToken\u0026projects=\u0026template=3-removeTokenForm.yml\u0026title=%5BRemoveToken%5D+%60SYMBOL%60+on+%60NETWORK%60).\n\nEven though the token is removed from the default list, its image will be kept.\n\n### Add or update image only\n\nNot all tokens should be in the default token list, but the more token images we have the better UX.\n\nFor this, use the [`Add Image` form](https://github.com/cowprotocol/token-lists/issues/new?assignees=\u0026labels=addImage\u0026projects=\u0026template=2-addImageForm.yml\u0026title=%5BAddImage%5D+%60SYMBOL%60+on+%60NETWORK%60).\n\n### Flow overview\n\n```mermaid\n\nflowchart TD\n    Start(User: Picks form) --\u003e UserFillsForm(User: Fills in form and creates issue)\n    UserFillsForm --\u003e |Form ok| ImageProcessed(\"Automated: [Optional] Optimize image\")\n    ImageProcessed --\u003e PRCreated(Automated: Creates Pull Request)\n    ImageProcessed --\u003e |Failed to process image| AutomatedIssueClosure\n    PRCreated --\u003e TeamReview(Team: Reviews Pull Request)\n    UserFillsForm --\u003e |Form invalid| AutomatedIssueClosure(Automated: Closes issue)\n    TeamReview --\u003e |Request approved| TeamMergesPR(Team: Merges Pull Request)\n    TeamReview --\u003e |Request rejected| TeamClosesPR(Team: Closes Pull Request and Issue)\n\n```\n\n## Development\n\nInstructions for setting up and running the various scripts locally\n\n### Setup\n\n```bash\n# Install dependencies\nyarn\n\n# Generate Coingecko list\nyarn coingecko\n```\n\n### Download images\n\nThere's a script that will fetch all images form the CowSwap list and store them in `src/public/images/\u003cchainId\u003e/\u003caddress\u003e.png`\n\n```bash\nyarn downloadImages\n```\n\n### Generating Auxiliary Token Lists\n\nTo generate updated token lists from Coingecko and Uniswap:\n\n```bash\nyarn generateAuxLists\n```\n\nThis script fetches and processes token data from both Coingecko and Uniswap APIs to create auxiliary token lists. These lists are used to enhance token metadata and support across different networks.\n\n- Coingecko lists contain up to the top 500 tokens per chain, sorted by volume\n- Uniswap lists are a combination of:\n  - Token for given chain already existing in the default Uniswap list\n  - Mainnet tokens, mapped to the target chain, via Coingecko api\n\nThe version and timestamp are bumped according to [token list standard](https://github.com/Uniswap/token-lists?tab=readme-ov-file#semantic-versioning).\n\n#### Required Environment Variables\n\n- `COINGECKO_API_KEY`: Your Coingecko API key (required for API access)\n\n#### Generated Files\n\nThe script generates token list files in `src/public/` for the following networks:\n\n- Ethereum (CoinGecko.1.json)\n- Arbitrum (CoinGecko.42161.json, Uniswap.42161.json)\n- Base (CoinGecko.8453.json, Uniswap.8453.json)\n- Gnosis Chain (CoinGecko.100.json, Uniswap.100.json)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcowprotocol%2Ftoken-lists","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcowprotocol%2Ftoken-lists","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcowprotocol%2Ftoken-lists/lists"}