Blockchain-verified proof of packaging for Specter Hardware Wallets
- Upload or take a photo of Tamper-Evident Bags
- AI (Google Gemini) extracts Bag IDs, firmware version, and packer info
- Creates Bitcoin blockchain timestamp via OpenTimestamps
- Stores proof in Google Cloud Storage
- Frontend: Vanilla JS + Tailwind CSS (Hostinger)
- Backend: Node.js/Express (Google Cloud Run)
- AI: Google Gemini 2.5 Flash
- Storage: Google Cloud Storage
- Blockchain: OpenTimestamps (Bitcoin)
| Page | URL | Description |
|---|---|---|
| Main | / |
Public list of all proofs |
| Add | /add/ |
Create new proofs (auth required) |
| Admin | /add/admin/ |
Delete proofs (auth required) |
# Install
npm install
# Build CSS
npm run build:css
# Run backend locally
export GEMINI_API_KEY="your-key"
export AUTH_TOKEN="your-token"
node index.jsPush to main branch auto-deploys:
- Frontend → Hostinger
- Backend → Google Cloud Run
See CLAUDE.md for detailed documentation.