The News Understanding App is meticulously crafted to empower users in comprehending news articles from diverse sources. It goes beyond simple news consumption by offering a robust set of features. Users can analyze articles, view concise previews, and access well-crafted summaries. This enables them to make informed decisions about what to read, guided by their interests, sentiment preferences, and awareness of the author's bias.
Users can input a news article into the app, triggering an in-depth analysis that covers five key classifications:
- Fake vs Real: Distinguishes between authentic and potentially misleading articles.
- Sentiment Analysis: Examines the sentiment expressed in the article, categorizing it as negative, positive, or neutral.
- Biased Detection: Identifies the political bias of the author, classifying it as Left Biased, Right Biased, or Center.
- Topic Identification: Categorizes the article into relevant topics.
- Summarization: Generates a concise summary of the article for quick comprehension.
Explore a curated feed of news articles, each tagged with pertinent information, including bias, sentiment, and topic. This intuitive feature allows users to swiftly identify articles that align with their preferences and values.
- Flutter: The app is built using the Flutter framework for a cross-platform experience.
- Dart: The programming language used in conjunction with Flutter.
- Provider State Management: Utilized to manage the state of the app and facilitate communication between the UI and API.
- Dio: Used for making HTTP requests from the Flutter app to the Flask API.
To establish communication between Flutter and Flask, the app uses the Dio library for making HTTP requests. For more details on the backend implementation, please refer to the Flask backend repository.
To get started with the app, follow these steps:
- Clone the repository.
- Navigate to the project directory.
- Run
flutter pub get
to install dependencies. - Run the app using
flutter run
.
Feel free to contribute or report issues by creating a pull request or opening an issue.