NeuroPlan is an AI-powered project planning and roadmap generation Flutter application that helps users break down their goals into actionable, structured plans. Using advanced AI providers like GROQ, the app generates comprehensive project roadmaps from natural language descriptions.
- Generate detailed project roadmaps from simple goal descriptions
- Break down complex objectives into manageable tasks
- Estimate timeframes for each task
- Support for multiple AI providers (GROQ, ChatGPT, Gemini)
- Firebase Authentication integration
- Google Sign-In support
- Secure user session management
- Save AI-generated plans as projects
- View and manage all your projects
- Track project progress and tasks
- Firebase Cloud Firestore integration for data persistence
- Configure API keys for different AI providers
- Switch between AI providers (GROQ, ChatGPT, Gemini)
- Personalized AI model selection
- Android support
- iOS support
- Web support
- Windows, macOS, and Linux desktop support
- Material Design 3 theming
- Light and dark theme support
- Responsive design for different screen sizes
- Smooth animations and transitions
- Flutter SDK (3.7.2 or higher)
- Dart SDK
- Firebase project setup
- AI provider API keys (GROQ/ChatGPT/Gemini)
-
Clone the repository
git clone https://github.com/Abhay2133/neuroplan.git cd neuroplan -
Install dependencies
flutter pub get
-
Configure Firebase
- Create a new Firebase project
- Enable Authentication and Firestore
- Download and place configuration files:
android/app/google-services.json(Android)ios/Runner/GoogleService-Info.plist(iOS)- Update
lib/firebase_options.dartwith your project config
-
Set up environment variables
cp prod.env.example prod.env
Edit
prod.envand add your configuration:ACCESS_TOKEN="your_ai_provider_api_key" AI_PROVIDER="groq"
-
Run the application
flutter run
lib/
βββ main.dart # App entry point
βββ firebase_options.dart # Firebase configuration
βββ utils.dart # Utility functions
βββ constants/ # App constants
β βββ colors.dart # Color definitions
β βββ env.dart # Environment variables
β βββ samples.dart # Sample data
β βββ themes.dart # App themes
βββ router/ # Navigation
β βββ app_router.dart # GoRouter configuration
βββ screens/ # UI screens
β βββ app/ # Main app screens
β β βββ app_screen.dart # Main app wrapper
β β βββ prompt_screen.dart # AI prompt interface
β β βββ projects_screen.dart # Project management
β β βββ history_screen.dart # History view
β β βββ settings_screen.dart # Settings & configuration
β βββ auth/ # Authentication screens
β βββ login_screen.dart # Login interface
β βββ signup_screen.dart # Registration interface
βββ services/ # Business logic
β βββ auth_service.dart # Authentication service
β βββ project_service.dart # Project management
β βββ ai_provider_service.dart # AI provider settings
β βββ ai/ # AI integrations
β βββ base_ai.dart # AI interface
β βββ ai_factory.dart # AI provider factory
β βββ groq.dart # GROQ implementation
βββ widgets/ # Reusable UI components
βββ skeleton.dart # Loading skeletons
βββ snackbar.dart # Snackbar utilities
βββ spinner.dart # Loading indicators
- Create a Firebase project at Firebase Console
- Enable Authentication with Google Sign-In
- Enable Cloud Firestore database
- Download configuration files and place them appropriately
The app supports multiple AI providers:
- Get API key from GROQ Console
- Configure in app settings or environment file
- Get API key from OpenAI
- Configure in app settings
- Get API key from Google AI Studio
- Configure in app settings
- flutter: Flutter SDK
- firebase_core: Firebase integration
- firebase_auth: User authentication
- cloud_firestore: NoSQL database
- go_router: Navigation and routing
- provider: State management
- google_fonts: Custom typography
- gap: Spacing utilities
- shimmer: Loading animations
- http: HTTP requests for AI APIs
- flutter_dotenv: Environment variables
- crypto: Cryptographic functions
- intl: Internationalization
- Sign up/Login: Create an account or sign in with Google
- Configure AI Provider: Go to Settings > AI Provider and add your API key
- Generate Roadmap: Enter your project goal in natural language
- Review & Save: Review the AI-generated roadmap and save as a project
- Manage Projects: View and manage all your saved projects
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Flutter team for the amazing framework
- Firebase for backend services
- GROQ for AI capabilities
- Material Design for UI guidelines
If you encounter any issues or have questions:
- Create an issue on GitHub
- Check the documentation
- Review the troubleshooting guide
Made with β€οΈ using Flutter