Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Home
Chuk Chat Overview
Getting Started
User Guide
FAQ
Concepts and Terms
Privacy and Security
Billing and Subscription
Troubleshooting
How Chuk Chat Works
Architecture
AI Providers and Services
Backend and API
All Products
Chuk Development
Open Web App
Downloads
Status
Technical Docs
Support
Special Pages
Recent Changes
Random Page
Chuk Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Chuk Chat Architecture
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
= Chuk Chat Architecture = This page explains the system architecture at a level that is useful for curious users, product people, and technical readers. == Four-layer architecture == Chuk Chat is organized in four main layers: # '''Presentation layer''': pages, chat UI, sidebars, settings screens. # '''Service layer''': business logic (chat handling, model config, sync, encryption helpers). # '''Data layer''': models and persisted chat data. # '''Platform layer''': platform-specific behavior for mobile, desktop, and web. == Why this architecture is used == * Easier maintenance and safer updates * Better testing and reliability * Clear separation between UI, logic, and storage == Platform structure == * '''Desktop''' (Windows, macOS, Linux): multi-panel layout with sidebar plus chat workspace. * '''Mobile''' (Android): single-panel chat with slide-out navigation and mobile input UX. * '''Web''': desktop-style layout with browser-safe platform stubs where needed. == State and sync model == * UI state (input focus, scroll position) stays local to screens. * App state (chat content, selected model, preferences) is managed by services. * Persisted state (chat history, preferences) is stored and synced, with encrypted chat content. == Streaming architecture == Chuk Chat supports both: * HTTP SSE streaming (POST /v1/ai/chat) * WebSocket streaming (/v1/ai/chat/ws) This gives good browser compatibility plus stable mobile streaming behavior. == Security architecture highlights == * End-to-end encrypted chat storage * Certificate pinning on supported native platforms * Zero-data-retention provider filtering at the routing layer == Related pages == * [[How Chuk Chat Works]] * [[Chuk Chat AI Providers and Services]] * [[Chuk Chat Backend and API]] [[Category:Chuk Chat]] [[Category:Architecture]]
Summary:
Please note that all contributions to Chuk Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Chuk Wiki:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Chuk Chat Architecture
Add topic