Positron is a browser extension that removes all hate speech, misinformation, and harmful content from your feed!
Learn more on the website or download the extension directly on the GitHub. Follow the instruction below to install.
The extension:
Website showcase:
To install this extension
- Clone this GitHub repo or download zip
-
Unzip download (don't need to unzip if cloned)
-
Go to Chrome extension page by going to chrome://extensions/ (as a URL address)
-
Hit the Developer mode toggle to on (screenshot is on)
![image](https://private-user-images.githubusercontent.com/90366819/294769539-03462c5d-5422-4434-9f46-67ae5966e11b.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ1NTE2MzAsIm5iZiI6MTcyNDU1MTMzMCwicGF0aCI6Ii85MDM2NjgxOS8yOTQ3Njk1MzktMDM0NjJjNWQtNTQyMi00NDM0LTlmNDYtNjdhZTU5NjZlMTFiLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI1VDAyMDIxMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWU4MDFhNTA0YjRlMjcxZWJhNzU4ODYyNTk4OTgzNDg5MzJmOWJkNDAxZDNiMmQxNzQzOWQ2NzUzMDAwMjE0MTYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.4NVBCyRWZQp9f0ald_5vaGR0XNroIaDQq2e2ZXbHM0s)
- Click Load unpacked and navigate to the unzipped folder
![image](https://private-user-images.githubusercontent.com/90366819/294769430-bcf88871-7a94-4e62-a762-275e0ff2c7f1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ1NTE2MzEsIm5iZiI6MTcyNDU1MTMzMSwicGF0aCI6Ii85MDM2NjgxOS8yOTQ3Njk0MzAtYmNmODg4NzEtN2E5NC00ZTYyLWE3NjItMjc1ZTBmZjJjN2YxLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI1VDAyMDIxMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTUwODUxN2ZlMWNkOTRkZjk0ZmVhMGQ0OTM3YmIzMGNiNDU2MjM4M2E2NTE0YmI5ODI4ZTQ1NTM1NDQ1YzA5NDUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.bjjPlDGERPM3Uzr1p1vyFYoVX-q73pBdBsduFHeRu2M)
- Confirm
Now you have the extension installed!! π€©
![image](https://private-user-images.githubusercontent.com/90366819/294769131-5ddf68e8-91dd-4248-8d34-71a88af0ae8d.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ1NTE2MzEsIm5iZiI6MTcyNDU1MTMzMSwicGF0aCI6Ii85MDM2NjgxOS8yOTQ3NjkxMzEtNWRkZjY4ZTgtOTFkZC00MjQ4LThkMzQtNzFhODhhZjBhZThkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI1VDAyMDIxMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTlkNDIyMmQ5N2ZiMDM3NDZlMzA2M2RjMDM3MjJlOTUyM2VmY2FjMjYwNjRlNWRiMjc3ZmU0NzhlZjZiNTgxYzcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.uJ2c8HisJoGBUxdUWBsUdNX2HC1jT8hUh2IRq3S3hAg)
In a world full of misinformation, hate speech, and harmful content, it overwhelms and negatively affects people. Research has shown that negative posts can effect your mental state. With our extension, we can hide hateful content automagically β¨! You can also check if your post will be flagged by our system by checking your post on the website before you post!
Positron is a Chrome extension that scans all posts on your social media feed and hides them before you even see it. Our extension gives a reason for why it hide the post and allows you to view it if you so choose. There are several types of post that our system will flag including hate speech, self harm, harassment, and more. If you want to check to see if your post will be flagged by our systems before you post on your social media account, you can do so on the website. Enter your post into the textbox and hit enter. The AI bot will check the post and will tell you if it will be flagged. If it is flagged, you can click on it to find out more about why it is flagged and how to avoid it from being flagged by the system.
For the website we used the T3 stack which consists of Tailwind, TypeScript, and tRPC. It makes use of React and Nextjs. For this project we also used a few animations from shadcn.
For the browser extension, we created from scratch using JavaScript. Currently it only works on a select number of social media sites since we need to hardcode where the posts of that social media are defined. A possible addition to this project would be able to highlight a text and let the AI bot tell you if the highlighted text is potentially harmful.
All the systems were linked up to OpenAI's API for detecting naughty language. This API is our backend.
All visual assets were made during the hackathon including the logo in Adobe Illustrator and the 3D video made in Blender!
Trying to figure out how Chrome extensions work was a big challenge. Especially with chrome trying to roll out manifest V3, the internet had mixed information on which code is for what. Since some features were not available on V3 compared to V2, we stuck with V2.
Another challenge is trying to get libraries to work with something like the T3 stack framework. Usually installing component libraries aren't too bad but this proved rather challenging compared to what it was normally.
It's very pretty. We made sure it was aesthetically pleasing and the use cases made sense. Additionally, we tried to make the website mobile friendly so people can check if there posts are flagged by our system before they post it on social media.
- How to make a Chrome extension and how manifest V3 differs from V2.
- Making something mobile friendly always takes more time than you think!
- shadcn library is a pain to combine with the T3 stack.
An interesting next step would be to also include image capacities to limit potentially harmful images from being shown. Additionally, adding more sites to curate and block harmful content like Threads or Mastodon.
Check out our Devpost submission here