0.1.0 • Published 5 years ago

mindstack v0.1.0

Weekly downloads
1
License
ISC
Repository
github
Last release
5 years ago

Mind Stack

A powerful and flexible bot framework for building bots without restrictions

Introduction

Read the docs, have a look at our examples, or see the list of repositories that power this project.

Why choose between coding and configuration when you can have both. Configure your services (discord, slack, etc), and code your logic.

This framework provides structuring and guidelines to allow the user to write there own use cases with tools they need readily available.

THIS IS AN ONGOING PROJECT, DOCUMENTATION WILL BE UPDATED AS THE PROJECT PROGRESSES

Getting started

You can take a look at our docker box or CLI tool. Otherwise you will need the following setup and ready to go, then your ready for installation:

Installation

Create a new git repository for your bot instance and setup a node project using npm init inside the repo.

Now create an empty file called bot.js and install Mind Stack:

NPM

    npm i -S mindstack

Yarn

    yarn add mindstack

Now you need to make sure you have a RabbitMQ server setup with a queue/exchange called mindstack:

Fresh install (Ubuntu)

  apt-get install rabbitmq-server
  service rabbitmq-server start
  rabbitmq-plugins enable rabbitmq_management
  rabbitmqadmin declare queue name=mindstack durable=false

Only creating the queue (Preexisting RabbitMQ install)

  rabbitmqadmin declare queue name=mindstack durable=false

Usage

Node (bot.js)

    const MindStack = require('mindstack');

    let botInstance = new MindStack();

Command line

  node bot.js

See docs for giving your bot functionality and features

Repositories

There are several repositories used to add functionality or work with Mind Stack. They are listed categorically below (send a request if you want to add your own repositories)

Adapters

  • Alexa - Alexa adapter for Mind Stack
  • Discord - Discord adapter for Mind Stack
  • Mail - Mail adapter for Mind Stack
  • Slack - Slack adapter for Mind Stack
  • Terminal - Terminal adapter for Mind Stack

Bot instance

  • Mind Stack - A powerful and flexible bot framework for building bots without restrictions

Data services

  • Data bite - ES6 simplified class for consuming data from an external service

Frameworks

  • High tech - A framework for building skills/applications for bleeding edge tech devices

Lexicon

  • Lemme Lex - A library for creating dictionaries that can be utilised by NLP tools
  • Consent lex - A lexicon for giving or declining consent (yes and no)
  • Salutation lex - A lexicon for arrival and departure salutations

Payment

  • Payment provider - Abstraction class for handling payments from multiple providers using common methods
  • VC PP - Virtual currency payment provider
  • Alexa PP - Alexa Payment provider

Recognisers

  • Eduir - Educated intent recogniser
  • Molir CLI - Molir (A.k.a Most Likely/Obvious Intent Recogniser) command line tool

Scaffolding

Skillsets

  • Basic skillset - A basic skillset for a bot that can say hello and goodbye in many different ways
  • Store skillset - Sell products and services, ecommerce using natural language

Transformers

  • Sanitize mail - A sanitize-html wrapper optimised for sanitising HTML for email clients
  • Strip mentions - Strip \@mentions from a string using a default or custom handle style
  • Turndown SSML - A Turndown plugin to convert SSML into markdown files
  • Verbose Utterance - Interprete/compile *.utter files for creating a verbose library of utterances

Virtual machines

  • Brain box - Docker machine for running Mind Stack instance