Skip to content

LemonlightMC/Zenith

Zenith

License: MIT Java Gradle

Elevate your Minecraft Server plugins with Zenith – a comprehensive suite of utilities, APIs, and integrations designed for modern Bukkit/Spigot development.

A powerful, modular library that provides developers with essential tools to build feature-rich plugins with performance in mind for Minecraft servers. Zenith streamlines plugin development and enhances server capabilities.

✨ Features

  • πŸ› οΈ Core Utilities: Comprehensive collection of helper classes for common tasks
  • 🎯 Command Framework: Robust command handling with argument parsing and validation
  • πŸ“¦ Item Management: Advanced item creation, modification, and manipulation tools
  • πŸ”§ Custom Content: Support for custom items and recipes
  • πŸ’Ύ Database Integration: Easy-to-use database utilities for data persistence
  • πŸ”— Plugin Integrations: Seamless integration with popular plugins like LuckPerms, Vault, and more
  • ⚑ Performance Optimized: Built with efficiency in mind for high-performance servers
  • πŸ”„ Modular Design: Use only what you need with our modular architecture

Be aware, this Framework is currently in early stages, so expect big changes and improvements!! Nevertheless it is already very developed, highly usable, and we are working hard to make it even better!

πŸ“¦ Installation

For Plugin Developers

Add Zenith as a dependency to your Gradle project:

repositories {
    mavenCentral()
    maven { url = uri("https://jitpack.io") }
}

dependencies {
    implementation("com.github.LemonlightMC:Zenith:0.1.0")
}

Building from Source

  1. Clone the repository:

    git clone https://github.com/LemonlightMC/Zenith.git
    cd Zenith
  2. Build with Gradle:

    ./gradlew build
  3. The built JARs will be available in each module's build/libs/ directory.

πŸš€ Usage

Zenith is designed to be easy to integrate into your existing plugins. Here's a quick example:

import com.lemonlightmc.zenith.items.ItemStackBuilder;
import com.lemonlightmc.zenith.utils.PlayerUtils;

// Create a custom item
ItemStack customItem = new ItemStackBuilder(Material.DIAMOND_SWORD)
    .name("&bLegendary Sword")
    .lore("&7A sword of legendary power")
    .enchant(Enchantment.DAMAGE_ALL, 5)
    .build();

// Give it to a player
PlayerUtils.giveItem(player, customItem);

πŸ“š Modules

Zenith is organized into several modules, each focusing on specific functionality:

Core (:core)

The foundation module containing essential utilities:

  • Event handling and scheduling
  • Configuration management
  • Data structures and utilities
  • Math and string helpers
  • Player and world utilities
  • Permission helpers

Commands (:commands)

Advanced command framework:

  • Command registration and handling
  • Argument parsing and validation
  • Tab completion support
  • Permission checking

Items (:items)

Comprehensive item management:

  • ItemStack builders and modifiers
  • Enchantment utilities
  • Potion effect management
  • Banner and firework creation

Custom (:custom)

Custom content creation:

  • Custom item definitions
  • Recipe creation and management

Database (:database)

Database integration utilities:

  • Connection management
  • Query builders
  • Data serialization

Integrations (:integrations)

Third-party plugin integrations:

  • LuckPerms: Permission management
  • Vault: Economy and permission APIs
  • TabAPI: Tab list management
  • Updater: Automatic plugin updating

🀝 Contributing

We welcome contributions! Please see our Contributing Guide for details on how to get started.

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Commit your changes: git commit -m 'Add amazing feature'
  4. Push to the branch: git push origin feature/amazing-feature
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ”— Links

πŸ™ Acknowledgments

Zenith builds upon and is inspired by several excellent open-source projects:


Made with ❀️ for the Minecraft community

About

A powerful, modular library that provides developers with essential tools to build feature-rich plugins with performance in mind for Minecraft servers

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Contributors