π€ PubMind
Your intelligent AI assistant for Dart and Flutter package management
PubMind is an AI-powered CLI tool that revolutionizes how you discover, evaluate, and install packages from pub.flutter-io.cn. Say goodbye to dependency hell and hello to smart, context-aware package recommendations.
π Installation
Prerequisites
- Dart SDK 3.0.0 or higher
- OpenAI API key
Install Globally
dart pub global activate pubmind
Set Up API Key
pubmind --api-key sk-proj-...
# or
pubmind config
π Usage
Quick Start
Navigate to your Dart or Flutter project:
cd your-project
pubmind chat
Then ask PubMind anything:
You > I need a state management solution
AI > I'll help you find the best state management package...
[AI analyzes your project and recommends options]
You > install riverpod
AI > Installing riverpod with compatibility checks...
β Package installed successfully!
Command Reference
# Start interactive chat mode
pubmind chat
# Get help
pubmind --help
# Check version
pubmind --version
Interactive Commands
Inside chat mode, use these commands:
/help - Show available commands
/clear - Clear conversation history
/history - Show conversation history
/exit - Exit chat mode
π‘ Examples
Example 1: Finding a Package
You > I need a package for HTTP requests
AI > Let me search for HTTP client packages for you...
Found top candidates:
1. http - Official Dart HTTP client
- Pub Points: 150/160
- Popularity: 98%
- Likes: 2,341
2. dio - Powerful HTTP client with interceptors
- Pub Points: 140/160
- Popularity: 96%
- Likes: 3,892
Based on your needs, I recommend dio for advanced features
or http for simplicity. Which would you prefer?
Example 2: Resolving Conflicts
You > resolve my dependency issues
AI > Checking compatibility...
β Detected issue: freezed requires meta ^1.9.0
but your project uses meta ^1.11.0
Analyzing solutions...
β Solution found: Adjust freezed version to ^2.4.1
This version is compatible with your dependencies.
AI > Adjusting freezed version to ^2.4.1...
β Running pub get...
β Installation successful!
Example 3: Getting Package Information
You > tell me about riverpod
AI > Fetching information about riverpod...
Package: riverpod
Version: 2.4.9
Pub Points: 150/160
Popularity: 95%
Likes: 4,521
Description: A reactive caching and data-binding framework.
Riverpod is a complete rewrite of Provider with improvements
in performance, developer experience, and features.
Homepage: https://riverpod.dev
Repository: https://github.com/rrousselGit/river_pod
Dependencies: meta, state_notifier
Dev Dependencies: test, mockito
AI > Would you like to install this package?
Example 4: Comparing Packages
You > compare provider vs riverpod
AI > Comparing state management solutions...
Sequential thinking: Analyzing trade-offs...
[Thought 1/5] Provider is official, simple, widely adopted
[Thought 2/5] Riverpod offers better performance and safety
[Thought 3/5] Considering your project type: Flutter
[Thought 4/5] Recommendation ready
Comparison Results:
βββββββββββββββββββββββββββββββββββββββββββββββ
Package | Score | Pub Points | Popularity | Likes
βββββββββββββββββββββββββββββββββββββββββββββββ
riverpod | 95/100| 150/160 | 95% | 4,521
provider | 92/100| 150/160 | 97% | 5,234
βββββββββββββββββββββββββββββββββββββββββββββββ
Recommendation: riverpod
Reasoning:
- Best type safety and compile-time checks
- Better performance than Provider
- Modern API with excellent documentation
- More maintainable for large projects
- Official Dart team recommendation
π€ Contributing
We welcome contributions! Here's how to get started:
Development Setup
# Clone the repository
git clone https://github.com/VenbrinoDevelopers/pubmind.git
cd pubmind
# Install dependencies
dart pub get
# Run tests
dart test
# Run locally
dart run bin/pubmind.dart chat
Contribution Guidelines
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π Support
- π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
- π§ Email: precious@venbrinodevs.com
- π¦ Twitter: @precious_tagy
Libraries
- agents/agent
- agents/prompt/system_prompt
- agents/tools/compatibility_checker
- agents/tools/get_package_info
- agents/tools/install_package
- agents/tools/read_pub_spec
- agents/tools/recommendation
- agents/tools/run_command
- agents/tools/search_package
- agents/tools/sequential_thinking
- agents/tools/task_done
- commands/base_commands
- commands/chat_commmand
- commands/config_command
- core/cache
- core/command_service
- core/compatibility_checker
- core/data/enum
- core/install_checker
- core/recommendation_engine
- models/command_input
- models/compatibility_input
- models/compatibility_result
- models/process_result
- models/sequential_thinking
- models/type
- utils/cli_console
- utils/commands_helper
- utils/logger_utils
- utils/process_runner
- utils/response_formatter