Heads up: This app is open as a local file (file:///). Photo uploads and API calls may be blocked by the browser. For full functionality, host this file on a real URL — drag it into Netlify Drop (app.netlify.com/drop) or run python3 -m http.server 8080 locally and open http://localhost:8080.

Vehicle ID

Scan, photograph, or type the VIN

No VIN captured yet

Ownership

Who owns this vehicle and what is its status?

Location & Photos

Where is the vehicle stored, and add photos.

Add Photo

Tap "Add Photo" to take photos or select from your camera roll. Add as many as needed.

Review

Confirm before submitting to Monday.com

Checked In

Scan VIN Barcode

Align the barcode within the frame

Settings

Monday.com

Board ID: Open your Vehicle Registry board — the number in the URL is the Board ID.

🔒 The Monday.com API token is stored securely in your Cloudflare Worker — workers using this app never see it.

Column IDs: After saving your Board ID and Worker URL, tap "Fetch Column IDs" to map fields.

Column ID Mapping

Paste the column ID for each field (from the fetch above):

VIN Lookup Proxy URL

The NHTSA VIN API cannot be called directly from a browser (CORS restriction). You need a small proxy — either a Cloudflare Worker or a PHP file on your server.

Both files are included in your download. See the README for setup instructions.

Cloudflare Worker (recommended): Free, takes 2 min. Go to dash.cloudflare.com → Workers & Pages → Create Worker → paste the worker file → Deploy → copy the URL here.

PHP: Upload nhtsa-proxy.php to any PHP host you already have and paste that URL here.

VIN Photo OCR (Anthropic API)

Used only to read VIN text from photos you take in-app. Photos are sent directly to Anthropic's API and not stored.

Get your key at console.anthropic.com → API Keys.

⚠️ Security note: This key is stored in your browser's local storage on this device only. Do not use this app on a shared public device.