Jarvis is a voice-activated virtual assistant developed in Python.
It listens for voice commands, responds using speech, performs web-based and system tasks, fetches news, plays music, and answers user queries using an AI language model.
The assistant is activated using a wake word: βJarvisβ, similar to Alexa or Google Assistant.
- Uses the
speech_recognitionlibrary. - Continuously listens for the wake word βJarvisβ.
- Converts spoken commands into text.
- Converts responses into speech using Windows SAPI (pywin32).
- Provides natural voice feedback for all actions.
- Opens popular websites using voice commands:
- YouTube
- Plays music using a custom
musicLibrarymodule. - Opens song links in the web browser.
- Fetches latest news headlines using NewsAPI.
- Reads out top headlines using text-to-speech.
- Handles complex or unknown commands using an AI language model.
- Acts as a general-purpose assistant for questions and conversations.
- Provides brief and helpful responses.
- Opens local applications such as:
- Calculator
- VS Code
- File Explorer
- WhatsApp (if installed)
-
Initialization
- Jarvis starts and greets the user with
βInitializing Jarvisβ¦β
- Jarvis starts and greets the user with
-
Wake Word Detection
- Listens continuously for the wake word βJarvisβ.
-
Activation
- Upon detecting the wake word, Jarvis replies with βYaβ.
-
Command Processing
- Listens for the userβs command.
- Determines whether the command is:
- A fixed task (open apps, play music, fetch news)
- Or an AI-based query
-
Execution
- Performs the requested action.
- Uses AI responses if no predefined command matches.
-
Speech Output
- Responds using text-to-speech.
speech_recognitionβ Voice input recognitionwebbrowserβ Open websites via commandspywin32 (win32com.client)β Text-to-speech using Windows SAPImusicLibraryβ Custom module for music playbackrequestsβ Fetch news from NewsAPIosβ Open system applications
- Windows OS
- Python 3.9+
- Microphone
- Internet connection (for news & AI responses)
- Clone or download the repository.
- Install required libraries:
pip install speechrecognition requests pywin32 groq
- Add your API key in config.py.
- Run the program:
python main.py
- Say βJarvisβ to activate.
Developed to enhance the python skills to demonstrate:
- Voice recognition
- System automation
- AI integration
- Python programming skills
- GUI interface (Tkinter / PyQt)
- Offline wake-word detection
- Intent classification using ML
- Plugin-based command system
- Cross-platform support