A Rust-based Chrome extension and backend system that integrates AtCoder Daily Training (ADT) submissions into AtCoder Problems for unified problem-solving progress visualization.
📥 Install from Chrome Web Store
AtCoder Daily Training (ADT) is a practice contest series on AtCoder using past problems, but its submission data is isolated from AtCoder Problems. This project bridges that gap by automatically synchronizing ADT submission data and displaying it seamlessly within the AtCoder Problems interface.
AtCoder Problems "Table" tab with the extension:
- OFF (default): only native AC submissions are highlighted
- ON: ADT submissions are also highlighted in green
Chrome Extension ──► Backend API ──► DynamoDB
(Rust + WASM) (AWS Lambda) (User AC Data)
│ ▲
│ │
▼ │
AtCoder Problems Batch Processor
Website (AtCoder Scraper)wasm-extension/: Chrome extension (Rust + WebAssembly)backend/: AWS Lambda backend with Rustapi/: REST API for Chrome extensionbatch/: Data crawling and processingddb_client/: DynamoDB operations library (📊 Architecture & Cost Analysis)atcoder_client/: AtCoder web scraping client
- Frontend: Rust + WebAssembly (wasm-bindgen)
- Backend: Rust + AWS Lambda (Axum)
- Data: DynamoDB, AtCoder scraping (reqwest, scraper)
- Tools: cargo-lambda, wasm-pack, Docker
MIT License

