This project is a Voice Assistant built using Python. It integrates speech recognition, text-to-speech, and various system-level functionalities to provide a seamless user experience. The assistant can perform tasks like fetching weather information, opening applications, reading notifications, and answering general questions using Google Search.
- Speech Recognition: Uses the
speech_recognition
library to convert spoken commands into text. - Text-to-Speech: Utilizes the
pyttsx3
library to convert text responses into speech. - Google Search Integration: Redirects user queries to Google Search and reads the results aloud.
- System Integration: Can open files, folders, and applications, and provide system information (e.g., CPU and memory usage).
- Notification Detection: Detects and reads notifications from apps like WhatsApp and Chrome.
- Welcome and Goodbye Messages: Greets the user when the application starts and says goodbye when it closes.
- Dynamic Weather Updates: Fetches weather information using Google Search.
- Multi-threading: Uses threading to handle tasks like notification detection without blocking the main application.
- Customizable GUI: Built using the
customtkinter
library for a modern and user-friendly interface. - Error Handling: Provides meaningful error messages for invalid commands or system issues.
- Python: The core programming language used for development.
- SpeechRecognition: For converting speech to text.
- pyttsx3: For converting text to speech.
- customtkinter: For creating a modern and customizable GUI.
- requests: For making HTTP requests to fetch Google Search results.
- BeautifulSoup: For parsing HTML content from Google Search results.
- psutil: For fetching system information like CPU and memory usage.
- plyer: For detecting and reading notifications.
- threading: For handling background tasks like notification detection.
-
Speech Recognition:
- The assistant listens to the user's voice command using the microphone.
- The
speech_recognition
library converts the audio into text.
-
Command Execution:
- The assistant processes the text command and executes the corresponding function.
- For example, if the user says, "What is the weather in Kolkata?", the assistant redirects to Google Search and reads the weather information.
-
Text-to-Speech:
- The assistant uses the
pyttsx3
library to convert the response into speech and reads it aloud.
- The assistant uses the
-
System Integration:
- The assistant can open files, folders, and applications using the
os
andsubprocess
libraries. - It can also fetch system information like CPU and memory usage using the
psutil
library.
- The assistant can open files, folders, and applications using the
-
Notification Detection:
- The assistant uses the
plyer
library to detect notifications from apps like WhatsApp and Chrome. - It reads the notification content aloud using the
pyttsx3
library.
- The assistant uses the
-
Multi-threading:
- Background tasks like notification detection are handled using the
threading
library to ensure the main application remains responsive.
- Background tasks like notification detection are handled using the
- Clone the repository:
git clone https://github.com/your-username/voice-assistant.git