A fun weekend project that monitors GitHub repositories for new issues and prints them as tickets on your Seznik thermal printer via Bluetooth!
- 🔍 Real-time Monitoring: Polls GitHub API for new issues
- 🖨️ Bluetooth Printing: Connects directly to Seznik thermal printer via Web Bluetooth
- 🎫 Formatted Tickets: Beautiful thermal printer formatting with issue details
- 📱 Web Interface: Clean, responsive web app
- ⚡ Live Updates: See recent issues and printing status
- Chrome, Edge, or Opera browser (Web Bluetooth support required)
- Seznik thermal printer with Bluetooth capability
- GitHub repository to monitor
- Clone or download this project
- Open
index.htmlin a supported browser - Make sure your Seznik printer is powered on and in pairing mode
-
Configure Repository:
- Enter the repository owner (e.g.,
microsoft) - Enter the repository name (e.g.,
vscode) - Optionally add a GitHub token for private repos or higher rate limits
- Enter the repository owner (e.g.,
-
Connect Printer:
- Click "Connect Printer"
- Select your Seznik printer from the Bluetooth device list
- Wait for connection confirmation
-
Start Monitoring:
- Set your preferred poll interval (10-300 seconds)
- Click "Start Monitoring"
- New issues will be automatically printed as tickets!
-
Test Printer:
- Use "Print Test Ticket" to verify your printer is working
For private repositories or to avoid rate limits, create a GitHub personal access token:
- Go to GitHub Settings → Developer settings → Personal access tokens
- Generate a new token with
reposcope - Paste the token in the app
- Ensure your Seznik printer is powered on and in pairing mode
- Try disconnecting and reconnecting
- Check that your browser supports Web Bluetooth
- Some printers may need specific service UUIDs - check browser console for available services
- Check your repository name and owner are correct
- For private repos, make sure you have a valid GitHub token
- GitHub API has rate limits (60 requests/hour without token)
- Test with the "Print Test Ticket" button first
- Check browser console for error messages
- Ensure printer has paper and is not jammed
- Uses Web Bluetooth API for direct browser-to-printer communication
- ESC/POS commands for thermal printer formatting
- GitHub REST API for issue monitoring
- Responsive design with modern CSS
- ✅ Chrome 56+
- ✅ Edge 79+
- ✅ Opera 43+
- ❌ Firefox (no Web Bluetooth support)
- ❌ Safari (no Web Bluetooth support)
- 🎨 Beautiful gradient design
- 📊 Real-time status updates
- 🏷️ Issue labels and metadata
- 📅 Timestamps and author info
- ✂️ Automatic paper cutting
Enjoy your weekend project! 🎉
MIT License - feel free to modify and share!