Skip to content

Abhay2133/neuroplan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

NeuroPlan 🧠

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.

✨ Features

🎯 AI-Powered Project Planning

  • 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)

πŸ” User Authentication

  • Firebase Authentication integration
  • Google Sign-In support
  • Secure user session management

πŸ“Š Project 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

βš™οΈ Customizable AI Settings

  • Configure API keys for different AI providers
  • Switch between AI providers (GROQ, ChatGPT, Gemini)
  • Personalized AI model selection

πŸ“± Cross-Platform

  • Android support
  • iOS support
  • Web support
  • Windows, macOS, and Linux desktop support

🎨 Modern UI/UX

  • Material Design 3 theming
  • Light and dark theme support
  • Responsive design for different screen sizes
  • Smooth animations and transitions

πŸš€ Getting Started

Prerequisites

  • Flutter SDK (3.7.2 or higher)
  • Dart SDK
  • Firebase project setup
  • AI provider API keys (GROQ/ChatGPT/Gemini)

Installation

  1. Clone the repository

    git clone https://github.com/Abhay2133/neuroplan.git
    cd neuroplan
  2. Install dependencies

    flutter pub get
  3. 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.dart with your project config
  4. Set up environment variables

    cp prod.env.example prod.env

    Edit prod.env and add your configuration:

    ACCESS_TOKEN="your_ai_provider_api_key"
    AI_PROVIDER="groq"
  5. Run the application

    flutter run

πŸ—οΈ Project Structure

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

πŸ”§ Configuration

Firebase Setup

  1. Create a Firebase project at Firebase Console
  2. Enable Authentication with Google Sign-In
  3. Enable Cloud Firestore database
  4. Download configuration files and place them appropriately

AI Provider Setup

The app supports multiple AI providers:

GROQ (Recommended)

  1. Get API key from GROQ Console
  2. Configure in app settings or environment file

ChatGPT (Coming Soon)

  1. Get API key from OpenAI
  2. Configure in app settings

Gemini (Coming Soon)

  1. Get API key from Google AI Studio
  2. Configure in app settings

πŸ› οΈ Dependencies

Core Dependencies

  • flutter: Flutter SDK
  • firebase_core: Firebase integration
  • firebase_auth: User authentication
  • cloud_firestore: NoSQL database
  • go_router: Navigation and routing
  • provider: State management

UI & UX

  • google_fonts: Custom typography
  • gap: Spacing utilities
  • shimmer: Loading animations

Utilities

  • http: HTTP requests for AI APIs
  • flutter_dotenv: Environment variables
  • crypto: Cryptographic functions
  • intl: Internationalization

🎯 Usage

  1. Sign up/Login: Create an account or sign in with Google
  2. Configure AI Provider: Go to Settings > AI Provider and add your API key
  3. Generate Roadmap: Enter your project goal in natural language
  4. Review & Save: Review the AI-generated roadmap and save as a project
  5. Manage Projects: View and manage all your saved projects

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  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
  • Firebase for backend services
  • GROQ for AI capabilities
  • Material Design for UI guidelines

πŸ“ž Support

If you encounter any issues or have questions:

  • Create an issue on GitHub
  • Check the documentation
  • Review the troubleshooting guide

Made with ❀️ using Flutter

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published