{"id":13680395,"url":"https://github.com/ora-io/zkToken","last_synced_at":"2025-04-29T23:31:23.501Z","repository":{"id":203497315,"uuid":"709741399","full_name":"ora-io/zkToken","owner":"ora-io","description":"Trustless Monitor with zkGraph for ERC20","archived":false,"fork":false,"pushed_at":"2023-12-29T02:41:27.000Z","size":314,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-11-11T23:37:24.928Z","etag":null,"topics":["zkgraph-zkoracle-defi"],"latest_commit_sha":null,"homepage":"https://www.hyperoracle.io","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ora-io.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-10-25T09:59:40.000Z","updated_at":"2023-12-27T02:34:31.000Z","dependencies_parsed_at":"2023-12-29T03:39:25.031Z","dependency_job_id":"fd798ccd-066d-4b81-a42a-b2a7e49bf0a4","html_url":"https://github.com/ora-io/zkToken","commit_stats":null,"previous_names":["liriu/zktoken","hyperoracle/zktoken","ora-io/zktoken"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ora-io%2FzkToken","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ora-io%2FzkToken/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ora-io%2FzkToken/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ora-io%2FzkToken/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ora-io","download_url":"https://codeload.github.com/ora-io/zkToken/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251600026,"owners_count":21615624,"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":["zkgraph-zkoracle-defi"],"created_at":"2024-08-02T13:01:16.651Z","updated_at":"2025-04-29T23:31:18.468Z","avatar_url":"https://github.com/ora-io.png","language":"JavaScript","funding_links":[],"categories":["🔮 ZK Oracle Ecosystem"],"sub_categories":["DeFi \u0026 DEX \u0026 MEV"],"readme":"# zkToken (WIP)\n\nzkToken is a ERC20 Monitor based on [zkGraph](https://www.hyperoracle.io). It used to monitor whether there is any selling or pumping behavior in the whale account, and then issue an alert signal.\n\n# Getting Start\nThrough the following steps, locally test zkToken.\n\n### 1. Prepare environment\n```sh\nnpm install\nvim config.js # Fill in the private key and endpoint in the configuration file.\n```\nPlease fill in the last configuration item \"whale\" in the configs as the whale account you want to monitor.\n\n### 2. Obtain the balance of the whale account.\n\n```sh\nnpm run whale\n```\n\n### 3. Compile \u0026\u0026 Run at the specified block height.\n\n```sh\nnpm run compile-local \u0026\u0026 npm run exec-local -- 18370576\n```\n\nAt this point, zkgraph returns a boolean value indicating whether the user can be liquidated.\n\nYou can modify the block height `18370576` in the above command to any value for further testing.\n\n# Project Layout\n\n### zkToken project is broken down into three sections:\n- src - The core logic of zkToken.\n- builds - Compiled WASM Binary file.\n- static - whale account state file and abi json for scripts.\n- APIs - Some zkgraph-api like compiling\\execution\\deploy etc.\n- scripts - scripts for obtaining hard-coded whale status.\n\n### core logic of zkToken\n\n1. Fetch Tokens `Transfer` events on the mainnet.\n\nThe default tokens to be followed include compound v2 underlyings tokens.\n\nYou can modify static/tokens.ts to customize the tokens you want to follow.\n\n2. Determine the market sentiment corresponding to Transfer.\n\nIf the amount of token transferred out is greater than half of the balance, it is considered a bearish signal with selling implications.\n\nIf the amount of token transferred is greater than half of the balance, it is considered a bullish signal with the meaning of price increase.\n\nOther situations are considered neutral signal.\n\n3. Combined result bytes\n\nMarket signals are defined as Enum Signal and will eventually be converted into an array of Bytes with i32.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fora-io%2FzkToken","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fora-io%2FzkToken","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fora-io%2FzkToken/lists"}