Overview

Shortcuts

What is Roo?

Roo is a collection of software services. It's purpose is to help, remind, and encourage clients of financial coaching services. Roo is also the name of the chatbot character inlcuded in the platform. Check out this deck and this video for more details on how it works and what it does.

Roo was created in 2018 by IDEO.org. It is an open-source project under the MIT license.

Project Status

The project is open-sourced and publicly available but not easily deployed without developer support. Organizations who wish to use Roo are encouraged to do so, but we are unable to provide 1:1 support beyond these documents at this time.

Our current roadmap includes:

Phase One

   Q4, 2018 - Q1, 2019
  • Continued pilot
  • Feature development
  • Impact analysis

Phase Two

   Q1 - Q3, 2019
  • Continued funding
  • Future features design (funding dependent)
  • Public launch
  • CRM integration (funding dependent)

Chatbot

The chatbot handles messages to/from the client via SMS or Facebook messenger. It is not a very bright bot. It can only handle responses that are hardcoded into the bot's scripts. There is no natural language processing, machine-learning, or AI.

In addition to handling text-based conversations, the chatbot runs routines at regular intervals to send check-ins, story content, and reminders to clients.

The chatbot is based on the Botkit framework. It is a Node server that works with Twilio and Facebook APIs. In our case, it is hosted on Heroku.

Full documentation can be found at the bot's Github repo and in this presentation.

.

Coach Application

The coach application is used by the coach in a coaching session to create a digital workplan for their client. This workplan is saved to the database and is read by the bot when sending check-ins and reminders to the client.

The coach application is a React/Redux application and is hosted on the same instance as the database (in our case, on Heroku).

Full documentation of the application can be found at application's Github repo.

Database

The database stores data related to clients and their workplans. It is not connected to any other data sources such as a CRM. It does not hold financial data such as credit scores or bank account information.

The primary purpose of the database is to store workplans for clients. These are the basis of the chatbot's interactions. Additionally, it stores records of all messages sent through the chatbot, story content, and basic data about coaches and the organizations they work for (name, email, etc).

The database was built as a Node server running Express on top of a Postgres database. NOTE: the database code is in the same Github repo as the coach application and are usually run simulateously. It appears in the directory named "api" within the "src" directory.

Contact

Please check the FAQ. If you question is not answered there, you can email us at roo@ideo.org