Enhance compose experience with comprehensive autocomplete systems
## Major Features Added ### Smart Mention Completion - **Full fediverse handles**: @user@instance.com format instead of incomplete usernames - **Multi-source suggestions**: Search API + followers + following for comprehensive results - **Real-time API integration**: No more hardcoded sample data - **Intelligent filtering**: Prefix-based matching across all user connections ### Comprehensive Emoji System - **5,000+ Unicode emojis**: Complete emoji dataset via python-emoji library - **Keyword-based search**: Find emojis by typing descriptive words (:fire, :heart, :grin) - **Actual emoji insertion**: Inserts Unicode characters (🎃) not shortcodes (🎃) - **Accurate selection**: Fixed bug where wrong emoji was inserted from autocomplete list - **Smart synonyms**: Common aliases for frequently used emojis ### Enhanced ActivityPub Integration - **Account relationships**: get_followers(), get_following(), search_accounts() methods - **Expanded API coverage**: Better integration with fediverse social graph - **Robust error handling**: Graceful fallbacks for API failures ### User Experience Improvements - **Bug fixes**: Resolved autocomplete selection and focus restoration issues - **Documentation**: Updated README with comprehensive feature descriptions - **Dependencies**: Added emoji>=2.0.0 to requirements for Unicode support ## Technical Details - Removed incomplete fallback data in favor of live API integration - Improved completer selection logic to use actually selected items - Enhanced error handling for network requests and API limitations - Updated installation instructions for new emoji library dependency 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
39
README.md
39
README.md
@ -16,23 +16,41 @@ This project was created through "vibe coding" - a collaborative development app
|
||||
- **Timeline Switching**: Easy navigation between Home, Mentions, Local, and Federated timelines
|
||||
- **Desktop Notifications**: Cross-platform notifications for mentions, direct messages, and timeline updates
|
||||
- **Customizable Audio Feedback**: Rich sound pack system with themed audio notifications
|
||||
- **Soundpack Manager**: Secure repository-based soundpack discovery and installation
|
||||
- **Smart Autocomplete**: Mention completion with full fediverse handles (@user@instance.com)
|
||||
- **Comprehensive Emoji Support**: 5,000+ Unicode emojis with keyword search
|
||||
- **Auto-refresh**: Intelligent timeline updates based on user activity
|
||||
- **Clean Interface**: Focused on functionality over visual design
|
||||
- **Keyboard Navigation**: Complete keyboard control with intuitive shortcuts
|
||||
|
||||
## Audio System
|
||||
|
||||
Bifrost includes a sophisticated sound system with:
|
||||
- Customizable sound packs (includes Default sounds)
|
||||
- Audio feedback for all major actions
|
||||
- Per-event volume control
|
||||
- Cross-platform audio support
|
||||
- **Soundpack Manager**: Secure HTTPS-based repository system
|
||||
- **Repository Management**: Add/remove soundpack repositories with validation
|
||||
- **One-click Installation**: Download, validate, and install soundpacks securely
|
||||
- **Customizable Sound Packs**: Themed audio notifications (Default pack included)
|
||||
- **Audio Feedback**: Sound events for all major actions and notifications
|
||||
- **Per-event Volume Control**: Fine-tune individual sound effects
|
||||
- **Cross-platform Audio Support**: Works on Linux, Windows, and macOS
|
||||
|
||||
## Compose Features
|
||||
|
||||
- **Mention Autocomplete**: Type `@` to get suggestions from followers/following/search
|
||||
- **Full Fediverse Handles**: Completes to full format (@user@instance.com)
|
||||
- **Emoji Autocomplete**: Type `:` to search 5,000+ Unicode emojis
|
||||
- **Keyword Search**: Find emojis by typing keywords (`:fire`, `:heart`, `:grin`)
|
||||
- **Real-time Character Count**: Visual feedback with limit warnings
|
||||
- **Content Warnings**: Optional spoiler text support
|
||||
- **Visibility Controls**: Public, Unlisted, Followers-only, or Direct messages
|
||||
|
||||
## Technology Stack
|
||||
|
||||
- **PySide6**: Main GUI framework for proven accessibility
|
||||
- **ActivityPub**: Full federation protocol support
|
||||
- **ActivityPub**: Full federation protocol support
|
||||
- **simpleaudio**: Cross-platform audio with subprocess fallback
|
||||
- **Plyer**: Cross-platform desktop notifications
|
||||
- **emoji**: Comprehensive Unicode emoji library (5,000+ emojis)
|
||||
- **XDG Base Directory**: Standards-compliant configuration storage
|
||||
|
||||
## Keyboard Shortcuts
|
||||
@ -60,9 +78,18 @@ Bifrost includes a sophisticated sound system with:
|
||||
- **Enter**: Expand/collapse threads
|
||||
- **Tab**: Move between interface elements
|
||||
|
||||
### Compose Dialog
|
||||
- **Ctrl+Enter**: Send post
|
||||
- **@**: Trigger mention autocomplete
|
||||
- **:**: Trigger emoji autocomplete
|
||||
- **Arrow Keys**: Navigate autocomplete suggestions
|
||||
- **Enter/Tab**: Accept selected completion
|
||||
- **Escape**: Close autocomplete or cancel compose
|
||||
|
||||
### Application
|
||||
- **Ctrl+,**: Open Settings
|
||||
- **Ctrl+Shift+A**: Add new account
|
||||
- **Ctrl+Alt+S**: Open Soundpack Manager
|
||||
- **Ctrl+Q**: Quit application
|
||||
|
||||
## Installation
|
||||
@ -76,7 +103,7 @@ python bifrost.py
|
||||
|
||||
Or on Arch Linux:
|
||||
```bash
|
||||
sudo pacman -S python-pyside6 python-requests python-simpleaudio
|
||||
sudo pacman -S python-pyside6 python-requests python-simpleaudio python-emoji
|
||||
yay -S python-plyer
|
||||
```
|
||||
|
||||
|
Reference in New Issue
Block a user