A Personal Non-AI Assistant for Linux, MacOS and Windows
Jarvis is a simple personal assistant for Linux, MacOS and Windows which works on the command line. He can talk to you if you enable his voice. He can tell you the weather, he can find restaurants and other places near you. He can do some great stuff for you.
-
Entertainment & Suggestions
- Suggest activities if you're bored (
activity
,bored
) - Provide ideas on what to draw, watch, or listen to (
prompt
,top_media
,taste dive
,mood music
)
- Suggest activities if you're bored (
-
Sports Updates
- Get up-to-date sports information: team rankings, match times, player stats (
basketball
,cricket
,soccer
,tennis
)
- Get up-to-date sports information: team rankings, match times, player stats (
-
Games
- Play games: Blackjack, Connect Four, Hangman, Rock-Paper-Scissors, etc. (
blackjack
,connect_four
,guess_number_game
,hangman
,rockpaperscissors
,roulette
,tic_tac_toe
,word_game
,wordle
)
- Play games: Blackjack, Connect Four, Hangman, Rock-Paper-Scissors, etc. (
-
Health & Fitness
- Access nutrition facts, recipes, workout programs, and health trackers (
bmi
,bmr
,calories
,food recipe
,fruit
,fruit nutrition
,workout
)
- Access nutrition facts, recipes, workout programs, and health trackers (
-
Cocktail Recipes
- Learn how to make cocktails (
cocktail
,drink
)
- Learn how to make cocktails (
-
Random Generators
- Generate random lists, numbers, passwords (
random list
,random number
,random password
)
- Generate random lists, numbers, passwords (
-
Unit Conversions
- Convert units: binary, currency, hex, length, mass, speed, temperature, time (
binary
,currencyconv
,hex
,lengthconv
,massconv
,speedconv
,string_convert
,tempconv
,timeconv
)
- Convert units: binary, currency, hex, length, mass, speed, temperature, time (
-
Photography
- Take pictures and screenshots (
open camera
,screencapture
)
- Take pictures and screenshots (
-
System Information
- Get computer specifications (
battery
,cat his
,dns forward
,dns reverse
,hostinfo
,ip
,scan_network
,speedtest
,os
,check ram
,systeminfo
)
- Get computer specifications (
-
File Management
- Manage and organize files (
file manage
,file organize
)
- Manage and organize files (
-
Image Processing
- Upload, edit, and convert images (
imgur
,image to pdf
,image compressor
)
- Upload, edit, and convert images (
-
PDF Conversion
- Convert webpages to PDF or PDFs to images (
htmltopdf
,pdf to images
)
- Convert webpages to PDF or PDFs to images (
-
Jokes & Facts
- Enjoy jokes and random facts (
dadjoke
,joke daily
,joke chuck
,joke
,fact
,cat fact
)
- Enjoy jokes and random facts (
-
Calculations
- Perform calculations and solve equations (
calculate
,factor
,solve
,equations
,plot
,matrix add
)
- Perform calculations and solve equations (
-
QR Code Generation
- Generate QR codes for URLs (
qr
)
- Generate QR codes for URLs (
-
Weather Updates
- Check the weather forecast (
weather report
)
- Check the weather forecast (
-
Language Translation
- Translate languages (
translate
)
- Translate languages (
-
Stock Market Information
- Display stock and cryptocurrency information (
stock
,cryptotracker
)
- Display stock and cryptocurrency information (
-
Clone the Repository
git clone https://github.com/sukeesh/Jarvis.git
-
Run the installer
python installer
If that doesn't work, try:
python3 installer
-
Run Jarvis from anywhere:
jarvis
Or from within the project folder:
./jarvis
You can start by typing help
within the Jarvis command line to check what Jarvis can do for you.
Question:
When I run Jarvis, it shows an error relating to module not found
Platform:
Windows
Solution 1: Uninstall and/or install the module package.
Example:
Error: ImportError: DLL load failed while importing win32api: The specified module could not be found.
Solution:
pip uninstall pywin32
pip install pywin32
or conda install pywin32
Solution 2: add the package to your environment variables system PATH.
Question: After cloning the repo in terminal it gives an error when running python3 installer saying please install virtual environemnt.
Solution:
-
Install virtual env using this command:
python3 -m pip install virtualenv
-
OR: On Linux use package manager (e.g. Ubuntu sudo apt install python3-venv)
-
Restart Installer
If you find other issues and/or have found solutions to them on any platform, please consider adding to this list!
Check out our CONTRIBUTING.md to learn how you can contribute!
Create new file custom/hello_world.py
from plugin import plugin
@plugin("helloworld")
def helloworld(jarvis, s):
"""Repeats what you type"""
jarvis.say(s)
Check it out!
./jarvis
Jarvis' sound is by default disabled.
In order to let Jarvis talk out loud type: enable sound
Type 'help' for a list of available actions.
~> Hi, what can I do for you?
helloworld Jarvis is cool!
jarvis is cool
Click here to learn more about plugins.
Creating a test is optional but never a bad idea ;).
Click here to learn more about testing.
Run test.sh
./test.sh
- Any pyttsx3 text-to-speech engine (
sapi5, nsss or espeak
) for Jarvis to talk out loud (e.g. Ubuntu dosudo apt install espeak
) - Portaudio + python-devel packages for voice control
notify-send
on Linux if you want to receive nice and desktop-notification instead of ugly pop up windows (e.g. Ubuntu dosudo apt install libnotify-bin
)ffmpeg
if you wantmusic
to download songs as .mp3 instead of .webm
Run with docker (docker needs to be installed and running):
[sudo] make build_docker
[sudo] make run_docker
sukeesh
See also the list of contributors who have participated in this project.
This project is licensed under the MIT License - see the LICENSE file for details.