A comprehensive Python-based AI assistant inspired by Tony Stark's JARVIS, featuring voice recognition, face recognition, GUI interface, and various automation capabilities.
- Voice Recognition & Speech Synthesis - Natural language interaction with text-to-speech capabilities
- Face Recognition - Secure user authentication and identification
- GUI Interface - Modern PyQt-based graphical user interface
- Email Integration - Send and manage emails through voice commands
- Web Automation - Control various web applications and services
- Weather Updates - Real-time weather information
- News Integration - Latest news updates through API
- YouTube Integration - Search, play, and download videos
- Google Maps Integration - Navigation and location services
- WhatsApp Automation - Send messages through voice commands
- Gmail Integration - Email management and composition
- Gesture Control - Hand gesture recognition for system control
- Object Detection - Computer vision for object identification
- File Search - Intelligent file searching and management
- System Control - OS-level operations and application management
- Brightness & Volume Control - System parameter adjustments
- Scheduled Tasks - Reminders and alarms functionality
- Multi-user Support - Individual user profiles and authentication
- Voice Authentication - Speaker verification for added security
- Face Recognition Login - Biometric authentication system
- User Registration - New user signup and profile creation
- Python 3.7 or higher
- Webcam (for face recognition)
- Microphone (for voice commands)
- Internet connection (for web services)
Install the required packages using pip:
pip install -r requirements.txtKey dependencies include:
- PyQt5/PyQt6 (GUI framework)
- OpenCV (Computer vision)
- SpeechRecognition (Voice processing)
- pyttsx3 (Text-to-speech)
- face_recognition (Face detection and recognition)
- requests (API communication)
- selenium (Web automation)
- pywhatkit (WhatsApp automation)
# Clone the repository
git clone <https://github.com/harriik/Jarvis.git>
cd jarvis-ai-assistant
# Install dependencies
pip install -r requirements.txt
# Run the main application
python jarvisMAIN.py- Launch the application
- Click "New User" to register
- Complete face registration for biometric login
- Configure voice settings and preferences
- Use face recognition for quick login
- Alternative: Username/password authentication
- Voice authentication for enhanced security
jarvis-ai-assistant/
โโโ JarvisGUI/ # Main GUI application
โ โโโ jarvisMAIN.py # Primary application entry point
โ โโโ loginWindowGUI.py # Login interface
โ โโโ signUpGUI.py # User registration
โ โโโ FaceRecogGUI/ # Face recognition modules
โโโ Gesture Control/ # Hand gesture recognition
โโโ FaceRecognition.py # Core face recognition
โโโ AdvancedSpeech.py # Speech processing
โโโ WeatherUpdates.py # Weather API integration
โโโ NewsApi.py # News service integration
โโโ web_*.py # Web automation modules
โโโ Email.py # Email functionality
โโโ requirements.txt # Project dependencies
- "Hello Jarvis" - Wake up command
- "What's the weather?" - Get weather updates
- "Send email to [contact]" - Email composition
- "Play [song] on YouTube" - Music playback
- "Open [application]" - Launch applications
- "Set reminder for [time]" - Schedule reminders
- Dashboard - Central control panel
- Settings - Customize preferences and configurations
- User Management - Add/remove users and manage profiles
- Voice Training - Improve speech recognition accuracy
- System Monitor - View system status and performance
- Hand gestures for volume control
- Navigation gestures for presentations
- System control through hand movements
Configure the following API keys in your environment or config files:
- Weather API (OpenWeatherMap)
- News API
- Google Maps API
- Email service credentials
- Adjust speech rate and volume
- Select voice gender and accent
- Configure wake word sensitivity
- Register multiple faces per user
- Adjust recognition threshold
- Configure fallback authentication
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Inspired by Marvel's JARVIS AI assistant
- Built with Python and open-source libraries
- Thanks to the computer vision and speech recognition communities
- Smart home integration (IoT devices)
- Natural language processing improvements
- Mobile app companion
- Cloud synchronization
- Advanced machine learning capabilities
- Multi-language support
"Sometimes you gotta run before you can walk." - Tony Stark