Monorepo for Aesthetic.Computer aesthetic.computer
at main 79 lines 2.2 kB view raw view rendered
1# Keeps Wallet 2 3A Tezos wallet for managing your aesthetic.computer keeps (NFTs). 4 5## Quick Start 6 7```bash 8cd wallet/extension 9npm install 10npm run build:icons # Generate icons 11npm run build # Build for Chrome 12``` 13 14Then load in Chrome: 151. Open `chrome://extensions` 162. Enable "Developer mode" (top right toggle) 173. Click "Load unpacked" 184. Select `wallet/extension/dist` 19 20## Two Modes 21 22### 1. Integrated (Logged-in Users) 23Users logged into prompt.ac get wallet functionality built-in: 24- Encrypted keys stored server-side tied to their account 25- No extension needed 26- Seamless keeps minting, buying, selling 27- Keys derived from account + password 28 29### 2. Chrome Extension (Standalone) 30For power users and cross-dApp usage: 31- Self-custody keys (you control the seed phrase) 32- Works on any Tezos dApp 33- Portfolio view of all your keeps 34- Clean aesthetic.computer UI 35 36## Directory Structure 37 38``` 39wallet/ 40├── README.md # This file 41├── llm.md # AI assistant context 42├── extension/ # Chrome extension 43│ ├── manifest.json 44│ ├── background.js # Service worker (key ops) 45│ ├── content.js # Page injection 46│ ├── popup/ # Extension popup UI 47│ └── lib/ # Shared crypto/tezos libs 48└── integrated/ # Server-side wallet for logged-in users 49 └── (future) 50``` 51 52## Tech Stack 53 54- **Tezos SDK:** @taquito/taquito 55- **Crypto:** libsodium (ed25519 keys), bip39 (seed phrases) 56- **Storage:** chrome.storage.local (extension), server-side encrypted (integrated) 57- **NFT API:** TzKT for keeps metadata & history 58 59## Security Model 60 61### Extension 62- Seed phrase encrypted with user password 63- Keys never leave extension context 64- Page requests signing via message passing 65- User confirms each transaction in popup 66 67### Integrated (logged-in) 68- Keys encrypted with password-derived key 69- Stored in user's account data 70- Server never sees plaintext keys 71- Decryption happens client-side only 72 73## Keeps Features 74 75- View your keeps collection 76- Mint new keeps 77- Transfer keeps 78- List keeps for sale (objkt.com integration) 79- View keep history & provenance