Abstracto represents a framework to be used as a basis for a Discord bot. It uses JDA as an API wrapper underneath and provides an extensive tool set to create new commands and a wide range of commands out of the box.
This repository does not provide the full functionality in order to start a discord bot, because it requires a Main class.
- JDA The Discord API Wrapper in the version 5.0.0-beta.21
- Spring boot is used as a framework to create standalone application in Java with Java EE methods. (including dependency injection and more)
- Hibernate is used as a reference implementation of JPA.
- Freemarker is used as a templating engine. This is used to provide internationalization for user facing text and enable dynamic embed configuration.
- Ehcache is used as a caching implementation.
- Lombok is used as a framework in order to speed up creation of container classes and builders.
- Quartz is used as a scheduling framework in order to provide functionalities which either require a scheduled or cronjob behaviour.
- Docker is used to package the application into an image and Docker Compose is used to build the images
- Liquibase is used to manage changes to the database
A detailed documentation of the pure form of Abstracto including the terminology and commands in HTML form is available here. The PDF is available here If you want to view the documentation to an earlier released version you need to append the desired version to the URL. The current version will be available aforementioned URL, but it is not right now, because Abstracto has not been released yet.
If you find any issue, feel free to create a GitHub issue.
This project is licensed under the MIT license.