Sign in
Join now
scn-chat
sharedcomputer.network
/
Star
Starred
Star
Something went wrong. Try again.
Fork
0
Eye filled
Watch
Watching
Watch
ATProto-based AI Assistant Chat interface.
Star
Starred
Star
Something went wrong. Try again.
Fork
Eye filled
Watch
Watching
Watch
Overview
Overview
Issues
Issues
1
1
Pulls
Pulls
Pipelines
Pipelines
scn-chat
/
apps
/
web
/
src
/
features
/
sharing
3 folders
·
1 file
at
main
pouriade.com
·
Hold the sharing panel's loading and error in one card
·
4d ago
a640b5f9
components
Hold the sharing panel's loading and error in one card
4d ago
lib
Split the conversation's leaf components and move their forms to the form kit. Thinking is one component, shown by Status and ReplyStream, and BusyBanner returns a Banner for each state. ShareControl's SharingPanel waits for the stored settings rather than remounting the form when they load, so saving keeps the form's state, and a failed load shows its error and Close with no form that could save over the settings. Members are formatted and parsed in sharing/lib/members.ts. ConversationHeader's Title shows the title or a RenameForm, and onRename returns the rename's promise, so Save stays disabled while it saves. The Composer holds its text, model, and effort in the form kit, checks a send before making it, and clears once it succeeds. ModelPicker holds the model and effort selects, ModelNotice the notes about missing models, and useAttachments the uploads, counting them with useIsMutating on a key of the composer's own.
3w ago
pages
Carry line height and tracking in the type scale
4d ago
queries.ts
Group the web app's code by feature. Each folder in src/features (auth, chat-list, conversation, sharing, models, settings, admin) holds that feature's pages, layouts included, components, hooks, lib, and queries, and the routes stay thin, rendering a feature's page. Page files are named after the component they export. The query factories split from src/queries.ts into each feature's queries.ts, leaving staleTime in src/shared, which also holds the API client, errors, search params, and the schema forms that admin and settings share. inheritedModel moves from the models module to the conversation's branch module, so models no longer depends on the conversation. Tests mirror the new tree, and the specs, the architecture doc, and CLAUDE.md name the new paths.
3w ago