# Glossary

Some terms in the docs might be unknown to you; this section should help you achieve a better understanding of these words and how they relate to Leon.

# Actions 1.0.0-beta.3+

Actions represent the modules entry points.

Attachment: packages/calendar/todolist.py (opens new window) example of the To-Do List module including actions such as create_list, complete_todo, etc.


API stands for Application Programming Interface and it allows the communication between different nodes of a project. These nodes can be a server, library, etc.

Examples of Leon APIs:


ASR or Automatic Speech Recognition is the use of computer hardware and software-based techniques to identify and process human voice.

Leon uses it to make your voice understandable for him.


# Answers

Answers are Leon's responses. Each package has its own set of answers with different translations.

Attachment: packages/checker/data/answers/en.json (opens new window) example of the Checker package English answers.

# Brain

Leon's brain is a major part of his core. This is where he executes his modules, talks, picks up sentences, etc.

Attachment: server/src/core/brain.js (opens new window) Leon's brain.

# Classifier

A classifier is a type of model. Once trained, it outputs a result via an algorithm. This result is used to make decisions.

Leon uses it to store the outcomes of his expressions training phase.

# Expressions

Expressions are the dataset that Leon uses to train his understanding. Each package has its own dataset with different translations.

Attachment: packages/checker/data/expressions/en.json (opens new window) example of the Checker package English expressions.

# Modules

Modules are Leon's skills; thanks to them Leon can work his magic. Modules contain one or an infinity of actions.


The more modules Leon has, the more skillful he becomes. Do not hesitate to contribute (opens new window) ❤️


NLU (Natural Language Understanding) helps computers understand human language.

Leon employs it to load the most appropriate classifier.

Attachment: server/src/core/nlu.js (opens new window) Leon's NLU.

# Packages

Leon's packages contain one or an infinity of modules. You can consider packages as a category of modules. This is where the answers and expressions are stored.

Attachment: packages/leon (opens new window) example of the Leon package including modules related to Leon himself.


The full package list is available here (opens new window).


STT, or Speech-To-Text, transforms an audio stream (speech) to a string (text).

Leon has multiple STT parsers; you can choose one (or several) to configure.

Attachment: server/src/stt/stt.js (opens new window) Leon's STT.

# Synchronizer

The synchronizer allows you to synchronize your content via different methods (Google Drive, on your current device, etc.) restricted by the requested module's offerings.

You can configure your favorite method for each module that supports this feature.

Attachment: server/src/core/synchronizer.js (opens new window) Leon's synchronizer.


TTS or (Text-To-Speech) transforms a string (text) to an audio stream (speech).

Leon has multiple TTS synthesizers; you can choose one (or several) to configure.

Attachment: server/src/tts/tts.js (opens new window) Leon's TTS.