Unbiased App is an open-source news aggregation platform built to combat bias and improve media literacy. It leverages AI to provide transparency, neutrality, and context to news stories by analyzing sentiment, bias, and factual accuracy. The project is mobile-first and designed for everyone seeking a clearer view of the truth behind the headlines.
- News aggregation from diverse sources
- AI analysis of articles including:
- Political bias detection
- Sentiment analysis
- Neutral version generation
- Fact claim extraction
- Transparency cards for each article
- Demo mode with pre-loaded articles
To explore the demo version of the application:
- The backend API server is running on port 5000
- The demo web interface can be accessed at:
/frontend/web/static.html
GET /: Root endpoint with documentation and infoGET /api: API informationGET /api/articles: Get a list of articlesGET /api/articles/{article_id}: Get a specific article by IDGET /api/articles/{article_id}/neutral: Get the neutral version of an article
GET /api/demo/articles: Get a list of demo articlesGET /api/demo/articles/{article_id}: Get a specific demo articleGET /api/demo/articles/{article_id}/neutral-demo: Get the neutral version of a demo articleGET /api/demo/articles/{article_id}/analyze: Run AI analysis on a demo article
- Backend: Python with FastAPI
- Database: PostgreSQL
- AI Services: Implemented with demo versions for testing
- Frontend (Web): Simple HTML/CSS/JavaScript
- Frontend (Mobile): React Native (placeholder)
The application includes a demo mode that doesn't require external API keys. It uses mock AI services to demonstrate the functionality of bias detection, neutral article generation, and other AI features.
- News Aggregation: Pulls articles from multiple sources via a backend collector.
- AI Analysis:
- Political bias detection
- Sentiment analysis
- Entity extraction
- Fact-checking and claim detection
- Neutral version generation
- Frontend (Next.js + Tailwind + ShadCN):
- Home page with category filtering
- Article view with original and neutral tabs
- Chatbot interface with source citations and perspective summaries
- User profile showing reading history, source balance, and saved content
- Bookmarks and reading stats
- Transparency cards showing bias, source reliability, sentiment, and verification status
To reach our full vision, we need to build the following components:
Move beyond the traditional left-center-right spectrum. Introduce a multi-axis bias framework that captures:
- Establishment vs. Anti-Establishment
- Populist vs. Technocratic
- Globalist vs. Nationalist
- Optimistic vs. Alarmist
Track and visualize how authors and media outlets evolve:
- Author profiles with topic trends, average tone, and bias shifts
- Source dashboards showing sentiment and reliability over time
Use clustering and anomaly detection to surface:
- How an article fits or deviates from peer coverage on the same topic
- Radar charts or visual clustering maps for major stories
Build visual timelines for story evolution, showing:
- Shifts in sentiment, bias, and fact-checked claims over time
- How coverage diverges between sources across a multi-day cycle
- Visualize source ownership and affiliations
- Show editorial networks, corporate funding, and shared narratives
Create a system where users can:
- Flag poor AI outputs
- Suggest alternate interpretations
- Feed this back into model fine-tuning or reinforcement loops
- Identify story originators, aggregators, and spinners
- Show how narratives echo and mutate across the media ecosystem
- Update schema to support bias vectors and author/source history tracking
- Integrate narrative timeline and outlier detection modules
- Design and develop bias clustering and multi-dimensional analysis UI
- Build interactive author/source history views
- Add feedback collection system with hooks to AI models
- Create visualization layer for media ownership and network analysis
- Begin training on new bias dimensions using labeled datasets
We’re building a platform that doesn’t just show the news — it unpacks it. If you're interested in contributing, shaping our model, or joining the community, get in touch or start contributing.