OBS Reminder
A lightweight toast notification tool for OBS Studio. Perfect for users who need periodic reminders during live streaming or recording.
Screenshots
see in here
Features
- Light, fast, and simple: Built with Rust and egui for an easy-to-use interface
- Multi-software integration: Works with any streaming or recording tool that supports browser sources (even browsers)
- Highly customizable settings: Configure multiple titles, messages, colors, display durations, etc.
- Live preview: Test toast notifications in real time
Next Steps
Quick Start
1. Download and Run
- Download the latest version from the release page
- Run
obs-reminder-client.exe
- The application will launch both the desktop interface and the embedded web server
- Add Titles: Input multiple reminder titles (e.g., "Drink Water!", "Check Chat", "Stretch")
- Add Messages: Input corresponding message content
- Set Colors: Choose background gradient and text colors
- Set Duration: Configure how long each toast displays (1–60 seconds)
- Set Interval: Choose reminder frequency (1–1440 minutes)
- Select Mode: Random or sequential display order
3. Add to OBS
- In OBS Studio, add a new Browser Source
- Copy the URL from the desktop app (usually
http://localhost:8080
)
- Paste it into the Browser Source URL field
- Set width:
265
, height: 85
(or adjust as needed)
- Enable "Shutdown source when not visible" and "Refresh browser when scene becomes active"
4. Start Reminders
- Click Save to save your configuration
- Click Test Toast to preview in OBS
- Click Start to begin automatic reminders
- Click Stop anytime to pause
Configuration
Settings are saved in config.toml
in the same directory. You can also edit it directly:
[app]
version = "0.0.1"
[toaster]
titles = ["bbb", "114514", "alright"]
contents = ["im content", "hoho", "what can i say?"]
interval_time = 30 # minutes
duration = 5 # seconds
color_1 = "#FF6B6B"
color_2 = "#4ECDC4"
text_color = "#FFFFFF"
content_switch_mode = "random" # or "sequential"
Technical Details
Architecture
- Desktop App: Rust + egui for UI
- Web Server: Embedded HTTP server using hyper-rs
- Browser Component: Svelte + svelte-toast for notifications
- Communication: WebSocket for real-time messages
Ports
- HTTP Server:
localhost:8080
(for OBS browser source)
- WebSocket:
localhost:7981
(internal communication)
System Requirements
- Windows 10/11 (64-bit)
- OBS Studio 28.0+ (supports browser source)
- Available ports 8080 and 7981
Build from Source
Prerequisites
- Latest Rust
- Node.js 22+ and pnpm (or other package manager)
- Git
Build Steps
[!WARNING]
Method one depends on 7zip, taskfile please install by yourself
# Clone repository
git clone https://github.com/HugoQwQ/obs-reminder.git
cd obs-reminder
# Build & Pack
task
OR
# Clone repository
git clone https://github.com/HugoQwQ/obs-reminder.git
cd obs-reminder
# Build browser component
cd browser
pnpm install
pnpm run build
cd ..
# Build Rust application
cargo build --release
# Executable located at target/release/obs-reminder-client.exe
Troubleshooting
Common Issues
Toast not showing in OBS:
- Verify browser source URL is
http://localhost:8080
- Ensure desktop app is running
- Try refreshing the browser source
- Make sure Windows Firewall is not blocking the app
Connection issues:
- Ensure ports 8080 and 7981 are available
- Check Windows Defender/antivirus settings
- Try running as administrator if needed
Performance issues:
- Reduce toast display duration if there is lag
- Ensure OBS hardware acceleration is enabled
- Close unnecessary applications
Contributing
Contributions are welcome! Feel free to submit pull requests. For major changes, please open an issue first.
Development Setup
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
)
- Make your changes
- Test thoroughly
- Commit (
git commit -m 'Add amazing feature'
)
- Push branch (
git push origin feature/amazing-feature
)
- Open a Pull Request
License
This project is licensed under GPL-3. See LICENSE for details.
Acknowledgements
Support
If you find this project helpful, please consider:
- ⭐ Starring the repository
- 🐛 Reporting issues
- 💡 Suggesting features
- 📖 Improving documentation
- 😍 Buy me coffee
Happy Streaming! 🎮✨