The Botfront is a complete conversational platform built with RASA as the engine. Because this platform is based on RASA, a good knowledge of this nlu engin is required
The Botfront provides intuitive interfaces to easily create and manage virtual assistants, without using the yaml files generated by RASA.
In this blog, we will show you the different features of the platform. We will also mention the perspectives highlighted by Baamtu, before giving you our feedback on this platform.
Components
The different components we will deal with are the following:
- Nlu
- Stories and Rules
- Incoming
- Analytics
- Responses
We will also talk about the docker part and the management of the action.py file.
NLU component

As we mentioned, this platform allows easy interaction with the bot. It is therefore natural that components related to training data, responses and rules & stories are included.
The first component we will talk about is about training data and intentions.
Indeed, in the NLU component, it is easy to add an intention, some training data and an entity related to an intention.

This component also offers a more detailed view of the bot’s skills, by showing for example the number of training data, the number of intentions and other statistics as shown in the image below :
Above, another aspect of the component allows the evaluation of an entry against the different training data registered.
The botfront also offers a dynamic interface that permit you to chat with the bot. This is different from rasa x, or rasa shell.
Stories & Rules component
The Stories and Rules component makes it easy to manage the different scenarios that the bot could face.

Incoming component
This last one allows to have statistics about the conversations, listing the conversations, the requested forms and the evaluation of the different inputs that the bot had to analyze.

Responses component
This component simply allows the management of the bot’s responses.

Docker and Settings
We thought it was important to write about this docker part, which is very important for the botfront, despite the fact that it is not illustrated in this platform. Indeed, the botfront acts simultaneously with 5 docker images as shown in the picture below:
One image is for the RASA server, one for the actions.py file, one for the storage in a mongo database, one for the ducking library and one for the platform.
The settings component allows the management of the domain, endpoints and credential files of the bot, the management of imports and exports of the bot, as well as the control of its git aspects and of some display parameters of the platform.
Analytics component
This component completes the incoming component, in the processing of information on the different conversations that the bot has had with its different users .

Actions.py
As it is mentioned in the documentation ( https://botfront.io/docs/rasa/custom-actions ) the actions.py file, thanks to its docker image, acts directly with the botfront. Indeed, when initializing a project with botfront init, an actions folder is created and the actions server is automatically started with botfront up. We can use botfront watch to rebuild and restart the action server .

Perspectives
After exploring the botfront source code, available on Github, Baamtu raised 2 important aspects:
1) The different bots of the server are installed on a RASA server. This can be problematic in case the platform has to deal with a hundred bots for example .
2) Because Facebook has open sourced the WhatsApp API, it is possible to deploy a bot on WhatsApp without going through Twilio.
Conclusion
Despite the fact that the bot is no longer maintained since 2020, this platform has not lost any of its charm and elegance. Baamtu has enjoyed using this platform to manage its various chatbots and is thinking of improving this platform to be more up to date.