Neil Gilani

Neil Gilani

I'm a student at Bellarmine College Prep in San Jose. I build software, mostly computer vision and machine learning, and I try to ship it as something people can actually use.

I'm the technical cofounder on two startups, I write vision code for FRC Team 254, and I build a lot of side projects at hackathons.

San Jose, CA github.com/NeilGilani
Selected work

Vitals

2026 · Startup
Technical cofounder

Vitals live detection view: two cattle outlined in cyan with track IDs, next to a scan report comparing feeding, activity and lying time against a 14-day baseline.

Cameras that spot sick livestock days before a person would.

Cattle hide illness when someone walks past, so a stockman checking the pen sees animals that look fine. Vitals watches when nobody is there. It detects and re-identifies each animal, tracks how long it feeds, moves and lies down, and compares that to the same animal's own 14-day baseline. When several signals drop together, it raises an alert.

I'm working on a solar-powered version that runs the model on the camera itself, with a target of about half a watt on average.

Python · YOLO · OpenCV · on-device inference

SENDIT

2026 · Game

A skier dropping down a narrow chute toward a fjord at 121 km/h, with a 'Perfect 2.3s air' trick callout and score multiplier.
A skier carving down a wide powder bowl at dusk on the Kitsune Peak map, with alpenglow on the ridges.

A ski and snowboard game that runs in the browser.

There are eight mountains, each with its own named trails and lighting, from a Japanese powder bowl at dusk to a Norwegian run that ends at the sea. The physics handle carving and skidding, jumps, spins, flips, grabs and rail grinds, and a crash turns the rider into a ragdoll. Tricks feed combos, XP and unlockable gear.

I build it with a friend. We split big features across parallel Claude sessions, one per area in its own git worktree, and one integration session merges them and runs the tests.

JavaScript · Three.js · Vite

AGENCY

2026 · Hackathon → nonprofit

AGENCY setup screen asking how you'd like to control it: eye gaze, head pointer, blink switch, key switch, or mouse and keys.

A Mac home screen and accessibility layer for people who can only move their eyes, such as people with ALS.

You pick a goal with a few selections by gaze, blink or a single switch. An AI agent carries out the steps across apps, and anything consequential, like placing an order or sending a message, needs your approval first. That rule is enforced in code: each approval is tied to a hash of the exact action and can only be used once. It started at a UCSC AI hackathon, and I'm now working on launching it as a nonprofit.

I built it by running nine Claude Code agents in parallel, each owning one part of the system, with one acting as lead and merging pull requests.

Electron · Swift · Python / FastAPI · Gemini · Chrome extension

Reality Compiler

2026 · Hackathon

A paper sketch of a sales dashboard, captured by webcam, next to the live dashboard generated from it.
A stock tracker app called Tickr, generated from a drawing, shown on a phone frame with its screens and backend listed.

Hold a paper sketch up to your webcam and get a working app.

It reads the drawing with OpenCV, Tesseract and a vision model, turns it into a typed description of the interface, and renders it live. You can drag, resize and retype anything on the canvas. "Build real app" goes further and produces a multi-screen Flutter app with login, a backend and live data that you can download.

React · TypeScript · FastAPI · OpenCV · Tesseract · Gemini · Flutter

Brixel

2026 · Side project

Brixel landing page: upload a photo to get a brick model with instructions.

Upload a photo of anything and get a brick model of it, with step-by-step instructions and a parts list.

Both AI models (depth estimation and subject segmentation) run in the visitor's browser, so the site costs nothing to run, needs no account, and has no build limit. The models shape the subject into a relief, then a brick engine places bricks, slopes and plates, checks that every piece is connected, and splits the build into steps.

2,796parts in the 1:400 Eiffel Tower showcase
164build steps
< 0.5%off the real tower's floor heights
JavaScript · three.js · transformers.js · Cloudflare Pages

Hebb

2026 · Startup / research
Cofounder

Memory for AI models that keeps learning after deployment, without retraining.

Hebb attaches a writable memory to a model whose weights stay frozen. New knowledge is written into memory pages by gradient descent on those pages alone, and the model reads them back through attention at every layer. I wrote a paper on the main finding: what makes the model retain old skills is how memory is allocated, not how it's written.

1.000 → 0.025retention when allocation is removed, while immediate accuracy stays at 1.000
−31%commands needed by a coding agent using Hebb's hooks, in my tests
0changes to the base model's weights
Python · PyTorch · Docker

SpotCheck

2026 · Side project

Five SpotCheck phone screens: welcome, photo tips, analysis progress, a result recommending a dermatologist visit, and an emergency result.

Photograph a skin, eye, mouth or nail concern and find out how soon to get it seen, and by whom.

It's a triage tool, not a diagnosis, and it never tells anyone they're fine. Fixed safety rules sit on top of the model and flag emergencies, like chemicals in the eye, no matter what the model says.

Flutter · Claude
More projects
About me
I'm 14
I'm at Bellarmine College Prep, where I also do Speech and Debate.
My dog is named Hilo
My laptop's username is named after him.
I don't like paying for servers
When the free AI tiers ran out on Brixel, I moved the models into the browser instead of paying. It now costs $0 to run.
I'm learning Java from scratch
I started at the very beginning so I actually understand it. The goal is to be able to solve any LeetCode problem.
AI agents keep my notes
I keep a second brain in Obsidian that AI agents maintain, so every project decision has a record of why.
I judge things by whether they run
A demo that only works on fake input doesn't count. I test on a real camera, real data and real devices.
Contact

I'm open to internships, collaborations and people who want to try what I'm building.