AI Study Companion is a powerful Flutter application that leverages artificial intelligence to enhance your learning experience. The app allows users to upload various document types (PDF, DOC, TXT, JPG, PNG) and receive AI-generated summaries and interactive quizzes based on the content.
Simulator.-.iPhone.15.-.5.February.2025.mp4
https://67a4df0dd9f4e12a8327e0d3--stellular-marigold-95229f.netlify.app
-
Document Processing
- Support for multiple file formats (PDF, DOC, TXT, JPG, PNG)
- Upload up to 5 files simultaneously
- AI-powered document summarization
- Text extraction from images using OCR
-
AI-Powered Learning
- OpenAI GPT-3.5 and GPT-4 integration
- Intelligent document analysis
- Dynamic quiz generation
-
Advanced Technology Stack
- Vector similarity search using Pinecone
- Multi-agent system with Langgraph
- Real-time processing and analysis
- OCR for text extraction with @google-cloud/vision
- BLoC pattern for state management
- File handling and processing
- Real-time communication with backend
- OpenAI integration
- Pinecone vector database
- Multi-agent system using Langgraph
- Document processing pipeline
- Flutter SDK (>=3.4.3)
- Node.js (Latest LTS version)
- OpenAI API Key
- Pinecone API Key and Index
- Clone the repository:
git clone
- Navigate to the mobile app directory:
cd
- Install dependencies:
flutter pub get
- Navigate to the server directory:
cd
- Install dependencies:
npm install
- Create a
.env
file in the server root with the following variables:
Create account in Google Cloud and download the JSON file
GOOGLE_APPLICATION_CREDENTIALS_JSON = {YOUR GOOGLE APPLICATION CREDENTIALS JSON}
- Start the server:
npx tsx server.ts
- Update the server URL in the Flutter app:
- Open
mobile/lib/services/api_service.dart
- Update the
baseUrl
to match your server address
- Open
.
├── mobile/ # Flutter application
│ ├── lib/ # Dart source files
│ ├── assets/ # App resources
│ └── pubspec.yaml # Flutter dependencies
│
└── server/ # Backend server
├── services/ # Business logic
├── routes/ # API endpoints
├── tools/ # Utility scripts
└── package.json # Node.js dependencies
- flutter_ai_toolkit: ^0.6.8
- flutter_bloc: ^9.0.0
- file_picker: ^8.1.7
- flutter_chat_ui: ^1.6.15
- http: ^1.3.0
- And more (see pubspec.yaml)
- @langchain/openai: ^0.3.14
- @langchain/pinecone: ^0.1.3
- @google-cloud/vision: 4.3.2
- express: ^4.21.1
- typescript: ^5.7.2
- And more (see package.json)
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a new Pull Request
This project is licensed under the MIT License - see the LICENSE.txt file for details.
Created by Oleksandr Samoilenko
Extrawest.com, 2025