Add embedded web chat client (SPA) #7
Labels
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: sneak/chat#7
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Overview
Build an IRC-style web chat client embedded directly in the Go binary, served at
GET /.Architecture
Backend (C2S HTTP API)
New API endpoints under
/api/v1/:/server/register/me/channels/channels/all/channels/join/channels/{ch}/part/channels/{ch}/members/channels/{ch}/messages?after=cursor)/channels/{ch}/messages/dm/{nick}/messages/dm/{nick}/messages/pollAuth: Bearer token in Authorization header.
Database (migration 003)
users— nick, token, last_seenchannel_members— channel↔user join tablemessages— channel messages + DMs (unified table withis_dmflag)Frontend (Preact SPA)
web/dist/, embedded viaembed.FSUI Design (IRC-style)
<nick>formatFeatures
/join,/part,/msg,/nickEngineering Decisions
is_dmflag — simpler polling query