Sign in
Join now
scn-chat
sharedcomputer.network
/
Star
Starred
Star
5
Something went wrong. Try again.
Fork
0
Eye filled
Watch
Watching
Watch
ATProto-based AI Assistant Chat interface.
Star
Starred
Star
5
Something went wrong. Try again.
Fork
0
Eye filled
Watch
Watching
Watch
Overview
Overview
Issues
Issues
1
1
Pulls
Pulls
Pipelines
Pipelines
scn-chat
/
apps
/
web
/
src
/
features
/
conversation
/
components
28 files
at
main
pouriade.com
·
Mark Jump to's layer as leaving with a boolean
·
6d ago
99770edf
AttachmentChips.tsx
Share close buttons as CloseButton
6d ago
BranchComposer.tsx
Close an edit through one onStopEditing
6d ago
BranchView.tsx
A pending reply is drawn by one module, PendingReply.tsx: its waiting or live header, its stream, and the lines about a wait, a busy provider, or a lost stream, until its finished record replaces it. MessageView uses it while a record is pending, and it follows the conversation the FollowedConversation context names, which ConversationView provides, so MessageView and BranchView no longer take pending and live slots and BranchRow no longer checks the status. The stream's part views get the pending record rather than a made-up one, and the model's name comes from MessageView alone. LiveAuthor.tsx, ReplyStream.tsx, and StreamingReply.tsx are gone. A conversation test streams a reply, then has its record arrive, and checks the time it thought carries over and its text shows once.
2w ago
composer-parts.tsx
Snap spacing to whole and half steps
6d ago
Composer.tsx
Say why the composer can't send from one record
6d ago
ComposerFrame.tsx
Move the composer's model and effort under the card
1w ago
ConversationFrame.tsx
A conversation on its way shows a few paragraphs of text lines, spaced as a reply's are, in place of one turn's bubble, name, and paragraph, which read as a chat with one message rather than messages loading. MessagesSkeleton replaces TurnSkeleton, and the shared page shows it under its title too. The page's frame, which the server sends, now holds the conversation header's row with a line for its title, so the lines start where they will once the conversation loads, rather than under the sidebar's toggle on a narrow screen. The header's row and its title on its way live in HeaderFrame.tsx, which the header and the frame share, so the frame stays free of the header's panels and menus. The web UI spec describes it.
2w ago
ConversationHeader.tsx
Split the chat header into title, tools, and panel
6d ago
ConversationSkeleton.tsx
Guard the design system's scales in the theme test
6d ago
ConversationView.tsx
Regenerate a reply as before through one helper
6d ago
DeletePanel.tsx
Share typography as Text and Title
6d ago
EditComposer.tsx
Move the composer's model and effort under the card
1w ago
EmptyConversation.tsx
Share typography as Text and Title
6d ago
HeaderFrame.tsx
Snap spacing to whole and half steps
6d ago
InstructionsPanel.tsx
Share typography as Text and Title
6d ago
message-actions.tsx
Regenerate a reply as before through one helper
6d ago
MessageView.tsx
Layer colors into scales, roles, and components
6d ago
MoreActions.tsx
Snap spacing to whole and half steps
6d ago
NewConversation.tsx
The composer is a set of parts sharing its draft through Composer.Provider, which ReplyComposer and EditComposer each compose.
1w ago
PartsView.tsx
Gather file runs before drawing a message's parts
6d ago
PendingReply.tsx
Snap spacing to whole and half steps
6d ago
PromptStack.tsx
Mark Jump to's layer as leaving with a boolean
6d ago
RecordDetails.tsx
Snap spacing to whole and half steps
6d ago
ReplyComposer.tsx
Cross-fade Send and Stop, and fade the jump button
1w ago
SiblingPicker.tsx
Put corners on one radius ladder
6d ago
Status.tsx
The web app's message records are typed as the lexicon's MessageRecord, and a conversation's info as InfoRecord, from the local copy, which holds only records the server validated, through BranchMessage to the message, status, details, part, and tool views, so their reads need no casts. src/shared/message.ts holds what a status means, isPending and isFinished, which counts a status another client wrote that this app doesn't know as neither, along with a message's parts, whether it is encrypted, and who wrote it, in place of the checks written out in the message view, the message actions, the chat, the reply follower, and tool status. Tests build records with messageRecord in tests/helpers/records.ts, and the status rules are tested once.
2w ago
StoreUnavailable.tsx
Put corners on one radius ladder
6d ago
TagsPanel.tsx
Share typography as Text and Title
6d ago