Design Philosophy
Core principles that guide Fidus Design System and make it unique
Introduction
Fidus Design System is built on a foundation of principles that prioritize user privacy, context-awareness, and adaptive interfaces. Unlike traditional design systems that prescribe fixed layouts and predetermined flows, Fidus embraces an AI-Driven UI paradigm where the interface adapts to user needs in real-time.
This philosophy influences every aspect of the design system, from component design to interaction patterns to documentation style.
AI-Driven UI Paradigm
The cornerstone of Fidus Design System is the AI-Driven UI Paradigm. This represents a fundamental shift from traditional interface design.
Core Concept
The UI is NOT predetermined. Instead:
- The LLM analyzes user context (time, location, history, intent)
- The LLM decides which UI form to render (chat, form, widget, wizard)
- The same user query can produce different UIs in different contexts
Traditional UI vs AI-Driven UI
Traditional Approach
- Fixed screens (Calendar Screen, Finance Screen)
- Predetermined routes and navigation
- Static dashboard with permanent widgets
- Hardcoded "if X then Y" logic
- Auto-hiding notifications
- One-size-fits-all forms
AI-Driven Approach
- Contextual widgets and cards
- Context-based rendering
- Dynamic Opportunity Surface
- LLM-driven "based on context" logic
- User-dismissed content
- Adaptive forms (wizard, quick-entry, chat)
What This Means for Design
When designing for Fidus:
- Design components, not screens
- Think in terms of context and relevance
- Show examples of possible presentations
- Allow for multiple rendering modes
- Let the LLM decide what to show when
Privacy-First Design
Privacy is not an afterthought in Fidus. It is a core design principle that influences every decision we make.
Data Stays Local
Whenever possible, data is processed and stored locally on the user's device. Only when absolutely necessary is data sent to servers, and always with encryption.
Encryption by Default
All sensitive data is encrypted at rest and in transit. Users do not need to enable encryption; it is the default state.
Granular Control
Users have fine-grained control over what data is collected, how it is used, and when it is shared. Privacy settings are prominent and easy to understand.
Transparent Processing
Users can see what data the AI is using to make decisions. Processing is visible and explainable, not hidden in a black box.
No Dark Patterns
We never use design tricks to coerce users into sharing more data. Consent is explicit, informed, and easy to withdraw.
Opportunity Surface Concept
Instead of a traditional dashboard with fixed widgets, Fidus presents an Opportunity Surface where relevant cards appear dynamically based on user context.
How It Works
- Context Analysis: The LLM analyzes current time, location, calendar, recent activities, and user preferences
- Opportunity Scoring: Potential opportunities are scored based on relevance and urgency
- Dynamic Rendering: High-scoring opportunities are rendered as cards on the Opportunity Surface
- User Control: Users can dismiss cards, snooze them, or take action
- Learning: The system learns from user interactions to improve future recommendations
Example Opportunities
The Opportunity Surface might show cards like:
- Upcoming appointment with suggested preparation tasks
- Budget alert when approaching spending limit
- Travel recommendation based on calendar gap and weather
- Bill payment reminder three days before due date
- Recipe suggestion based on ingredients expiring soon
Key Difference
Unlike traditional notifications that auto-dismiss or widgets that are always visible, Opportunity Cards remain until the user explicitly dismisses them. This ensures users never miss important information while maintaining full control.
User Control Principles
User control is paramount in Fidus. We believe users should always be in charge of their experience.
Explicit Actions
Every action requires explicit user consent. No automatic changes to user data or settings without permission.
Always Dismissible
Every card, widget, or overlay can be dismissed by the user. We never force content to stay visible or use attention-grabbing animations.
No Auto-Hide
We never use timers to automatically hide important information. Users decide when they are done with content.
Undo Actions
Whenever possible, actions can be undone. This reduces anxiety and encourages exploration.
Clear Communication
We use clear, plain language to explain what actions will do and what consequences they have. No confusing jargon or technical terms.
Context-Aware Components
Components in Fidus are designed to understand and adapt to their context.
What is Context?
Context includes:
- Time of day, day of week, season
- User's current location
- Current activity and calendar state
- Recent user actions and history
- User expertise level
- Device type and capabilities
Adaptive Behavior Example
A budget widget might adapt its presentation based on context:
- Morning planning session: Show detailed breakdown with recommendations for the day ahead
- During work day: Show simple progress bar with current spending
- Near budget limit: Show prominent warning with actionable suggestions
- End of month: Show summary and comparison to previous months
- On mobile: Show compact view optimized for quick glance
Design Implication
When designing components, think about different contexts where they might appear and how they should adapt. Design for flexibility rather than prescribing a single presentation mode.
Examples Over Rules
Because Fidus uses AI to determine UI presentation, we cannot prescribe exact rules for when components appear. Instead, we provide examples of possible presentations.
Language Matters
Avoid
- "Always shows weather in the morning"
- "Calendar widget appears on dashboard"
- "Budget alert triggers at 80%"
- "Form automatically switches to wizard"
Use
- "Might show weather during morning routine"
- "Calendar widget could appear when relevant"
- "Budget alert may appear when nearing limit"
- "Form might adapt to wizard for beginners"
Documentation Style
In documentation, show concrete examples of when a component might appear, but avoid stating absolute rules:
Example: "The travel planning card might appear on the Opportunity Surface when:
- The user has a gap in their calendar longer than 3 days
- Weather conditions are favorable at potential destinations
- The user has shown interest in travel in the past
- Budget allows for discretionary spending
Note: The LLM weighs these factors and makes a contextual decision. This is not a deterministic rule.
Implementation Guidelines
These principles translate into specific implementation practices:
1. Component Design
- Create reusable components, not page-specific layouts
- Support multiple variants and presentation modes
- Accept context as props and adapt rendering
- Include dismissal controls
- Make all states visible and accessible
2. State Management
- Store user preferences and dismissals
- Track context changes and trigger re-evaluation
- Maintain user control over all state changes
- Provide undo/redo for state modifications
3. AI Integration
- Pass rich context to LLM for decision-making
- Render based on LLM response, not hardcoded logic
- Handle multiple possible UI forms gracefully
- Log decisions for learning and improvement
4. Privacy Implementation
- Process data locally whenever possible
- Encrypt sensitive data before storage or transmission
- Provide clear privacy controls in UI
- Allow users to view and delete their data
Further Reading
Questions or Feedback?
These principles are living guidelines that evolve as we learn. If you have questions, suggestions, or want to discuss the philosophy, we welcome your input.
Join the conversation →