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]>
24 lines
1.3 KiB
Markdown
24 lines
1.3 KiB
Markdown
# 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 <dev@t5de.dev>"; 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.
|
|
|