# John Larkin - Projects

## Active Projects

### Scrollz
- URL: https://scrollz.co
- App Store: https://apps.apple.com/us/app/scrollz-app/id6745718779
- Blog: https://johnlarkin1.github.io/2025/launching-scrollz/
- Stack: Next.js, TypeScript, Supabase, Python, OpenAI, AWS
- Summary: Mobile app for managing newsletters with better search, note-taking, and social features. Also a web platform. 

### Tennis Scorigami
- URL: https://tennis-scorigami.com
- Blog: https://johnlarkin1.github.io/2025/tennis-scorigami/
- Stack: Next.js, TypeScript/React, Tailwind, Neon (PostgreSQL), Python
- Summary: Data visualization project exploring unscored tennis match combinations with 125k+ nodes, analyzing over 750k+ sets, almost ~500k unique sequences, and 57 years of tennis data.
- Collaborators: Sebastian Hoar, Henry Head

### Walk in the Parquet
- URL: https://walkintheparquet.com
- App Store: Available on macOS App Store
- Blog: https://johnlarkin1.github.io/2025/walk-in-the-parquet/
- Stack: Tauri (Rust), Next.js, TypeScript, DuckDB
- Summary: Lightweight desktop app for visualizing and querying Parquet files on macOS

### johnlarkin1.github.io
- URL: https://johnlarkin1.github.io
- GitHub: https://github.com/johnlarkin1/johnlarkin1.github.io
- Stack: Jekyll, static HTML
- Summary: Personal blog and portfolio

## Past Projects

### Teaching a Computer How to Write
- Blog: https://johnlarkin1.github.io/2025/teaching-a-computer-to-write/
- Stack: Python, JAX, LSTMs, MDNs
- Summary: ML exploration teaching a computer to synthesize handwriting using attention mechanisms

### Understanding Muon
- GitHub: https://github.com/johnlarkin1/understanding-muon
- Blog: https://johnlarkin1.github.io/2025/understanding-muon/
- Stack: Python, Manim, Pyodide
- Summary: Deep dive into the Muon optimizer with interactive visualizations and Karpathy's nanochat

### WordHunt Solver
- GitHub: https://github.com/johnlarkin1/word-hunt-solver
- Blog: https://johnlarkin1.github.io/2025/wordhunt-solver/
- Stack: Python, OpenCV, Pytesseract, PyAutoGUI, OpenAI
- Summary: AI-powered solver for iOS WordHunt using computer vision and automation

### Book BrAin
- Blog: https://johnlarkin1.github.io/2024/book-brain/
- Stack: Python, FastAPI, Langchain, Qdrant, React, TypeScript, OpenAI
- Summary: RAG-based system for generating literary essays analyzing themes across books

### Quantum Ion Trap Visualizer
- Live: https://ion-trap-visualizer-prrb.vercel.app/
- Blog: https://johnlarkin1.github.io/2025/quantum-explore/
- Stack: Vite, React, TypeScript
- Summary: Interactive web app visualizing Paul trap physics for quantum computing

### Into the Arena: Hierarchical Agglomerative Clustering
- Blog: https://johnlarkin1.github.io/2024/into-the-arena/
- Stack: Python
- Summary: Ground-up implementation of hierarchical clustering algorithm with visualizations

### GitHub PR Formatter
- Chrome Store: https://chromewebstore.google.com/detail/github-pr-title-formatter/pdjmmincfaficadbaemdifkbaioiihob
- GitHub: https://github.com/johnlarkin1/github-pr-formatter
- Blog: https://johnlarkin1.github.io/2024/github-pr-formatter/
- Stack: JavaScript, Chrome Extension API
- Summary: Chrome Extension that formats GitHub PR unfurls in Slack to show only titles

### DraftKings Betting Analysis & Kelly Criterion
- GitHub: https://github.com/johnlarkin1/draftkings-betting
- Blog: https://johnlarkin1.github.io/2023/chrome-betting-kelly/
- Stack: JavaScript (Chrome Extension), Python, Pandas, Matplotlib, Seaborn
- Summary: Chrome Extension to scrape DraftKings betting history and Python analysis tools using Kelly Criterion for optimal bet sizing

### Porvata and SPAR Integration
- Blog: https://johnlarkin1.github.io/2022/porvata-spar/
- Stack: Python, Shopify API, GraphQL, AWS EC2, Google Pub/Sub
- Summary: Backend integration connecting Porvata (ecommerce furniture) with SPAR assembly services via Shopify webhooks
- Collaborator: Will Jaroszewicz

### Dual Numbers and Automatic Differentiation
- GitHub: https://github.com/johnlarkin1/duals
- Blog: https://johnlarkin1.github.io/2022/dual-numbers/
- Stack: Python
- Summary: Implementation of dual numbers for automatic differentiation, inspired by Matt Zucker's Numerical Methods class at Swarthmore

## Open Source Contributions

### DraftKings Betting Analysis & Kelly Criterion
- GitHub: https://github.com/johnlarkin1/draftkings-bet-tracker
- Summary: Chrome Extension + Python analysis tools for sports betting optimization using Kelly Criterion
