Geoffrey-rs/ARCHITECTURE.md

981 B

Geoffrey Architecture

Note: Geoffrey V3 is in early development, and its design is likely to change.

Geoffry Architecture

Database

The database is the core storage of Geoffrey. All models will be stored here. It is tightly coupled with the GeoffreyAPI.

DB Architecture

Geoffrey API

The API provides the main logic to how models are manipulated in the Database. It is split into two parts, the Command API and Model API.

Command API

This API will expose a set of commands that can be run to preform tasks in Geoffrey. The goal is to keep all the command logic here so the command front-end are simpler to create.

Model API

The Model API will provide a strict access to the underlying models of Geoffrey. It is more suited for web interfaces or operations that do not need to be constrained by commands.

Front Ends

The currently planned front ends are a Bukkit Plugin, a Discord Bot and the Web Interface.