Skip to content

SHADOWRULIN/Flutter-Magic-8-Ball-App

Repository files navigation

🔮 Flutter Magic 8-Ball (Shuffle App)

    

A minimalist and interactive decision-making application built with Flutter. This project focuses on managing application state and implementing randomization logic to provide users with an engaging "Magic 8-Ball" experience.

✨ Key Features

  • Dynamic Image Shuffling: Utilizes setState to update the UI in real-time based on randomized logic.
  • Clean Architecture: Separates business logic (randomization) from the UI components for better maintainability.
  • High-Contrast UI: Minimalist design using a Cyan color palette for a bold, modern look.

🛠️ Technical Concepts

  • Randomization: Implementation of dart:math to generate dynamic asset paths.
  • State Management: Using StatefulWidget to handle real-time asset swapping.
  • Asset Management: Efficient handling of local image assets through the pubspec.yaml.

📁 Project Structure

  • lib/home_page.dart: The core UI layout and interaction handling.
  • lib/utils/ball_logic.dart: Decoupled logic for generating random indices.
  • assets/: Contains the ball image variations (ball1.png through ball5.png).

🚀 How to Run

  1. Clone the repo:

    git clone https://github.com/SHADOWRULIN/Flutter-Magic-8-Ball-App.git
    
  2. Install dependencies:

     flutter pub get
    
  3. Run the app:

     flutter run
    

👤 Author

Muhammad Fahaz Khan

📄 License

This project is licensed under the MIT License — see the LICENSE file for details.

About

A Flutter based decision making app inspired by the Magic 8 Ball. Features randomized image shuffling logic and a minimalist, high contrast UI.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors