Releases: Pinont/SingularityLib
Releases · Pinont/SingularityLib
SingularityLib 1.3.3
SingularityLib 1.3.2
What's Changed
Full Changelog: 1.3.1...1.3.2
SingularityLib 1.3.1
What's Changed
Full Changelog: 1.0.0...1.3.1
SingularityLib 1.0.0
Overview
SingularityLib is a Minecraft plugin API that accelerates plugin development by offering refined abstractions for commands, configuration, GUIs, items, entities, automatic component registration, database integration, and Discord JDA bootstrap support.
Still under active development. Please report bugs or feature requests via Issues.
Key Feature Areas (Current Scope)
- Command System: Cleaner registration and future-ready structure for subcommand expansion.
- Configuration Utilities: Streamlined config creation & structured access patterns.
- GUI Toolkit: Base GUI creation (pagination & animation planned).
- Item Framework: Configurable item definitions, interaction hooks, unique item management, item locking.
- Entity Utilities: Configuration + storage helpers.
- Auto-Registration: Reduced boilerplate for services/components.
- Database Layer: MySQL support groundwork.
- Discord Integration: JDA bootstrap with Slash Command support.
Roadmap / Planned Enhancements
- Paginated & Animated GUIs
- Item enchantment & attribute enrichment
- Custom entities & expanded entity attribute APIs
- Subcommand & alias DSL for commands
- Custom crafting recipe registration
- Discord Text Commands & Event Listeners
- Additional database backends (SQLite, MongoDB)
Installation (Maven)
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
<dependency>
<groupId>com.github.pinont</groupId>
<artifactId>SingularityLib</artifactId>
<version>1.0.0</version>
</dependency>Installation (Gradle – Groovy)
repositories {
maven { url 'https://jitpack.io' }
}
dependencies {
implementation 'com.github.pinont:SingularityLib:1.0.0'
}Installation (Gradle – Kotlin DSL)
repositories {
maven("https://jitpack.io")
}
dependencies {
implementation("com.github.pinont:SingularityLib:1.0.0")
}Basic Usage
public class Main extends CorePlugin {
@Override
public void onPluginStart() {
// initialization logic
}
@Override
public void onPluginStop() {
// cleanup logic
}
}Suggested Adoption Flow
- Add dependency & validate server startup.
- Migrate base commands into the library’s command system.
- Refactor configs to the standardized config creator.
- Introduce GUI abstractions incrementally (prepare for pagination in future release).
- Integrate item/unique item logic where duplication or locking matters.
- Provide feedback on pain points → open issues.
Compatibility Notes
- If you are upgrading from earlier untagged snapshots, verify any refactors in command or item APIs.
- Future 2.x releases may adjust GUI and command internals before an API freeze (targeting a later 2.x or 3.0 milestone).
- Database abstraction may shift when new backends are introduced.
Forward-Looking (Potential Breaking Areas)
- GUI API (pagination/animation hooks)
- Item attribute/enchantment extension points
- Entity abstraction layering
- Command alias/subcommand registration semantics
- Database interface shape for multi-backend support
Changelog (Initial Tag)
All features are new for this first public tagged release.
- Core abstractions (commands, configs, GUI base, items, entities)
- Unique item & locking handling
- Auto-registration system
- MySQL integration baseline
- Discord JDA slash command bootstrap
Contributing
PRs and issues welcome. Focus areas needing feedback:
- Command API ergonomics
- Desired GUI patterns (animation, pagination UX)
- Item metadata extension needs
- Database extensibility expectations
Looking Ahead (Short-Term Priorities)
- GUI pagination & animation
- Subcommand & alias DSL
- Item attribute/enchantment composability