MindEcho is an innovative accessibility tool designed to empower people with hearing and speaking disabilities during meetings. The application provides real-time meeting transcript capturing, dynamic mind map generation, and AI-powered speech autocompletion to help users actively participate in conversations.
- Real-time Processing: Automatically generates and updates mind maps as the meeting progresses
- Interactive Visualization: Click on any node to view detailed transcript segments
- Hierarchical Structure: Organizes meeting content into main topics and subtopics
- Visual Navigation: Drag, zoom, and pan through the mind map for easy exploration
- Live Transcription: Captures speech in real-time using browser's speech recognition
- Video Integration: Upload and play meeting videos with synchronized transcript display
- Time-synchronized Content: Transcript updates based on video playback position
- Auto-scrolling: Transcript automatically scrolls to show the most recent content
- Keyword-based Input: Enter keywords to express your thoughts
- Smart Suggestions: AI generates contextually relevant responses based on meeting content
- Text-to-Speech: Convert AI-generated responses to speech for verbal participation
- Context Awareness: Responses are tailored to the current meeting discussion
- Responsive Design: Clean, intuitive interface that works across different screen sizes
- Accessibility Focused: Designed with accessibility principles in mind
- Real-time Updates: Live updates without page refreshes
- Interactive Elements: Hover effects, smooth transitions, and intuitive controls
- React 19 - Modern React with latest features
- Vite - Fast build tool and development server
- Material-UI (MUI) - Component library for consistent design
- ReactFlow - Interactive node-based diagrams for mind maps
- React Speech Recognition - Browser-based speech recognition
- Axios - HTTP client for API calls
- Python - Backend scripts for transcript processing
- OpenAI API - GPT models for content analysis and generation
- JSON - Data format for structured content storage
@xyflow/react- React Flow for mind map visualizationreact-speech-recognition- Speech-to-text functionality@mui/material- UI components and themingaxios- API communication
- Node.js (version 16 or higher)
- npm or yarn package manager
- OpenAI API key
- Modern web browser with speech recognition support
-
Clone the repository
git clone <repository-url> cd Meeting_Assistant
-
Install dependencies
cd my-app npm install -
Set up environment variables Create a
.envfile in themy-appdirectory:REACT_APP_OPENAI_API_KEY=your_openai_api_key_here
-
Start the development server
npm run dev
-
Open your browser Navigate to
http://localhost:5173to view the application
If you want to use the Python scripts for transcript processing:
-
Install Python dependencies
cd backend/scripts pip install openai -
Configure API key Update the API key in
divide_text.py
- Click "Upload Video" to upload a meeting recording
- The video player will appear with playback controls
- Speech recognition will automatically start when you play the video
- The transcript section displays live speech-to-text conversion
- Content updates automatically as the video plays
- Scroll through the transcript to review previous content
- The mind map updates every 5 seconds with new content
- Click on any node to view detailed transcript segments
- Use mouse controls to zoom, pan, and navigate the map
- Nodes are color-coded and interactive with hover effects
- Enter keywords in the left panel to describe what you want to say
- Click "Organize my thoughts!" to generate AI-powered responses
- Use the "Speak" button to convert text to speech
- Responses are contextually relevant to the current meeting discussion
Meeting_Assistant/
βββ my-app/ # Frontend React application
β βββ src/
β β βββ components/ # React components
β β β βββ MindMap.jsx # Main mind map component
β β β βββ Transcript.jsx # Speech recognition & video
β β β βββ InputKeywords.jsx # Keyword input interface
β β β βββ PredictedOutput.jsx # AI response generation
β β β βββ callOpenai.js # OpenAI API integration
β β βββ assets/ # Images and static files
β β βββ App.jsx # Main application component
β βββ package.json # Dependencies and scripts
βββ backend/ # Backend processing scripts
β βββ scripts/
β βββ divide_text.py # Transcript processing
β βββ subdivide.py # Additional processing utilities
βββ README.md # This file
- Get an API key from OpenAI
- Add it to your
.envfile asREACT_APP_OPENAI_API_KEY - The application uses GPT-3.5-turbo for content generation
- Chrome (recommended for best speech recognition)
- Firefox
- Safari
- Edge
Note: Speech recognition requires HTTPS in production environments.
We welcome contributions! Please feel free to submit issues, feature requests, or pull requests.
- Follow React best practices
- Use Material-UI components for consistency
- Test speech recognition functionality across browsers
- Ensure accessibility compliance
This project is licensed under the MIT License - see the LICENSE file for details.
- OpenAI for providing the GPT API
- React Flow team for the excellent diagramming library
- Material-UI for the comprehensive component library
- The speech recognition community for browser-based solutions
For support, questions, or feedback, please open an issue in the repository or contact the development team.
MindEcho - Making meetings accessible for everyone. π―β¨