We're constantly asking each other about important metrics we need to keep our business running. These interruptions cost us time and money. Wouldn't it be nice if we could ask a colleague and not having to worry about interrupting them? What if we could build that colleague?

What it does

Brainbot provides a unified conversational interface to multiple services, so you can get answers across your important metrics - and combine them.

How I built it

A PHP back-end with OAuth connections to external services, running on Google Cloud. Bots connect to Slack via websockets. Language is processed using Stanford's NLP tools. Oh, and there's a text to speech interface, because why not?

Challenges I ran into

Domain names were slow to transfer; getting bots up and running quickly was hard. Maintaining multiple bots as a service is difficult.

Accomplishments that I'm proud of

A simple natural language interface; free-text date extraction; oauth interfaces to external services.

What I learned

This is a bigger job than can easily be done over a weekend.

What's next for Brainbot

There wasn't enough time to build it all over a weekend. More services, more nuance to the NLP, more, different kinds of interfaces.

Share this project: