Draggable Chat Companion & Inline Markdown Formatting
Release v0.7.0 - Draggable Chat Companion & Inline Markdown Formatting 🚀
Welcome to version 0.7.0 of DomoDomo! This release focuses on upgrading the local Domo Companion (Floating AI Assistant) user experience with full-viewport boundary dragging, rich inline markdown formatting, text contrast enhancements, and environment-aware online locks for public deployments like Vercel.
🚀 New Features & Enhancements
1. Full-Screen Draggable Chat Dialog
- Viewport Draggability: The entire chat companion dialog window is now draggable on desktop. You can click and drag the dialog from any non-interactive section (such as margins, headers, or spacing between message bubbles).
- Interactive Element Bypassing: The drag handler is automatically bypassed when clicking on buttons, text inputs, textareas, or scrollbar tracks.
- Mobile Gesture Division: On mobile/touch screens, dragging is permitted via the dialog header or borders, while touch swipe gestures in scrollable zones (like the messages list or prompts) execute standard scroll behaviors instead of moving the widget.
2. Rich Markdown Chat Formatting
- Local LLM responses now render with clean, formatted Markdown components instead of unformatted asterisks and raw tags:
- Code Blocks: Multiline code formats inside a distinct container with language tags, horizontal scrollbars, and copyable text (
select-text). - Inline Code: Single-ticks render within a distinct green monospaced tag (
#7cdba3). - Lists: Supporting indented bullet points (
-/*) and numbered lists (1.). - Headers: Styled header sizes (
#,##,###) are scaled cleanly to fit within the chat viewport boundaries. - Blockquotes: Prefixed quotes (
>) render inside left-bordered italic blocks.
- Code Blocks: Multiline code formats inside a distinct container with language tags, horizontal scrollbars, and copyable text (
3. Online Production Settings Lock
- Automatic Environment Detection: The settings page now detects if the dashboard is running on public online hostings (e.g. Vercel deployments like
*.vercel.appordomodomo.site). - Notice Banner: Renders an alert notification banner at the top of the settings page, advising users that local server configurations are locked in the hosted web version.
- Control Lockout: Inputs, sliders, checkboxes, dropdowns, and configurations save buttons are safely disabled and visually styled with lower opacity.
🛠️ Bug Fixes & UX Improvements
- User Response Contrast Fix: Removed conflicting styles from the user response bubble. User messages are now rendered as raw wrap-preserved text, allowing theme overrides to dynamically apply
color: var(--background) !important, producing high-contrast readable text on both dark and light modes. - Bottom Drag Barrier Removed: Expanded vertical dragging limits from
window.innerHeight - 70up towindow.innerHeight + 64when open, allowing the chat screen bottom to touch the viewport border. - Snapping Boundary Checks: Closing the dialog automatically snaps coordinates back to closed bounds (maximum
window.innerHeight - 70), ensuring the floating companion icon button remains visible and never slides offscreen. - API Reference Update: Appended the technical guide specifications for the Domo Companion inside both the
Local AI & Cognitive Flowspecifications and theTools ReferenceAI category.
📥 Local Installation & Run
To run DomoDomo locally with fully configurable offline models:
# Clone the repository
git clone https://github.com/darknecrocities/DomoDomo---All-in-one-Tool.git
cd DomoDomo---All-in-one-Tool
# Install dependencies
npm install
# Start the local dashboard and background server
npm run dev