๐ค DaJarvis - Personal AI Assistant
DaJarvis is a standalone desktop-based virtual AI assistant inspired by Marvel's Jarvis. It utilizes voice commands, AI-powered conversations, system automation, and a user-friendly PyQt5 GUI to offer an intelligent desktop experience for daily tasks.
"I am Jarvis, Sir. Your personal assistant, ready to serve."
๐ Project Structure
DaJarvis/
โโโ AIBrain.py # Handles OpenAI interaction and chat history
โโโ Functions.py # Main assistant logic and command handling
โโโ GreetMe.py # Time-based greeting system
โโโ GuiStart.py # PyQt5 GUI startup
โโโ Listen.py # Speech recognition using Google Speech API
โโโ MailSender.py # SMTP-based email sending
โโโ Main.py # Entry point for the GUI-based app
โโโ Speak.py # Text-to-speech (TTS) responses
โโโ Translatr.py # Google Translate integration
โโโ UI.py # GUI layout and widgets (PyQt5)
โโโ database/
โโโ chat_log.txt # Stores chat history for continuity
๐ง Features
- ๐ค Voice Interaction using Google Speech Recognition
- ๐ Text-to-Speech with natural-sounding responses (pyttsx3)
- ๐ฌ Conversational AI using OpenAI's GPT (text-davinci-002)
- ๐ง Email Sending using SMTP
- ๐ Web Automation (Google search, YouTube play, Stack Overflow)
- ๐ฃ๏ธ Language Translation with Google Translate
- ๐ญ Humor and Personality (jokes, emotions, custom replies)
- ๐ Battery Monitoring using
psutil
- ๐ต Music Playback from local storage
- ๐ง Self-learning Chat Log stored in
chat_log.txt
- ๐งฑ Graphical User Interface built with PyQt5
- ๐ ๏ธ Application Launcher (Notepad, Paint, Chrome, etc.)
๐ผ๏ธ GUI Preview
The GUI is minimalistic and animated using .gif
backgrounds to simulate Jarvis-like interface aesthetics.
๐ Located in
GuiStart.py
andUI.py
๐ Installation
Prerequisites
Install the following Python dependencies:
pip install -r requirements.txt
requirements.txt
content:
openai
python-dotenv
pyttsx3
SpeechRecognition
pywhatkit
wikipedia
pyjokes
psutil
pyautogui
googletrans==3.1.0a0
PyQt5
๐ Setup Environment Variables
Create a .env
file in the root directory with the following content:
OPENAI_API_KEY=your_openai_api_key
UMAIL=your_email_address
NTMP=your_app_password # Gmail App Password
๐งช Running the Application
python Main.py
Once launched:
- Press the
START
button on the GUI. - Say "Hey Jarvis" to activate the assistant.
- Speak commands such as:
- "Open YouTube"
- "Search Python on Google"
- "What's the battery percentage?"
- "Play music"
- "Send email to me"
- "Tell me a joke"
- "Introduce yourself"
- "Volume up"
๐ Security Note
Do not expose your .env
file or credentials in public repositories.
๐ก Future Enhancements
- Add support for multi-language conversation
- Integrate calendar/reminder features
- Add face recognition login or wake-up
- Enhance chat memory with database like SQLite
- Dockerize the application for cross-platform compatibility
๐ฉโ๐ป Developed By
Kishan Dev and Team
Special contributions by @kishandev2509
๐ท Screenshots
Add screenshots of the GUI interface and responses here (optional)
๐ Connect with Me
- ๐ผ GitHub: kishandev2509
- ๐ง Email: kishandevprajapati4@gmail.com
๐ Show Your Support
If you liked this project, consider giving it a โญ on GitHub!