Mobile Strategy
MQTT Explorer’s mobile support focuses on browser mode rather than native mobile apps:Browser-First Approach
Access via mobile browser - no app store required
Responsive Design
Adaptive layouts for different screen sizes
Touch-Friendly
Larger tap targets and touch gestures
PWA Support
Install as Progressive Web App for app-like experience
Mobile support targets modern smartphones like Google Pixel 6 (412x915 viewport) as a reference device.
Getting Started on Mobile
Deploy Server Mode
MQTT Explorer must be running in server/browser mode to access from mobile devices.See the Environment Variables guide for configuration options.
Access from Mobile Browser
Open your mobile browser and navigate to:
- Local network:
http://[server-ip]:3000 - Public deployment:
https://mqtt-explorer.example.com
Mobile-Optimized Features
Responsive Layout
MQTT Explorer automatically adapts its interface for mobile screens:Topic Tree Panel
Topic Tree Panel
Mobile Optimizations:
- Touch-friendly tap targets (minimum 44x44px)
- Improved scrolling performance
- Collapsible/expandable nodes with larger touch areas
- Swipe gestures for navigation
- Tap to expand/collapse topic nodes
- Long press for context menu (if available)
- Swipe to scroll through long topic lists
Sidebar
Sidebar
Chart Panel
Chart Panel
Mobile Optimizations:
- Stacks vertically instead of side-by-side
- Optimized chart controls for touch
- Pinch-to-zoom support
- Larger legend items
- Scroll vertically to view multiple charts
- Tap legend items to toggle series
- Pinch to zoom into time ranges
Split Panes
Split Panes
Mobile Optimizations:
- Adjusted default positions for mobile viewports
- Larger drag handles for touch
- Snap points for common layouts
- Optimized minimum pane sizes
- Drag dividers to resize panels
- Double-tap divider to reset to default
- Hide panels by dragging to edge
Connection Management
Connection Dialog
Connection Dialog
Mobile Optimizations:
- Full-screen on small devices
- Larger form fields and buttons
- Numeric keyboard for port input
- Touch-friendly toggles and switches
- Save connection profiles for quick access
- Use descriptive connection names
- Pre-configure credentials to avoid typing on mobile
Mobile Connection Selector
Mobile Connection Selector
The mobile connection selector provides a streamlined experience:
- Quick profile switching
- Large, tap-friendly profile cards
- Swipe to manage profiles
- Recent connections at top
Publishing Messages
Publish Interface
Publish Interface
Mobile Optimizations:
- Auto-complete for topic paths
- Recent topics suggestion
- Touch-optimized text editors
- Copy/paste support
- Use templates for frequent messages
- Copy topics from tree instead of typing
- Use QoS selector with larger touch targets
Core Mobile Workflows
Viewing Topics
Browse Topic Tree
Tap topic nodes to expand and explore the hierarchy. The tree automatically scrolls to show expanded content.
View Message Details
Tap a topic to view its current message value and metadata in the detail panel.
Publishing Messages
Enter Message
Type your message payload. Use the appropriate keyboard (text, numeric) based on content.
Searching and Filtering
Progressive Web App (PWA)
Installing as PWA
For an app-like experience, install MQTT Explorer as a PWA:iOS Safari
iOS Safari
Benefits:
- App icon on home screen
- Fullscreen mode (no browser UI)
- Faster access
Android Chrome
Android Chrome
Install Prompt
Chrome will show an “Install app” banner. Tap “Install”.Or manually: Menu (⋮) → “Add to Home screen” or “Install app”.
- App icon on home screen
- Fullscreen mode
- Fast app switching
- Splash screen
PWA features depend on your server configuration. Service workers and manifest files may need to be configured.
Viewport Configuration
MQTT Explorer includes proper viewport meta tags for optimal mobile rendering:- Correct scaling on mobile devices
- No unwanted zoom on input focus
- Proper device width detection
- Responsive layout activation
Feature Prioritization
Core Features (Optimized for Mobile)
✅ Fully Functional:- View topics and message tree
- Read current message values
- Basic navigation and browsing
- Search and filter topics
- Simple message publishing
- Connection management
Advanced Features (Available but Less Emphasized)
⚠️ Available but may require desktop for best experience:- Advanced connection settings (use smaller text/collapsed sections)
- Extensive keyboard shortcuts (limited on mobile)
- Multi-panel simultaneous viewing (panels stack on mobile)
- Complex chart interactions
For advanced configuration and complex workflows, desktop mode provides the optimal experience. Mobile mode focuses on monitoring and basic interactions.
Performance Considerations
Large Topic Trees
Mobile devices have limited resources compared to desktops:Lazy Loading
Topics load incrementally to maintain smooth scrolling
Virtualization
Only visible topics are rendered in the DOM
Throttled Updates
Message updates are throttled to prevent overwhelming the UI
Selective Subscriptions
Subscribe to specific topics instead of
# to reduce load- Use specific subscriptions instead of wildcards
- Limit QoS levels where possible
- Clear old messages periodically
- Close unused connections
Network Considerations
Mobile devices often have unreliable connections:Connection Retry
Automatic reconnection on network loss
Offline Handling
Graceful degradation when offline
Bandwidth Optimization
Optimized bundle size for faster loading
Compression
Compressed assets for mobile networks
Testing on Mobile
Desktop Browser Emulation
Test mobile layout during development:Real Device Testing
Test on actual mobile devices:Connect from Mobile
Navigate to
http://[server-ip]:3000 on your mobile device (must be on same network).Metrics for Success
A successful mobile experience provides: ✅ Usability:- All core features accessible on mobile
- No horizontal scrolling required
- Touch targets minimum 44x44px
- Readable text without zooming
- Smooth scrolling and interactions
- Quick load times (under 3s on 3G)
- Responsive touch feedback
- Works on iOS Safari and Android Chrome
- Supports common mobile screen sizes
- Graceful degradation on older devices
Known Limitations
Troubleshooting
Can't access from mobile device
Can't access from mobile device
Causes:
- Server not accessible on network
- Firewall blocking connections
- Wrong IP address or port
- Verify mobile device on same network as server
- Check firewall allows incoming connections on port 3000
- Use server’s local IP (not 127.0.0.1 or localhost)
- Test with curl from mobile:
curl http://[server-ip]:3000
Layout doesn't adapt to mobile
Layout doesn't adapt to mobile
Causes:
- Browser doesn’t support responsive features
- JavaScript disabled
- Outdated browser version
- Update mobile browser to latest version
- Try a different browser (Chrome or Safari)
- Enable JavaScript
- Clear browser cache
Touch interactions not working
Touch interactions not working
Causes:
- JavaScript errors
- Browser compatibility issues
- Touch events not supported
- Check browser console for errors (if possible)
- Update browser to latest version
- Try desktop mode as fallback
- Report issue with device/browser details
Performance is slow
Performance is slow
Causes:
- Large topic tree
- Too many subscriptions
- High message rate
- Older mobile device
- Use specific topic subscriptions instead of
# - Reduce message retention
- Clear old data
- Close unused connections
- Consider desktop mode for heavy workloads
Can't type in input fields
Can't type in input fields
Causes:
- Browser autofill interfering
- Keyboard not appearing
- Focus issues
- Tap input field again
- Disable browser autofill
- Try a different keyboard app
- Refresh page
Future Enhancements
Planned mobile improvements:Phase 2: Quick Wins
Phase 2: Quick Wins
- Adjust default split pane positions for mobile
- Increase touch target sizes in critical areas
- Improve sidebar collapse behavior
- Optimize tree node spacing for touch
Phase 3: Enhanced Experience
Phase 3: Enhanced Experience
- Full PWA manifest for “add to home screen”
- Swipe gestures for navigation
- Mobile-optimized connection dialog
- Mobile-specific keyboards (numeric for ports)
- Offline support with service workers
Platform-Specific Optimizations
Platform-Specific Optimizations
- iOS: Safe area handling, notch support
- Android: Material Design guidelines
- Dark mode improvements
- Haptic feedback
Best Practices
Pre-Configure Connections
Save connection profiles on desktop to avoid typing on mobile.
Use Auto-Connect
Configure auto-connect with environment variables for instant access.
Specific Subscriptions
Subscribe to specific topics instead of
# for better performance.Landscape Mode
Rotate to landscape for more screen space on small devices.
Install as PWA
Install to home screen for faster access and fullscreen experience.
Stable Connection
Use Wi-Fi instead of cellular data for better reliability.
Next Steps
Environment Variables
Configure auto-connect and server settings for optimal mobile experience.
Connection Setup
Learn how to create and manage connection profiles.
Authentication
Secure your mobile access with proper authentication.
GitHub Issues
Report mobile-specific issues or request features.