A Manifest V3 compatible Chrome extension that replicates core Pushbullet functionality via the official Pushbullet REST & WebSocket APIs.
This is an unofficial extension and is not affiliated with or endorsed by Pushbullet Inc. Use at your own risk.
- π± Notification Mirroring: Mirror Android notifications to your desktop
- π€ Push Sending: Send notes, links, and files to your devices
- π¬ SMS/MMS Support: Send and receive SMS messages from your desktop
- π’ Channel Subscriptions: Subscribe to and broadcast to Pushbullet channels
- π Real-time Sync: Instant synchronization via WebSocket connection
- βοΈ Customizable Settings: Configure notifications, sounds, and defaults
- π Contacts Management: Send pushes to contacts
- Chrome 110 or higher
- Pushbullet account with Access Token
- Android device with Pushbullet app (for SMS/notification mirroring)
- Download the latest release package from the Releases page
- Extract the contents
- Load the extension in Chrome Developer Mode
- Open Chrome and go to
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked"
- Select the unzipped release package folder
- Open Chrome and go to
-
Clone this repository:
git clone https://github.com/manish001in/pushbridge.git cd pushbridge -
Install dependencies:
npm install
-
Build the extension:
npm run build
-
Load in Chrome:
- Open Chrome and go to
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked"
- Select the
distfolder
- Open Chrome and go to
- Go to Pushbullet Settings
- Scroll down to "Create Access Token"
- Click "Create Access Token"
- Copy the generated token
- Click the Pushbridge icon in your Chrome toolbar
- Paste your Access Token in the setup field
- Click "Save" to validate and store the token
- The extension will automatically register your Chrome browser as a device
- Notes: Send text notes to your devices
- Links: Share web pages with titles and descriptions
- Files: Drag and drop files to send them to your devices
- Broadcasts: Send messages to your channel subscribers (if you own channels)
- Contacts: Send pushes to contacts
- Android notifications automatically appear as Chrome notifications
- Click notifications to dismiss them on your phone
- View recent pushes in the "Messages" tab
- Switch to the "SMS/MMS" tab
- Select a conversation from the list
- Type and send messages using your phone's number
- Receive incoming SMS messages in real-time
- Update the default SMS device in the options page
- Go to the "Channels" tab
- Search for channels by tag
- Subscribe to channels to receive their posts
- Manage your subscriptions with unsubscribe options
Right-click on any webpage to:
- Push the current page to your devices or contacts
- Push selected text as a note to your devices or contacts
- Push images to your devices or contacts
Access settings by right-clicking the extension icon and selecting "Options":
- Notifications: Toggle notification sounds and display
- Default Device: Choose which device receives pushes by default
- Connection: Test WebSocket connection and auto-reconnect settings
- Diagnostics: Export debug logs for troubleshooting
- SMS Device: Choose default SMS device for SMS functionality
- Auto Open Push Links as Tabs: Automatically open link pushes in new browser tabs when received
pushbridge/
βββ src/
β βββ background/ # Service worker and background logic
β βββ popup/ # Popup UI components
β βββ options/ # Options page
β βββ content/ # Content scripts
β βββ types/ # TypeScript type definitions
βββ public/ # Static assets and manifest
βββ tests/ # Unit and E2E tests
βββ dist/ # Built extension files
# Development
npm run dev # Start development server
npm run build # Build for production
npm run test # Run unit tests
npm run test:e2e # Run E2E tests
npm run lint # Run ESLint
npm run format # Format code with Prettier
# Production
npm run build --prod # Build optimized production bundle# Run all tests
npm test
# Run specific test suites
npm run test:unit
npm run test:e2e
# Run tests with coverage
npm run test:coverage- No Data Storage: All data is stored locally in Chrome storage
- Direct API Access: Communicates directly with Pushbullet APIs
- No Third-party Servers: No data passes through our servers
- Open Source: Full transparency with MIT license
"Invalid token" error
- Verify your token is correct and not expired
- Check that you copied the entire token
- Generate a new token if needed
Notifications not appearing
- Check Chrome notification permissions
- Verify the extension has notification access
- Test WebSocket connection in options
SMS not working
- Ensure your phone has Pushbullet app installed
- Check that SMS mirroring is enabled in Pushbullet app
- Verify your phone is connected to the internet
- Make sure the selected default SMS device is active and has SMS capability
File uploads failing
- Check file size (max 25MB for free tier)
- Verify internet connection
- Try smaller files first
- Check the Issues page
- Export debug logs from the options page
- Create a new issue with debug information
This project is licensed under the MIT License - see the LICENSE file for details.
This is an unofficial extension and is not affiliated with or endorsed by Pushbullet Inc. Use at your own risk.
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests for new functionality
- Submit a pull request
- Pushbullet for their excellent API
- Lit for the web component framework
Made with β€οΈ by manish001in