- Smart splash screen with server selection and theme
- Server history: Saves the last 3 servers used
- Adaptive theme: Dark/light mode with saved preferences
- Optimized interface: Reduced webview dependence with native improvements
- Enhanced security: contextIsolation, secured preload
- Smart cache: Reduced network requests
- Native notifications: Complete system integration
- Automatic permissions: Mic/camera configured
- Complete macOS menu with native Cmd+ shortcuts
- Hidden title bar with vibrancy effect
- Transparent window integrated with the system
- Automatic system theme (follows Dark/Light mode)
- Menu bar icon: Quick access and context menu
- Touch Bar: Quick buttons (New message, Refresh, Settings)
- Native behavior: Close = hide, reactivate from Dock
- System shortcuts: Cmd+Q, Cmd+W, Cmd+M, Cmd+R, Cmd+,
- Native macOS notifications with sound and badges
- Native scrollbars with macOS style
- System fonts (-apple-system) for perfect rendering
- Smooth animations optimized for macOS
# Install dependencies
npm install
# Launch in development mode
npm start
# Generate macOS app (.app folder)
npm run package-mac
# Generate DMG file (Mac installer)
npx appdmg dmg.json liberchat-macos.dmgliberchat-darwin-x64/liberchat.app(macOS Application)liberchat-macos.dmg(DMG Installer)
- Download
liberchat-macos.dmg - Double-click to mount the disk image
- Drag the Liberchat icon into the Applications folder
- Launch from Launchpad or Applications
- Copy
liberchat-darwin-x64/liberchat.appto/Applications/
- Server selection: Choose your Liberchat server
- Theme: Click on 🌙/☀️ to toggle between light/dark
- History: Recent servers will appear automatically
- Menu bar: Click on the Liberchat icon in the menu bar
- Touch Bar: Use the quick buttons (MacBook Pro)
- Shortcuts: Cmd+, for preferences, Cmd+R to refresh
- Click in URL field → Shows recent servers
- Selection → Automatically fills the field
- Auto-save of the last 3 servers
- Toggle button at the top right of the splash screen
- Auto-save of the choice
- System theme: Automatically follows macOS preferences
Cmd+Q: Quit the applicationCmd+W: Close window (hides app)Cmd+M: Minimize to DockCmd+R: Reload pageCmd+,: Open preferencesCmd+H: Hide application
- Electron ^22.x
- electron-packager
- appdmg
- Tray: Menu bar icon
- TouchBar: MacBook Pro support
- nativeTheme: System theme
- systemPreferences: System integration
- Menu: Native macOS menus
liberchat-macos/
├── main.js # Main Electron process
├── preload.js # Secured preload script
├── index.html # Splash screen with selector
├── assets/ # Icons and resources
│ └── icons/
│ ├── liberchat.icns
│ └── liberchat.png
├── package.json # npm configuration
└── README-macos.md # Documentation
- Isolated processes: Maximum security
- Secured IPC: Inter-process communication
- Local cache: localStorage for history
- Platform detection: macOS conditional features
Major new features:
- Complete macOS menu with Cmd+ shortcuts
- Menu bar icon with context menu
- Touch Bar support for MacBook Pro
- Vibrancy effect and transparent window
- Automatic system theme (Dark/Light mode)
- Splash screen with theme selector (🌙/☀️)
- History of last 3 used servers
- Smart dropdown under the URL field
- Automatic save of preferences
- Reduced webview dependence
- Smart cache for requests
- Native macOS notifications
- Native system fonts and scrollbars
- Native behavior (close = hide)
- Secured architecture with isolated processes
- Secured IPC between processes
- Local state management (localStorage)
- Conditional platform detection
MIT License - See the LICENSE file for details.
Contributions are welcome! Feel free to:
- Report bugs
- Propose enhancements
- Add macOS features