Inspiration
The internet is kind of a hellscape. Twitter is the very bottom of the cesspool. We, like anyone in this day and age, have scrolled through social media, read a post and wondered, 'Huh, Is that real?' ...Then you go down a rabbit hole of trying to verify that post, come up against more information that you have to question and in the end we get nowhere...
What it does
OctoPal is your friend checking the waters as you leisurely surf the internet. See a post on Twitter that seems a bit dodgy? Just tap the extension and OctoPal will do a deep dive into the post's text and account's activity. Using a number of natural language processing algorithms, OctoPal will assess the account’s posting activity, hashtag usage, and text features used and display a misinformation and bot activity rating.
We built OctoPal with a clean, modern interface to help users actively spot misinformation and bots online - with consistent brand colours, gradients, and subtle shadows to keep the look polished and visually engaging. The dashboard gives users a quick snapshot of user activity - things like points earned, current level with a live progress bar, and how many reports they’ve submitted - all updated in real-time. Navigation is simple and intuitive. The default Analysis tab is where most of the action happens and it includes animated progress bars showing the likelihood of bot activity, misinformation and unusual posting behaviour. We’ve colour-coded the risks (green/yellow/red) to help users quickly assess what's going on. There is also a Google Fact Check section that displays real-time fact-check results. The user can also dig deeper with insights on that passive language, suspicious hashtags, and other red flags, like very new accounts.
Users can report or share suspicious content with a tap, and the system responds with animations, status messages, and live indicators so it always feels responsive.
To make the experience fun and rewarding, we added visual badges for achievements, challenges and streaks. Users can track progress, maintain streaks, and level up over time.
The interface is fully responsive and accessible, so it works great on any screen size. We focused on legibility, spacing, and keyboard-friendly navigation to make sure it's usable for everyone. We also put care into error handling, OctoPal handles things like API failures or network issues with clear icons and helpful messages. And we’ve kept risk indicators consistent across the app with colour-coded text, bars, and highlights.
Overall, OctoPal combines practical misinformation detection with a smooth, gamified experience that feels intuitive, informative, and genuinely fun to use.
How we built it
We used JavaScript to create the web extension and HTML/CSS to design the UI. We created a Python backend using Flask to make calls to the Google FactCheck API and train and use our logistic regression model to predict misinformation. The model was trained on the ISOT Fake News Dataset on Kaggle.
Challenges we ran into
Integrating the Python back-end with the front-end, training our machine learning model to predict fake news, and adding verification from the Google FackCheck API to the extension was challenging. Developing the UI to make it user-friendly, engaging and informative also presented its hurdles.
Accomplishments that we're proud of
Given the short timeframe, we are very proud that we were able to complete a huge portion of what we had initially envisioned.
What we learned
We were able to expand our skill set by learning new languages and frameworks to implement this project.
What's next for OctoPal
We plan to implement a display of a live map of the content the user consumes while online with warnings of accounts to look out for, where users can see hotspots or communities on a social media platform with high amounts of suspect activity. Another feature we considered, was for the extension to be able to analyse audio/video content (like YouTube content) to check the validity of the claims presented present to their viewers.
Built With
- css
- flask
- google-factcheck-api
- html
- javascript
- python
- scikit-learn

Log in or sign up for Devpost to join the conversation.