/OpenIdea

OpenIdea is a powerful, feature-rich, and open-source note-taking application built with Flutter

Primary LanguageDartMIT LicenseMIT

OpenIdea πŸ“βœ¨

Flutter Dart License: MIT GitHub stars

OpenIdea Logo

OpenIdea is a powerful, feature-rich, and open-source note-taking application built with Flutter. It provides a seamless and intuitive interface for capturing, organizing, and managing your ideas across multiple platforms. With a focus on user experience, security, and customization, OpenIdea stands out as a versatile tool for both personal and professional use.

🌟 Features

Core Functionality

  • πŸ“ Create, edit, and delete notes with a rich text editor
  • πŸ” Full-text search functionality for quick note retrieval
  • 🏷️ Categorize notes with customizable tags
  • πŸ“Œ Pin important notes for easy access
  • πŸ”’ Lock sensitive notes with password protection
  • πŸ—„οΈ Archive notes for better organization

User Experience

  • πŸŒ“ Dark mode support for comfortable viewing in any lighting condition
  • 🌐 Multilingual support with 8 languages (English, فارسی, TΓΌrkΓ§e, AzΙ™rbaycan, EspaΓ±ol, Ψ§Ω„ΨΉΨ±Ψ¨ΩŠΨ©, δΈ­ζ–‡, Русский)
  • 🎨 Customizable note colors and background colors
  • πŸ“Š Word and character count for each note

Advanced Editing

  • πŸ–‹οΈ Rich text formatting options (bold, italic, underline, strikethrough)
  • πŸ“‘ Support for bullet points and numbered lists
  • πŸ’¬ Quote and code block formatting
  • πŸ”€ Multiple text sizes and alignments

Data Management

  • πŸ“œ Note version history to track changes
  • πŸ’Ύ Local database storage using SQLite
  • πŸ”„ Automatic saving of notes

πŸš€ Getting Started

Prerequisites

  • Flutter SDK (^3.5.1)
  • Dart SDK (^3.5.1)

Installation

  1. Clone the repository:

    git clone https://github.com/MatinMollapur01/open_idea.git
    
  2. Navigate to the project directory:

    cd open_idea
    
  3. Install dependencies:

    flutter pub get
    
  4. Run the app:

    flutter run
    

πŸ› οΈ Built With

  • Flutter - UI framework for building natively compiled applications
  • SQLite - Local database for efficient data storage
  • flutter_quill - Rich text editor for advanced note formatting
  • shared_preferences - Local storage for app settings
  • crypto - Encryption for secure note locking
  • flutter_colorpicker - Color selection for note customization
  • intl - Internationalization and localization support

🧠 Skills Demonstrated

  • Advanced Flutter Development: Utilizing complex widgets, custom animations, and state management
  • Database Management: Implementing CRUD operations with SQLite
  • Security Implementation: Encrypting sensitive data and implementing password protection
  • Localization: Supporting multiple languages and managing translations
  • UI/UX Design: Creating an intuitive and responsive user interface
  • Version Control: Using Git for efficient code management and collaboration
  • Testing: Implementing unit and widget tests for robust functionality

πŸ† Quality Assurance

  • Code Structure: Well-organized and modular code architecture for easy maintenance and scalability
  • Performance Optimization: Efficient algorithms and data structures for smooth user experience
  • Error Handling: Comprehensive error catching and user-friendly error messages
  • Accessibility: Implementing features to ensure the app is usable by people with disabilities
  • Documentation: Thorough inline comments and external documentation for easy understanding and contribution

🀝 Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

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

πŸ™ Acknowledgments

  • Flutter team for the amazing framework
  • All contributors who have helped shape OpenIdea
  • The open-source community for providing invaluable resources and inspiration

πŸ“¬ Contact

Matin Mollapur - @MatinMollapur

Project Link: https://github.com/MatinMollapur01/open_idea


Made with ❀️ by Matin Mollapur