Architecture
- all ties to Unique Selling Points
Core Elements
Element | Core Technology | Effort | Risk | Worry Score |
---|---|---|---|---|
UI | Svelte | *** | * | 3 |
Model | JS / Rust | ** | *** | 6 |
Conversational UI | JS / (AI?) | **** | * | 20 |
Persistence | JS | * | ** | 3 |
UI
Two elements dealing with 2 different aspects of human comms:
- output: people are visual, like patterns
- input: people like talking
Conversational UI
Graphical UI
- 2D vs 3D
UI models
- Input UI > Input Parser > Journey > Undo/Redo > Model > UI Filter > Output UI
Controller
- A third element I have not really thought about.
- Model is the enabler
- UI is the IO
- Controller is the journey - super important
- dependent on target market
Model Database
- internals as per Data
- storage
- document database
- searchable on keys only
- but actually blobs ..?
- models themselves delegated to binary storage
Implementation Suggestion
User Database
- linked to model via simply GUIDS
- pretty conventional CRM
Link with SaaS authentication/authorisation service?
Other Necessary Functionality
- some of this is eventaul
- usage tracking (only numbers, not what)
- embedding
- i18n
- server-side computation 4. estimated cost (initially for user info only, later for charging)
Problems
Calculation Cost
- generate synchronously
- initially for user convenience only
- later crucial for charging
Firebase
- offers much of what we need
- but lock-in and cost ..?
- perhaps make a clear distinction between ‘core’ and ‘support’ functionality
- core: crown jewels, vendor neutral
- support: tied to a vendor (SaaS0 etc. but with clear exit strategies from Day 1