<commit_before>![Discordinator Logo](http://i.imgur.com/sQUmvOw.png)
---
[![Build Status](https://drone.io/github.com/alphahelix00/Discordinator/status.png)](https://drone.io/github.com/alphahelix00/Discordinator/latest)
[![](https://jitpack.io/v/alphahelix00/Discordinator.svg?style=flat-square)](https://jitpack.io/#alphahelix00/Discordinator)

A modular command framework for Discord bots.

## About

**define:** _**Discordinator**_ = *[Discord](https://discordapp.com/)* + *[Ordinator](https://github.com/alphahelix00/Ordinator)* (one who ordains or decrees)

Discordinator is a modularized command framework, created with the purpose of handling the processing and execution of user defined commands for Discord bots.

#### Functionality
The command framework within Discordinator is an extension to *Ordinator*, which is roughly based on the Command Design Pattern by abstracting executable commands from the client.
The two important classes within Discordinator:
- `CommandRegistry class` *(the command bank)*
  - Storage of all commands
- `CommandHandlerD4J class` *(the ordinator, a Discord4J implementation of AbstractCommandHandler from Ordinator)*
  - Validate and parse message Strings for command calls
  - Calls upon the registry to register and execute commands (annotated methods / CommandBuilder / Command class extension)

**Please see [Ordinator](https://github.com/alphahelix00/Ordinator) for more information regarding what's included and how to use.**

## How to use

#### Loading into a Discord4J bot

There are two ways of having Discordinator load into a Discord4J bot:

1. As an external module (easiest)
2. As an internal project dependency for your bot (if you want to have Discordinator as an innate part of your bot)

To load externally as a module, the Discord4J implementation includes an `IModule` implementation called `DiscordinatorModule` which will be automatically loaded by a Discord4J bot if the .jar file is placed in the 'modules' folder of the bot (see [Releases](https://github.com/alphahelix00/Discordinator/releases) section for the .jar files, or compile your own dev branch snapshot)<commit_msg>updated README.md with release v1.2.0<commit_after>![Discordinator Logo](http://i.imgur.com/sQUmvOw.png)
---
[![Build Status](https://drone.io/github.com/alphahelix00/Discordinator/status.png)](https://drone.io/github.com/alphahelix00/Discordinator/latest)
[![](https://jitpack.io/v/alphahelix00/Discordinator.svg?style=flat-square)](https://jitpack.io/#alphahelix00/Discordinator)

## About

**define:** _**Discordinator**_ = *[Discord](https://discordapp.com/)* + *[Ordinator](https://github.com/alphahelix00/Ordinator)* (one who ordains or decrees)

Discordinator is a fast, modularized command framework created with the purpose of handling the processing and execution of user defined commands for Discord bots.

#### Functionality
The command framework within Discordinator is an extension to *Ordinator*, which is roughly based on the Command Design Pattern by abstracting executable commands from the client.
The two important classes within Discordinator:
- `CommandRegistry class` *(the command bank)*
  - Storage of all commands
- `CommandHandlerD4J class` *(the ordinator, a Discord4J implementation of AbstractCommandHandler from Ordinator)*
  - Validate and parse message Strings for command calls
  - Calls upon the registry to register and execute commands (annotated methods / CommandBuilder / Command class extension)

**Please see [Ordinator](https://github.com/alphahelix00/Ordinator) for more information regarding what's included and how to use.**

## How to use

#### Loading into a Discord4J bot

There are two ways of having Discordinator load into a Discord4J bot:

1. As an external module (easiest)
2. As an internal project dependency for your bot (if you want to have Discordinator as an innate part of your bot)

To load externally as a module, the Discord4J implementation includes an `IModule` implementation called `DiscordinatorModule` which will be automatically loaded by a Discord4J bot if the .jar file is placed in the 'modules' folder of the bot (see [Releases](https://github.com/alphahelix00/Discordinator/releases) section for the .jar files, or compile your own dev branch snapshot)
{'fraction_non_alphanumeric': 0.09269662921348315, 'fraction_numerical': 0.01100187265917603, 'mean_word_length': 5.339762611275964, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 16, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7599713', 'n_tokens_mistral': 1197, 'n_tokens_neox': 1152, 'n_words': 463}