Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Suite Applications

Individual app documentation for General Bots Suite

Each application in the Suite has its own dedicated documentation with:

  • Flow diagrams (SVG with light/dark theme support)
  • Interface layouts
  • HTMX integration patterns
  • API endpoints
  • CSS classes
  • JavaScript handlers
  • Keyboard shortcuts

Core Applications

AppDescriptionDocumentation
🖥️ SuiteFull desktop interfacesuite.md
💬 ChatAI-powered conversation assistantchat.md
📁 DriveCloud file storage and managementdrive.md
TasksTo-do lists with prioritiestasks.md
MailEmail clientmail.md
📅 CalendarScheduling and eventscalendar.md
🎥 MeetVideo conferencingmeet.md
🎬 PlayerMedia viewerplayer.md

Productivity Applications

AppDescriptionDocumentation
📝 PaperAI-assisted document writingpaper.md
🔍 ResearchAI-powered search and discoveryresearch.md
📊 AnalyticsReports and dashboardsanalytics.md

Developer Tools

AppDescriptionDocumentation
🎨 DesignerVisual dialog builderdesigner.md
📚 SourcesPrompts, templates, and modelssources.md
🛡️ ComplianceSecurity scannercompliance.md

System Components

ComponentDescriptionLocation
🔐 AuthAuthentication viewsui/suite/auth/
👤 AttendantAttendant interfaceui/suite/attendant/
🧩 PartialsReusable HTML fragmentsui/suite/partials/
🔧 ToolsDeveloper utilitiesui/suite/tools/
📈 MonitoringSystem monitoring dashboardui/suite/monitoring/

App Launcher

The Suite features a Google-style app launcher accessible from the header:

App Launcher

Accessing Apps

  1. Click the grid icon (⋮⋮⋮) in the top-right corner
  2. Select an app from the dropdown menu
  3. App loads in the main content area

Keyboard Shortcuts

ShortcutApp
Alt+1Chat
Alt+2Drive
Alt+3Tasks
Alt+4Mail
Alt+5Calendar
Alt+6Meet

Architecture Overview

All Suite apps follow the same patterns:

HTMX Loading

Apps are loaded lazily when selected:

<a href="#chat" 
   data-section="chat"
   hx-get="/ui/suite/chat/chat.html" 
   hx-target="#main-content"
   hx-swap="innerHTML">
    Chat
</a>

Component Structure

Each app is a self-contained HTML fragment:

app-name/
├── app-name.html    # Main component
├── app-name.css     # Styles (optional)
└── app-name.js      # JavaScript (optional)

API Integration

Apps communicate with the backend via REST APIs:

<div hx-get="/api/v1/app/data"
     hx-trigger="load"
     hx-swap="innerHTML">
    Loading...
</div>

Real-Time Updates

WebSocket support for live data:

<div hx-ext="ws" ws-connect="/ws">
    <!-- Real-time content -->
</div>

Creating Custom Apps

To add a new app to the Suite:

  1. Create the component in ui/suite/your-app/
  2. Add navigation entry in index.html
  3. Define API endpoints in your Rust backend
  4. Document the app in this folder

Template

<!-- ui/suite/your-app/your-app.html -->
<div class="your-app-container" id="your-app">
    <header class="your-app-header">
        <h2>Your App</h2>
    </header>
    
    <main class="your-app-content"
          hx-get="/api/v1/your-app/data"
          hx-trigger="load"
          hx-swap="innerHTML">
        <div class="htmx-indicator">Loading...</div>
    </main>
</div>

<style>
.your-app-container {
    display: flex;
    flex-direction: column;
    height: 100%;
}
</style>

See Also