Skip to content

vedanth-raj/Meeting-assistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Voice Meeting Assistant

A fully functional web-based Voice Meeting Assistant that performs live speech-to-text transcription, generates meeting summaries, and extracts action items using free, open-source libraries.

Features

  • Record voice input from microphone
  • Transcribe speech to text using OpenAI Whisper (open-source)
  • Generate summaries using Hugging Face T5-small model
  • Extract action items from transcripts
  • Save meetings locally in JSON format
  • Export summaries as PDF
  • View past meetings

Tech Stack

  • Backend: FastAPI (Python)
  • Frontend: React.js
  • Transcription: OpenAI Whisper (openai-whisper)
  • Summarization: Hugging Face Transformers (t5-small)
  • Storage: Local JSON files

Installation and Setup

Prerequisites

  • Python 3.8+
  • Node.js 14+
  • Git

Backend Setup

  1. Navigate to the backend directory:

    cd backend
    
  2. Install Python dependencies:

    pip install -r requirements.txt
    
  3. Run the backend server:

    uvicorn app:app --reload
    

    The backend will be running on http://localhost:8000.

Frontend Setup

  1. Navigate to the frontend directory:

    cd frontend
    
  2. Install Node.js dependencies:

    npm install
    
  3. Start the React development server:

    npm start
    

    The frontend will be running on http://localhost:3000.

Usage

  1. Open your browser and go to http://localhost:3000.
  2. Click "Start Recording" to begin recording your voice.
  3. Click "Stop Recording" to end the recording and transcribe the audio.
  4. Click "Summarize" to generate a summary and extract action items.
  5. Click "Save Meeting" to store the meeting data locally.
  6. View past meetings in the "Past Meetings" section.
  7. Export summaries as PDF using the "Export as PDF" button.

Project Structure

voice-meeting-assistant/
├── backend/
│   ├── app.py
│   ├── requirements.txt
│   ├── models/
│   │   ├── summarizer.py
│   │   └── whisper_transcriber.py
│   ├── utils/
│   │   └── storage.py
│   └── data/
│       └── meetings.json
├── frontend/
│   ├── package.json
│   ├── public/
│   ├── src/
│   │   ├── App.js
│   │   ├── components/
│   │   │   ├── Recorder.js
│   │   │   ├── TranscriptDisplay.js
│   │   │   └── SummaryDisplay.js
│   │   ├── api.js
│   │   └── index.js
└── README.md

API Endpoints

  • POST /transcribe: Transcribes uploaded audio file
  • POST /summarize: Generates summary and action items from transcript
  • POST /save_meeting: Saves meeting data
  • GET /get_meetings: Retrieves all saved meetings

Notes

  • All processing is done locally; no data is sent to external servers.
  • First run may take longer due to model downloads.
  • Ensure microphone permissions are granted in the browser.
  • The app is designed for short recordings; long meetings may require optimization.

License

This project uses open-source libraries and is free to use.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors