Skip to content

rofidarashed/Flash-News

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡ FlashNews: A Modern News App

Flutter Version License: MIT PRs Welcome

FlashNews is a sleek, modern, and minimalist news application built with Flutter. It provides a seamless and engaging experience for users to catch up on the latest headlines and stories from around the globe, sorted by category. The app is designed with a focus on clean UI and smooth performance.

📸 Screenshots

🎥 Demo Video

video_2025-09-01_00-23-17.mp4

✨ Features

FlashNews comes packed with features designed for a great news-reading experience:

  • Top Headlines: Instantly view the most important breaking news from around the world on the home screen.
  • Categorized News: Effortlessly browse articles from a wide range of categories like Business, Technology, Sports, Health, and more.
  • Dynamic Content: The news feed is always up-to-date, fetching the latest articles from a live news API.
  • Performant Scrolling: Built using Flutter's CustomScrollView and Slivers to ensure a buttery-smooth scrolling experience, even with long lists of news articles.
  • Clean & Minimalist UI: A user-friendly interface that prioritizes content and readability, making it easy to focus on the news that matters.
  • Responsive Design: A consistent and beautiful experience across a wide range of devices and screen sizes.

🛠️ Technology Stack & Architecture

This project leverages a modern stack to deliver a high-quality mobile application.

  • Framework: Flutter
  • Language: Dart
  • Architecture: The app follows a simple, feature-first widget structure. The UI is decoupled into logical components (pages and widgets) for better organization and reusability.
  • API Integration: Fetches data from a public news API (e.g., NewsAPI.org) using an HTTP client to handle network requests.
  • State Management: Utilizes StatefulWidget and setState for managing local widget state, keeping the architecture simple and easy to understand for this scale.
  • Core Flutter Widgets:
    • CustomScrollView, SliverAppBar, and SliverList for creating high-performance, custom scrolling effects.
    • FutureBuilder for asynchronously fetching and displaying news data.

🚀 Getting Started

Follow these instructions to get a copy of the project up and running on your local machine for development and testing.

Prerequisites

  • You must have the Flutter SDK installed on your machine. For installation instructions, see the official Flutter documentation.
  • An API Key from a news provider like NewsAPI.org.

Installation & Setup

  1. Clone the repository:

    git clone https://github.com/your-username/flashnews_app.git
  2. Navigate to the project directory:

    cd flashnews_app
  3. Configure your API Key: This project requires an API key to fetch news data. You will need to create a file or class to store your key and ensure it is not checked into version control.

    For example, you could create a file lib/api_key.dart:

    // lib/api_key.dart
    const String apiKey = 'YOUR_API_KEY_HERE';

    Then, add lib/api_key.dart to your .gitignore file.

  4. Install dependencies:

    flutter pub get
  5. Run the app:

    flutter run

📂 Project Structure

The project maintains a clean and scalable structure, making it easy to navigate and maintain.

lib/
├── pages/
│   └── home_page.dart        # The main screen of the app.
├── widgets/
│   ├── category_list.dart    # Widget for the horizontal list of categories.
│   └── news_list_builder.dart# Widget that fetches and displays news articles.
└── main.dart                 # The entry point of the application.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages