Skip to content

Personal Assistant for Linux and macOS

License

Notifications You must be signed in to change notification settings

vinay-kumar99/Jarvis

 
 

Repository files navigation

Jarvis

Build Status Join the chat at https://gitter.im/Sukeesh_Jarvis/Lobby

A Personal Assistant for Linux and MacOS

Jarvis

Jarvis is a simple personal assistant for Linux and MacOS which works on the terminal. 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. Stay updated about new functionalities.

Getting Started

In order to start Jarvis just clone the repository and run ./setup.sh

Run Jarvis from anywhere by command jarvis

On Mac OS X run source setup.sh

You can start by typing help within the Jarvis command line to check what Jarvis can do for you.

Youtube Video Showing Jarvis

Click here

Contributing

  • PR's are accepted!!
  • We follow PEP 8 guidelines. Before making a PR, make sure that your code is according to PEP8 standards.
  • If you have some ideas for new features and you don't have time to implement them please open an issue with the tag new_feature
  • Please don't forget to comment (document) your code

Quickstart: Create a new feature (plugin)

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

Plugins

Click here to learn more about plugins.

Creating a test

Creating a test is optionally but never a bad idea ;).

Click here to learn more about testing.

How to run tests:

Run test.sh

./test.sh

Optional Dependencies

  • Any pyttsx3 text-to-speech engine (sapi5, nsss or espeak) for Jarvis to talk out loud (e.g. Ubuntu do sudo apt install espeak)
  • Portaudio + python devel packages for voice control
  • notify-send on Linux if you want to recive nice and deskotp-notification instead of ugly popup windows (e.g. Ubuntu do sudo apt install libnotify-bin)
  • ffmpeg if you want music to download songs as .mp3 instead .webm

Docker

Run with docker (docker needs to be installed and running):

[sudo] make build_docker
[sudo] make run_docker

Authors

sukeesh

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE file for details

About

Personal Assistant for Linux and macOS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.0%
  • Other 1.0%