In this section, you will learn more about the project structure of a Jovo Voice App.
- Project Files
- Source Files
A Jovo project is divided into two main building blocks:
- Project Files: Overall project related files, e.g. language models and platform project information
- Source Files: The actual code of your app. Can be found in the
These files are in the root folder and include anything that is needed to publish a project to voice platforms like Amazon Alexa and Google Assistant.
Project files include:
project.js file stores all the necessary information for your Jovo project, for example which voice platforms are built for.
Here is the
project.js file of the Jovo Sample App:
The idea is to maintain a single language model locally instead of having to go to the platform developer consoles independently.
models folder, every language gets a file. For example, here's how a file
en-US.json could look like:
platforms folder is created by the Jovo CLI. Each platform (like Amazon Alexa and Google Assistant) gets its own folder with project files and language models. These files are then used to deploy the projects to the voice platforms.
src folder, you can find the actual code of your Jovo app. This part is later deployed to hosting providers like AWS Lambda.
app.js file is used for the logic of your voice application, which contains handlers, intents, and the configuration of your voice app:
config.js file stores all the logic-related configuration:
Everything related to running and hosting your voice application, either in Lambda or using a webhook (recommended for local prototyping), is dealt with in