https://github.com/danielpetho/unbaited
https://github.com/danielpetho/unbaited
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/danielpetho/unbaited
- Owner: danielpetho
- License: mit
- Created: 2024-12-31T09:46:47.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-19T10:56:20.000Z (over 1 year ago)
- Last Synced: 2025-03-01T00:49:31.927Z (over 1 year ago)
- Language: TypeScript
- Homepage: https://unbaited.danielpetho.com
- Size: 937 KB
- Stars: 50
- Watchers: 2
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# unbaited
Control your X feed with an LLM of your choice from Groq. A browser extension that helps you filter out engagement bait and inflammatory content from your X (formerly Twitter) feed.
## How it works
The extension uses Groq's ultra-fast API to analyze tweets using a model of your choice. When you scroll through X, it:
1. Detects new tweets as they appear in your viewport
2. Sends the tweet content (only text as of now) to Groq's API for analysis
3. Blurs tweets that are identified as engagement bait, political tweets, etc.
4. Gives you the option to reveal hidden tweets with a single click
## Installation
### Chrome/Safari
1. Install the extension from the [Chrome Web Store](https://chromewebstore.google.com/detail/unbaited-prototype/bpbnggihcaknipcgbpgjgfhgmdgcokcg)
2. Get your API key from [Groq](https://console.groq.com)
3. Open the extension settings and enter your API key
4. Optionally customize the system prompt to adjust how tweets are analyzed
### Firefox
1. Install the extension from [Mozilla Add-ons](https://addons.mozilla.org/en-US/firefox/addon/unbaited-prototype/)
2. Get your API key from [Groq](https://console.groq.com)
3. Open the extension settings and enter your API key
4. Optionally customize the system prompt to adjust how tweets are analyzed
## Browser Support
- Chrome: ✅ Full support
- Firefox: ✅ Full support
- Safari: ✅ Full support
## Development
The project consists of two parts:
- `extension/`: The Chrome extension
- `landing/`: The landing page built with Next.js
### Extension Development
```bash
cd extension
npm i
npm build
```
#### Loading in browsers
##### Chrome/Safari
Load the `extension/dist` directory as an unpacked extension:
1. Open Chrome/Safari
2. Go to Extensions page
3. Enable Developer Mode
4. Click "Load unpacked" and select the `extension/dist` directory
##### Firefox
Load the extension temporarily:
1. Open Firefox
2. Go to `about:debugging`
3. Click "This Firefox"
4. Click "Load Temporary Add-on"
5. Select any file in the `extension/dist` directory
### Implementation Notes
The extension uses different approaches for background processing:
- Chrome/Safari: Uses Service Workers (MV3)
- Firefox: Uses Background Scripts (MV3 with scripts fallback)
This is handled automatically in the code, but when testing make sure to verify functionality in both environments.