Prophecy
Built this during my one semester at Georgia Tech. It pulls prediction markets from Polymarket and Kalshi into one place, spots arbitrage between platforms, and tracks your portfolio. Basically a personal trading terminal at a very basic level. Mostly an excuse to explore building something real with Claude Code and understand the software development process from start to finish. Learned a ton, but never released it outside of my own use.
Built with Rust
Unified Markets
Polymarket and Kalshi markets unified into a single view. I built custom Rust SDKs for each platform's API and wired up WebSockets for real-time price streaming. Also implemented search functionality and proper category placement so you can actually find what you're looking for across both platforms.
Arbitrage Detection
Pick specific markets or let the system auto-detect matching ones across both platforms, then watch for price spreads in real time. Fees are factored in so you see actual profit potential before committing to anything.
Portfolio
A consolidated view of your positions across both Polymarket and Kalshi. See your overall profit and loss, available cash, current open orders, and full position history all in one place.
Key takeaways
- · Learned Rust from scratch and got comfortable writing production code in a new language
- · Built SDKs for two live trading APIs (Polymarket CLOB and Kalshi), dealing with auth flows, rate limits, and WebSocket connections
- · Figured out how to structure a real codebase with shared libraries, a CLI, and a desktop app
- · Implemented caching layers and async data pipelines to keep everything responsive
- · Shipped frontend work across a native macOS app and a web dashboard
- · Used Claude Code heavily throughout, which completely changed how I think about building software
- · Managed a project end to end, from architecture to deployment
Building this showed me what's actually possible with the tools available today. It was a big reason I decided to leave grad school and go build at an early stage startup instead.