Projects
Software, robots, websites, and 3D prints. Here is what each one is, what I used, and what I learned building it.
You take a photo of a Pokémon card and the app tells you which card it is and what it's worth. It matches the photo against a catalog of 20,444 cards using CLIP image embeddings, a FAISS search index, and OCR to read the card text.
The hard part was finding the card in a messy phone photo. I tested 99 real phone scans and scored each detection strategy by whether recognition got the right card. That raised detection coverage from 31% to 63% with zero regressions. It taught me to measure every change instead of guessing.
- Python
- FastAPI
- React PWA
- CLIP
- FAISS
- OCR
99 real phone scans · 100% precision when it commits
Live site Code on GitHubJarvis is my own home hub: a wall kiosk, a touchscreen, and a phone app that show my goals, daily plan, calendar, and a radar of my projects. It runs on Raspberry Pi 5 boards and talks to my phone over Tailscale.
I made it local-first, so the AI runs on local Ollama models and it costs nothing to run. The first stages (Stage 0 and 1A) are deployed and I use them every day. Building it in small stages kept it working the whole time.
- Raspberry Pi 5
- Python
- FastAPI
- Svelte
- Ollama
- Tailscale
Stage 0 + 1A deployed · in daily use
Link or photo of JarvisI'm helping revive a FIRST Robotics Competition team at Tri-County RVTHS for the 2027 rookie season. Part of that is the team website, which I built by hand in plain HTML and CSS.
Starting a team from scratch means a lot more than the robot: recruiting, finding mentors and sponsors, and explaining who we are. Writing the site by hand taught me how to keep one stylesheet organized across many pages.
- HTML
- CSS
- Git
I built a desktop app that scanned currency charts for short-term trading signals. Then I backtested it honestly on data it had never seen.
The result: it had no real edge. It called short-term direction right about 46% of the time, and it needed 55.6% just to break even. So I turned it into a research and journal tool instead. The lesson I took away: measure before you believe.
- Electron
- Node.js
- JavaScript
Out-of-sample: ~46% correct vs 55.6% needed
Link to ForexAI write-up or repoHexaFlow is the project website for my school's NASA HUNCH nanolab team. It explains the project and includes an interactive 3D model you can spin around in the browser.
The hard part was making a 3D model feel like part of the page instead of something bolted on. Add what you learned building it
- Astro
- Tailwind
- Three.js
I design 3D models in SolidWorks and print them on a Bambu X2D and an A1 with an AMS. I'm working on model sets to publish on MakerWorld.
Right now I'm fit-testing parts for SKÅDIS pegboards and Gridfinity bins, where a fraction of a millimeter decides whether a part clicks in or doesn't.
- SolidWorks
- Bambu X2D
- Bambu A1 + AMS
- 3D printing
Paelyx Systems is a defense-tech website I'm building. It's early stage.
One line on what you've learned or what's next
- Tech used