{"id":13503697,"url":"https://github.com/paradigmxyz/artemis","last_synced_at":"2026-01-24T04:37:49.364Z","repository":{"id":161696605,"uuid":"632643862","full_name":"paradigmxyz/artemis","owner":"paradigmxyz","description":"A simple, modular, and fast framework for writing MEV bots in Rust.","archived":false,"fork":false,"pushed_at":"2024-03-05T03:15:09.000Z","size":2464,"stargazers_count":2583,"open_issues_count":35,"forks_count":505,"subscribers_count":50,"default_branch":"main","last_synced_at":"2025-05-15T03:03:30.745Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","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/paradigmxyz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE","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":"2023-04-25T20:47:17.000Z","updated_at":"2025-05-13T02:22:26.000Z","dependencies_parsed_at":"2024-11-01T00:31:15.149Z","dependency_job_id":"aea8a3b3-41d7-48f0-a064-18ec329823cf","html_url":"https://github.com/paradigmxyz/artemis","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/paradigmxyz/artemis","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paradigmxyz%2Fartemis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paradigmxyz%2Fartemis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paradigmxyz%2Fartemis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paradigmxyz%2Fartemis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/paradigmxyz","download_url":"https://codeload.github.com/paradigmxyz/artemis/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paradigmxyz%2Fartemis/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28711749,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-23T23:51:44.727Z","status":"online","status_checked_at":"2026-01-24T02:00:06.909Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":"2024-07-31T23:00:43.579Z","updated_at":"2026-01-24T04:37:49.351Z","avatar_url":"https://github.com/paradigmxyz.png","language":"Rust","funding_links":[],"categories":["MEV \u0026 Arbitrage","Rust","Applications","Repos","PBS - Proposer-Builder Separation"],"sub_categories":["Solana Trading","Blockchain","Cryptocurrencies"],"readme":"\n![](./assets/artemis.png)\n\n\n[![CI status](https://github.com/paradigmxyz/reth/workflows/ci/badge.svg)][gh-ci]\n[![Telegram Chat][tg-badge]][tg-url]\n\n[gh-ci]: https://github.com/paradigmxyz/reth/actions/workflows/rust.yml\n[tg-badge]: https://img.shields.io/badge/chat-telegram-blue\n\n## What is Artemis?\n\nArtemis is a framework for writing MEV bots in Rust. It's designed to be simple, modular, and fast. \n\nAt its core, Artemis is architected as an event processing pipeline. The library is made up of three main components: \n\n1. *Collectors*: *Collectors* take in external events (such as pending txs, new blocks, marketplace orders, etc. ) and turn them into an internal *event* representation. \n2. *Strategies*: *Strategies* contain the core logic required for each MEV opportunity. They take in *events* as inputs, and compute whether any opportunities are available (for example, a strategy might listen to a stream of marketplace orders to see if there are any cross-exchange arbs). *Strategies* produce *actions*.\n3. *Executors*: *Executors* process *actions*, and are responsible for executing them in different domains (for example, submitting txs, posting off-chain orders, etc.).\n\n## Strategies \n\nThe following strategies have been implemented: \n\n- [Opensea/Sudoswap NFT Arbitrage](/crates/strategies/opensea-sudo-arb/): A strategy implementing atomic, cross-market NFT arbitrage between Seaport and Sudoswap.\n\n## Build, Test and Run\n\nFirst, make sure the following are installed: \n1. [Anvil](https://github.com/foundry-rs/foundry/tree/master/crates/anvil#installing-from-source)\n\nIn order to build, first clone the github repo: \n\n```sh\ngit clone https://github.com/paradigmxyz/artemis\ncd artemis\n```\n\nNext, run tests with cargo: \n\n```sh\ncargo test --all\n```\n\nIn order to run the opensea sudoswap arbitrage strategy, you can run the following command: \n\n```sh\ncargo run -- --wss \u003cINFURA_OR_ALCHEMY_KEY\u003e --opensea-api-key \u003cOPENSEA_API_KEY\u003e --private-key \u003cPRIVATE_KEY\u003e --arb-contract-address \u003cARB_CONTRACT_ADDRESS\u003e --bid-percentage \u003cBID_PERCENTAGE\u003e\n```\n\nwhere `ARB_CONTRACT_ADDRESS` is the address to which you deploy the [arb contract](/crates/strategies/opensea-sudo-arb/contracts/src/SudoOpenseaArb.sol).\n\n\n## Acknowledgements\n\n- [subway](https://github.com/libevm/subway)\n- [subway-rs](https://github.com/refcell/subway-rs)\n- [cfmms-rs](https://github.com/0xKitsune/cfmms-rs)\n- [rusty-sando](https://github.com/mouseless-eth/rusty-sando)\n- [bundle-generator](https://github.com/Alcibiades-Capital/mev_bundle_generator/blob/master/Cargo.toml)\n- [ethers-rs](https://github.com/gakonst/ethers-rs)\n- [ethers-flashbots](https://github.com/onbjerg/ethers-flashbots)\n\n\n\n[tg-url]: https://t.me/artemis_devs\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparadigmxyz%2Fartemis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fparadigmxyz%2Fartemis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparadigmxyz%2Fartemis/lists"}