Something went wrong. Try again.
Monorepo for Aesthetic.Computer aesthetic.computer
Something went wrong. Try again.
Markdown
Keeps: Current State Analysis (December 2025) #
Status: Mainnet Staging Active
Contract: KT1JEVyKjsMLts63e4CNaMUywWTPgeQ41Smi (v3)
Last Updated: December 31, 2025
Recent Changes (December 31, 2025) 🆕 #
V3 Contract Deployed #
Client-Side Wallet Signing for Metadata Updates #
Token Owner Rebake Support #
Metadata Sync Permissions #
Environment Fixes #
Recent Changes (December 30, 2025) 🆕 #
Light/Dark Theme Support #
Button Palette Thematization #
All button color schemes now use centralized palette entries with dark/light variants:
| Button | Purpose |
|---|---|
btnLink |
IPFS links (HTML, THUMBNAIL) |
btnObjkt |
View on objkt marketplace |
btnRebake |
Regenerate cached bundle |
btnSync |
Sync chain metadata |
btnWallet |
Wallet shortcut |
btnContract |
Contract address link |
btnTx |
Transaction hash link |
btnPreview |
Preview piece (pulsing) |
btnConfirm |
Keep It action (pulsing) |
btnLogin |
Login prompt (pulsing) |
btnCached |
Cached media indicator |
btnNet |
Network toggle |
btnView |
View on objkt after mint |
btnToll |
Fee display |
btnStaging |
Staging contract link |
btnRetry |
Retry after error |
Pulsing buttons (btnPreview, btnConfirm, btnLogin) use normalBase property for animation calculations while hover and disabled come directly from palette.
Fee Reading from Contract #
UI Polish #
What's Already Implemented ✅ #
Authentication & Authorization (keep-mint.mjs) #
Wallet Enforcement (keep-mint.mjs) #
Minting Flow (keep.mjs UI + keep-mint.mjs) #
Rebake Flow (keep.mjs + keep-mint.mjs) #
Metadata Update (keep-update.mjs) #
Database Tracking (keep-confirm.mjs) #
What's Actually Next 🎯 #
✅ COMPLETED (December 31, 2025) #
🚀 READY FOR PRODUCTION #
Before moving from staging to production contract:
📋 Missing Features from Plan #
🎨 kidlisp.com Integration #
🔧 Developer Experience #
Environment Variables (Already Configured) #
KEEPS_NETWORK=mainnet
KEEPS_CONTRACT=KT1EcsqR69BHekYF5mDQquxrvNg5HhPFx6NM
OVEN_URL=https://oven.aesthetic.computer
# Secrets in MongoDB 'secrets' collection:
# pinata: { apiKey, apiSecret, jwt }
# tezos-kidlisp: { address, publicKey, privateKey }
Files Reference #
| File | Purpose |
|---|---|
system/netlify/functions/keep-mint.mjs |
Streaming SSE mint endpoint |
system/netlify/functions/keep-update.mjs |
On-chain metadata update (prepare mode for client signing) |
system/netlify/functions/keep-update-confirm.mjs |
Record successful metadata update (NEW) |
system/netlify/functions/keep-confirm.mjs |
Record successful mint |
system/public/aesthetic.computer/disks/keep.mjs |
Keep UI/flow (~3000 lines) |
system/public/aesthetic.computer/lib/keep/tezos-wallet.mjs |
Beacon wallet |
tezos/keeps.mjs |
CLI tool for admin ops |