CI / test (push) Failing after 42s
People sign up on the website and link IMVU accounts by putting a code in the account's tagline, which the hub reads from IMVU's public API (the most recent proof wins; link caps per person). IMVU's age verification or Access Pass make an account adult. T5DE's proxy signs in with a device code and keeps a WebSocket open, reporting the IMVU account in use and the community products it wears; /online shows those who opted in. Moderators get a console: who's online, people, link caps, bans, roles, and the audit log. Tests run the website and API against an embedded Postgres and a fake IMVU API. Co-Authored-By: Claude Opus 5.5 <[email protected]>
1.3 KiB
1.3 KiB
t5de-hub
T5DE's hub (see docs/design.md, a draft under discussion with the user). Related repositories, usually checked out
beside this one: t5de (patches), t5de-proxy (local proxy), later t5de-catalog and t5de-api.
Rules
- Never commit IMVU's code or captured traffic with account data. Our own declarations of IMVU's protocols and notes in our own words are fine.
- Test with a throwaway IMVU account, never a real one.
- Commits: author "dhkatz [email protected]"; never the user's real name or email.
- The user prioritizes backend performance (Go), and wants moderation centered on the hub's website.
- IMVU session keys never leave the user's machine; the hub never asks for them.
Notes
- Go, net/http, html/template (server-rendered; htmx 2.0.4 vendored in
internal/web/static, CSP without inline scripts or styles), pgx with plain SQL (internal/store, migrations embedded), coder/websocket. - Dev:
go run ./cmd/t5de-hub -dev(embedded Postgres on port 54321). Tests use port 54339 and a database each. - The look: IMVU Classic's dialog palette (dark grays, gold buttons with black text), like T5DE's setup. Copy is short and plain.
- Calls to IMVU (
internal/imvu, its public user API) are rare and rate-limited: linking and age re-checks only.