jovo-framework

? Build cross-platform Voice Apps for Amazon Alexa and Google Assistant

Github星跟踪图

Jovo Framework

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

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

    MyNameIsIntent() {
        this.tell('Hey ' + this.$inputs.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.

The main features of the Jovo ecosystem are:

  • Jovo Framework: Build voice apps for both Amazon Alexa and Google Assistant
  • Jovo CLI: Create, build, and deploy Jovo projects (including staging)
  • Jovo Webhook: Develop and debug voice apps on your local computer
  • Jovo Debugger: Test and debug voice apps in your browser
  • Jovo Language Model: A consolidated language model that can be converted into Alexa Interaction Models and Dialogflow Agents

? 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:

# Default: Create new JavaScript project
$ jovo new <directory>

# Alternative: Create new TypeScript project
$ jovo new <directory> --language typescript

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
:---, :---, :---
Input Validation, Define and execute different methods of validation for your user's inputs, ?
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, ?
Staging, Create and maintain different environments, ?
Plugins, Extend the Jovo Framework without having to mess with its core code and architecture, ?
Testing, Use the Jovo TestSuite to integrate unit tests into your voice app project, ?

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.

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, ?
Skill Events, Get notified when an event (e.g. Skill enabled/disabled) occurs, ?
CanFulfillIntentRequest, Add name-free interaction to your skill and increase your skill's discoverability, ?
Game Engine, Provides the toolset to receive Echo Button events, ?
Gadget Controller, Allows you to control the user's Echo Buttons, ?
In-Skill-Purchasing (ISP), Allows you to sell premium content, ?
Amazon Pay, Sell physical goods and services through Alexa, ?
Reminders API, Allows you to set reminders for your user, ?
Settings API, Allows you to get your user's settings information, ?
Proactive Events API, Send proactive events,which work as notifications, to your user, ?
Playback Controller, Process audio player requests coming from, for example, touch controls on Alexa-enabled devices, ?

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, ?
Media Response, Play longform audio, ?
Push Notifications, Send push notifications to your users, ?
Transactions, Sell digital and physical goods in your Google Actions, ?

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, Save user specific data in AWS DynamoDB table, ?
MongoDB, Save user specific data in a MongoDB database, ?
MySQL, Save user specific data in a MySQL database, ?
Google Datastore, Save user specific data using Google Datastore, ?
Azure Cosmos DB, Save user specific data using Azure CosmosDB, ?
Google Firestore, Save user specific data in a NoSQL database by Google Firebase, ?

Analytics Integrations

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

Name, Description, Docs
:---, :---, :---
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, ?
Chatbase, Voice App Analytics including Usage Metrics, Session Flows and Link Tracking, ?
Botanalytics, AI powered Chatbot Analytics and Voice Analytics, ?
VoiceHero, Voice App Analytics including actionable insights, session tracking, custom events, cohorts, usage data and behavior flows to immediately improve in-app experience, ?

CMS Integrations

Name, Description, Docs
:---, :---, :---
Google Sheets, Manage content in a Google Spreadsheet, ?
Airtable, Manage content using Airtable, ?

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:

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!

主要指标

概览
名称与所有者jovotech/jovo-framework
主编程语言TypeScript
编程语言JavaScript (语言数: 4)
平台
许可证Apache License 2.0
所有者活动
创建于2017-05-28 22:52:45
推送于2025-04-24 08:37:14
最后一次提交
发布数638
最新版本名称2024-06-12-patch (发布于 )
第一版名称v0.1.0 (发布于 )
用户参与
星数1.7k
关注者数58
派生数306
提交数7.8k
已启用问题?
问题数447
打开的问题数23
拉请求数1015
打开的拉请求数6
关闭的拉请求数174
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?