Monorepo for Aesthetic.Computer
aesthetic.computer
1# 🌐 Webmeister
2
3Browser automation and development tools for Aesthetic Computer subsites.
4
5## Structure
6
7```
8webmeister/
9├── lib/ # Shared utilities
10│ ├── external-chrome.mjs # Chrome on host machine via SSH + CDP
11│ └── web.mjs # VS Code Simple Browser CDP wrapper
12├── sites/ # Site-specific dev tools
13│ └── kidlisp.com/
14│ └── dev.mjs # KidLisp.com development server
15└── *.mjs # General utilities
16```
17
18## External Chrome Development
19
20For testing with browser extensions (Temple wallet, etc.), use external Chrome:
21
22### Setup (One-time)
23
241. Create a Chrome profile called "AestheticDev" with your extensions:
25 - Temple Wallet
26 - Any other dev tools
27
282. The profile will be used automatically when starting Chrome via webmeister.
29
30### Usage
31
32```bash
33# Open kidlisp.com in external Chrome and watch console
34node webmeister/sites/kidlisp.com/dev.mjs watch
35
36# Just open the page
37node webmeister/sites/kidlisp.com/dev.mjs open
38
39# Reload the page
40node webmeister/sites/kidlisp.com/dev.mjs reload
41
42# Check wallet state
43node webmeister/sites/kidlisp.com/dev.mjs wallet
44
45# Evaluate JS
46node webmeister/sites/kidlisp.com/dev.mjs eval "window.beacon"
47```
48
49### How it works
50
511. SSH into the Mac host (`jas@host.docker.internal`)
522. Start Chrome with `--remote-debugging-port=9222` and the AestheticDev profile
533. Connect via CDP WebSocket through the SSH tunnel
544. Control and monitor the page
55
56## VS Code Simple Browser
57
58For quick testing without extensions, use VS Code's Simple Browser:
59
60```bash
61# Watch VS Code Simple Browser CDP
62node webmeister/kidlisp-dev.mjs
63```
64
65## Adding New Sites
66
67Create a new directory under `sites/` with a `dev.mjs`:
68
69```bash
70mkdir -p webmeister/sites/my-site.com
71# Copy and modify from kidlisp.com/dev.mjs
72```
73
74## Machine Configuration
75
76SSH host is read from `aesthetic-computer-vault/machines.json`:
77- `jeffrey-macbook`: `jas@host.docker.internal`
78- `mac-mini`: `jas@192.168.12.27`