Skip to content

Natural language virtual assistant using Node.js + Bootstrap

License

Notifications You must be signed in to change notification settings

Vincent-Zhongzhengjie/P-Brain.ai

 
 

Repository files navigation

P-Brain.ai - Voice Controlled Personal Assistant

Join the chat at https://gitter.im/P-Brain/Lobby Donate

Natural language virtual assistant using Node + Bootstrap

Screenshot

alt tag

Video Introduction To The Project

https://www.youtube.com/watch?v=4EF_qEYNNwU

Dependencies

  • Node 6
  • Python >= 2
  • Yarn / npm

Setup

Install

Install Yarn https://yarnpkg.com/en/docs/install

Clone repo, cd into its directory and type yarn & yarn start

Add api info for http://openweathermap.org/api and https://newsapi.org/account to config/index.js

Open Chrome and enter http://localhost:4567/

Say Hey Brain, Brain or Okay Brain followed by your query (i.e Hey Brain, What is the weather in Paris).

Install - Extra Windows Instructions

Install Python: https://www.python.org/downloads/windows/

Install Node.js v6: https://nodejs.org/en/download/

Install Windows Build Tools: npm install --global --production windows-build-tools

Skills

Adding Skills

Add a skill by creating a new folder with the name of your new skill and adding an index.js.

Add functions for intent and {skill_name}_resp to that index, the latter contining the logic that will respond to a query. The {skill_name}_resp function must have a response type of String

In intent add return {keywords:['key 1','key 2'], module:'{skill_name}'} where keywords are the phrases you wish the skill to respond to and {skill_name} is the name of your new skill.

Add module.exports = {intent, get: {skill_name}_resp}; to the end of your index.js

Add that new folder to the skills directory in the project.

And bang, Brain will automatically import and enable your new skill!

API

For more detail on adding skills see the Wiki page Adding Skills.

Clients

Web Client

http://localhost:4567/api/ask?q={query} http://localhost:4567/ http://localhost:4567/settings.html http://localhost:4567/users.html

Raspberry Pi Client

The Raspberry Pi Client for this project is available here: https://github.com/patrickjquinn/P-Brain.ai-RasPi

MagicMirror+P-Brain

Coming Soon!

Android Client

https://github.com/timstableford/P-BrainAndroid

iOS Client

https://github.com/patrickjquinn/P-Brain.ai-iOS

Docker

You can run this application via Docker. Prequisites are that you have docker installed and cloned this repository locally. Then execute the following command to create an docker image called p-brain and a container called p-brain.

docker build -t p-brain .
docker run --name=p-brain --net=host -v `pwd`:/home/app -v /home/app/node_modules -p 4567:4567  p-brain npm start

After doing this you can stop the container by running docker stop p-brain. Starting it again is done by running docker start p-brain.

Easter eggs

  • One can ask brain about 'trip to mordor'
  • or 'what is love'

About

Natural language virtual assistant using Node.js + Bootstrap

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 76.2%
  • HTML 16.0%
  • CSS 7.7%
  • Shell 0.1%