Skip to content

🎯 A modern, feature-rich Flutter application showcasing clean architecture, state management best practices, and beautiful Material Design. Perfect for learning Flutter development through a real-world, production-quality example.

License

Notifications You must be signed in to change notification settings

HappyFox001/organizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“± Organizer - Flutter Example Project

🎯 A modern, feature-rich Flutter application showcasing clean architecture, state management best practices, and beautiful Material Design. Perfect for learning Flutter development through a real-world, production-quality example.

πŸ–ΌοΈ Screenshots

Tasks View Goals View Profile View

✨ Features

  • πŸ“‹ Task Management

    • βœ… Create, edit, and delete tasks
    • ⏰ Set due dates and priorities
    • πŸ“Š Track progress
    • 🏷️ Organize with categories and tags
    • βœ“ Mark tasks as completed
  • πŸ“ Note Taking

    • πŸ“– Rich text editor
    • 🎨 Color customization
    • πŸ“± Grid/List view toggle
    • πŸ” Search and filter
    • πŸ“€ Share functionality
  • 🎯 Goal Tracking

    • πŸš€ Set and track goals
    • πŸ“ˆ Progress monitoring
    • πŸ† Achievement system
    • πŸ“… Milestone tracking
    • πŸ”„ Convert goals to achievements
  • πŸ‘€ Profile Management

    • πŸŒ“ Dark/Light theme
    • πŸ“Š Activity statistics
    • ⭐ Favorite categories
    • 🎨 UI customization

πŸŽ“ Learning Points

This project demonstrates:

  • πŸ—οΈ Clean Architecture in Flutter
  • πŸ”„ State Management with Provider
  • πŸ’Ύ Local Data Persistence
  • 🎨 Modern UI/UX Design
  • πŸ§ͺ Code Organization
  • πŸ“± Responsive Design

πŸ—οΈ Architecture

This project follows a clean, maintainable architecture that separates concerns and promotes scalability:

graph TD
    A[Pages] --> B[Providers]
    B --> C[Services]
    B --> D[Models]
    C --> D
    
    subgraph UI Layer
        A
    end
    
    subgraph Business Logic
        B
    end
    
    subgraph Data Layer
        C
        D
    end
Loading

πŸ“‚ Project Structure

lib/
β”œβ”€β”€ models/           # Data structures
β”‚   β”œβ”€β”€ task.dart     # Task model
β”‚   β”œβ”€β”€ note.dart     # Note model
β”‚   β”œβ”€β”€ goal.dart     # Goal model
β”‚   └── profile.dart  # User profile model
β”‚
β”œβ”€β”€ providers/        # State management
β”‚   β”œβ”€β”€ task_provider.dart    # Task state & logic
β”‚   β”œβ”€β”€ note_provider.dart    # Note state & logic
β”‚   β”œβ”€β”€ goal_provider.dart    # Goal state & logic
β”‚   └── theme_provider.dart   # Theme state & logic
β”‚
β”œβ”€β”€ pages/           # UI screens
β”‚   β”œβ”€β”€ tasks_page.dart      # Task management
β”‚   β”œβ”€β”€ notes_page.dart      # Note management
β”‚   β”œβ”€β”€ goals_page.dart      # Goal tracking
β”‚   └── profile_page.dart    # User profile
β”‚
β”œβ”€β”€ services/        # Business logic & data handling
β”‚   β”œβ”€β”€ storage_service.dart # Data persistence
β”‚   └── file_service.dart    # File operations
β”‚
└── main.dart        # App entry point & configuration

πŸ”„ Data Flow

  1. UI Layer (Pages)

    • Handles user interactions
    • Displays data using widgets
    • Communicates with Providers
  2. State Management (Providers)

    • Manages application state
    • Handles business logic
    • Coordinates between UI and Services
  3. Services Layer

    • Handles data persistence
    • Manages file operations
    • Implements business rules
  4. Data Layer (Models)

    • Defines data structures
    • Implements data validation
    • Handles data serialization

πŸ”Œ Dependencies

graph LR
    A[UI Components] --> B[Provider]
    B --> C[Services]
    C --> D[Local Storage]
    C --> E[File System]
    
    style A fill:#f9f,stroke:#333,stroke-width:2px
    style B fill:#bbf,stroke:#333,stroke-width:2px
    style C fill:#dfd,stroke:#333,stroke-width:2px
Loading

πŸ”’ State Management

The app uses Provider pattern for state management:

  • Centralized state handling
  • Reactive UI updates
  • Efficient data propagation
  • Clean separation of concerns

πŸš€ Getting Started

πŸ“‹ Prerequisites

  • πŸ“± Flutter SDK (>=3.0.0)
  • β˜• Dart SDK (>=3.0.0)

βš™οΈ Installation

  1. Clone the repo:
git clone git@github.com:HappyFox001/organizer.git
  1. Get packages:
flutter pub get
  1. Run the app:
flutter run

πŸ› οΈ Built With

  • πŸ“± Flutter - UI Framework
  • πŸ”„ Provider - State Management
  • πŸ’Ύ Shared Preferences - Local Storage
  • 🎨 Google Fonts - Typography
  • πŸ“Έ Image Picker - Media Selection
  • πŸ”— URL Launcher - External Links

🀝 Contributing

  1. 🍴 Fork the Project
  2. πŸ”§ Create your Feature Branch
  3. πŸ’Ύ Commit your Changes
  4. πŸ“€ Push to the Branch
  5. πŸ”€ Open a Pull Request

πŸ“ License

MIT License - feel free to use this project as a template! πŸŽ‰

πŸ‘¨β€πŸ’» Author

Β© 2025 Qian Zhang

πŸ™ Acknowledgments

  • πŸ’™ Flutter Team
  • πŸ‘₯ Open Source Community
  • 🌟 All Contributors

Happy Coding! πŸ’»

About

🎯 A modern, feature-rich Flutter application showcasing clean architecture, state management best practices, and beautiful Material Design. Perfect for learning Flutter development through a real-world, production-quality example.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published