Skip to content

mehl/jovo-framework-nodejs

Β 
Β 

Repository files navigation

Jovo Framework

The development framework for cross-platform voice apps

Documentation - CLI - Sample App - Contributing - Twitter



app.setHandler({
    'LAUNCH': function() {
        this.toIntent('HelloWorldIntent');
    },

    'HelloWorldIntent': function() {
        this.ask('Hello World! What\'s your name?', 'Please tell me your name.');
    },

    'MyNameIsIntent': function(name) {
        this.tell('Hey ' + name.value + ', nice to meet you!');
    },
});

Jovo is the first open source framework that lets you build voice apps for both Amazon Alexa and Google Assistant with only one code base. Besides cross-platform development, Jovo also offers a variety of integrations and easy prototyping capabilities. Check out our features below.

πŸš€ Join our newsletter for free courses on voice app development: www.jovo.tech/newsletter

Table of Contents

Installation

Read more in our Getting Started Guide.

Install the Jovo CLI:

$ npm install -g jovo-cli

Create a new Jovo project:

$ jovo new <directory>

Features

General

Basic Concepts

Name Description Docs
Command Line Tools Create and run Jovo projects from your command line πŸ“
Routing Easy routing capabilities for intents and states πŸ“
Data input Deal with user specific data and request parameters (slots and entities) easily πŸ“
Speech and visual output Β  Craft your responses, including speech an visual elements πŸ“

Advanced Features

Name Description Docs
User object Create contextual experiences with user specific data and services πŸ“
Speech Builder Helpful class to create speech output and add variety to your responses πŸ“
i18n Create multilingual voice apps πŸ“
Jovo Persistence Layer Β  Β  Β  Persist user specific data πŸ“
Jovo Analytics Layer Get usage statistics and logging with analytics integrations πŸ“

Platform Specific Features

Jovo is not a common denominator solution. You can access platform specific features for Amazon Alexa and Google Assistant. See a list of supported features below.

General

Name Description Docs
Multi-platform handler Β  Β  Β  Β  Add or overwrite specific intents and states for platform specific app logic πŸ“

Amazon Alexa

Name Description Docs
Audioplayer Build Alexa Audioplayer Skills πŸ“
VideoApp Build Alexa VideoApp Skills πŸ“
Alexa Cards Create visual output with home cards for Alexa Skills πŸ“
Alexa Device Address Access users' device location πŸ“
Alexa Lists Access users' To Do and Shopping Lists πŸ“
Alexa Verifier Makes it possible to host your Alexa skill on your own server instead of AWS Lambda πŸ“
Alexa Dialog Interface Use Alexa's Dialog Directives for multi-turn conversations πŸ“
Echo Show Render Templates Display visual elements on Echo Show πŸ“
Progressive Responses Keep your users engaged while processing a longer request πŸ“

Google Assistant

Name Description Docs
Google Assistant Cards Β  Β  Β  Create visual Output for the Google Assistant mobile app πŸ“
Suggestion Chips Display buttons to allow your users to quickly reply on mobile phones πŸ“
Location Access your user's location data πŸ“

Integrations

Database Integrations

See the Jovo Persistence Layer for more information on storing user specific data.

Name Description Docs
File Persistence Β  Β  Β  Β  Saves user specific data in JSON file for fast prototyping and development (default) πŸ“
Dynamo DB Saves user specific data in AWS DynamoDB table πŸ“

Analytics Integrations

See the Jovo Analytics Layer for more information on analytics features.

Name Description Docs
VoiceLabs Voice App Analytics including Usage Metrics and Behavior Paths πŸ“
Dashbot Chatbot and Voice App Analytics including Usage Metrics, Behavior Flows, and Live Interaction Transcripts πŸ“
Bespoken Analytics Voice App Analytics including Usage Metrics, Logging, and Monitoring πŸ“

CLI Integrations

See the Jovo CLI Docs for more information on CLI features.

Name Description Docs
bst proxy Β  Β  Β  Β  Proxy service that creates a webhook link for local prototyping, with additional logging and analytics features πŸ“
nodemon Monitor changes and automatically restart the server πŸ“

Tutorials

Find a quickstart guide and comprehensive tutorials here:

Contributing

We strongly encourage everyone who wants to help the Jovo development take a look at the following resources:

Community Projects

Name Description Repository
ASK CLI Jovo Starter Template Alexa Skill starter template using ASK CLI and Jovo Framework rmtuckerphx/ask-cli-jovo-starter
Advanced Sample Voice App Advanced folder structure and improvements for more complex voice applications tjbenton/jovo-sample-voice-app-nodejs
Jovo Babel Project An example project using Jovo Framework alongside JavaScript ES6. Cawfree/jovo-babel-project

Development Roadmap

We still consider this a beta-version of the Jovo framework: We give it our all to make it as complete as possible (and it supports most of the Alexa and Google Assistant functions), but there are certain features that are currently in development.

What we're currently working on:

  • Adding more DB integrations
  • Extending the User class

We need your help

Jovo is a free, open source framework for voice developers. We're improving it every day and appreciate any feedback. How to support us? Just go ahead and build something cool with the framework and let us know at feedback@jovo.tech. Thanks!

About

πŸ”ˆ Build cross-platform voice applications for Amazon Alexa and Google Home

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%