diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 00000000..01757bd1 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,67 @@ +name: Bug Report +description: Create a report to help us improve +title: "[Bug]: " +labels: ["bug"] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to fill out this bug report! + - type: checkboxes + id: terms + attributes: + label: Terms + options: + - label: I have read the CONTRIBUTING guidelines + required: true + - label: I have checked existing issues to avoid duplicates + required: true + - type: input + id: version + attributes: + label: Version + description: What version of EternalEconomy are you using? + placeholder: v1.0.0 + validations: + required: true + - type: input + id: server-version + attributes: + label: Server Version + description: What server software and version are you using? (e.g., Paper 1.20.4) + placeholder: Paper version git-Paper-123 (MC: 1.20.4) + validations: + required: true + - type: textarea + id: description + attributes: + label: Description + description: A clear and concise description of what the bug is. + placeholder: I entered the command... and then... + validations: + required: true + - type: textarea + id: steps + attributes: + label: Steps to Reproduce + description: Steps to reproduce the behavior. + placeholder: | + 1. Go to '...' + 2. Click on '....' + 3. Scroll down to '....' + 4. See error + validations: + required: true + - type: textarea + id: expected + attributes: + label: Expected Behavior + description: A clear and concise description of what you expected to happen. + validations: + required: true + - type: textarea + id: logs + attributes: + label: Logs / Screenshots + description: Paste any relevant logs or screenshots here. + render: shell diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 00000000..8c108afe --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,43 @@ +name: Feature Request +description: Suggest an idea for this project +title: "[Feature]: " +labels: ["enhancement"] +body: + - type: markdown + attributes: + value: | + Thanks for suggesting a new feature! + - type: checkboxes + id: terms + attributes: + label: Terms + options: + - label: I have read the CONTRIBUTING guidelines + required: true + - label: I have checked existing issues to avoid duplicates + required: true + - type: textarea + id: description + attributes: + label: Is your feature request related to a problem? Please describe. + description: A clear and concise description of what the problem is. + placeholder: I'm always frustrated when... + validations: + required: true + - type: textarea + id: solution + attributes: + label: Describe the solution you'd like + description: A clear and concise description of what you want to happen. + validations: + required: true + - type: textarea + id: alternatives + attributes: + label: Describe alternatives you've considered + description: A clear and concise description of any alternative solutions or features you've considered. + - type: textarea + id: context + attributes: + label: Additional Context + description: Add any other context or screenshots about the feature request here. diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 00000000..7178ccca --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,16 @@ +### Summary + + +### Issue Link + + +### Type of Change +- [ ] Bug fix (non-breaking change which fixes an issue) +- [ ] New feature (non-breaking change which adds functionality) +- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) +- [ ] Refactoring (no functional changes, just code cleanup) + +### Checklist +- [ ] My code follows the code style of this project. +- [ ] I have tested my changes. +- [ ] I have updated the documentation accordingly. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..ada9215a --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,63 @@ +# Contributing to EternalEconomy + +First off, thanks for taking the time to contribute! 🎉 + +The following is a set of guidelines for contributing to EternalEconomy. These are just guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request. + +## Code of Conduct + +This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code. + +## How Can I Contribute? + +### Reporting Bugs + +This section guides you through submitting a bug report. Following these guidelines helps maintainers and the community understand your report, reproduce the behavior, and find related reports. + +- **Use a clear and descriptive title** for the issue to identify the problem. +- **Describe the exact steps which reproduce the problem** in as many details as possible. +- **Provide specific examples** to demonstrate the steps. +- **Describe the behavior you observed after following the steps** and point out what exactly is the problem with that behavior. +- **Explain which behavior you expected to see instead and why.** +- **Include logs and screenshots** which show you following the described steps and demonstrate the problem. + +### Suggesting Enhancements + +This section guides you through submitting an enhancement suggestion, including completely new features and minor improvements to existing functionality. + +- **Use a clear and descriptive title** for the issue to identify the suggestion. +- **Provide a step-by-step description of the suggested enhancement** in as many details as possible. +- **Explain why this enhancement would be useful** to most EternalEconomy users. + +### Pull Requests + +The process described here has several goals: + +- Maintain EternalEconomy's quality. +- Fix problems that are important to users. +- Engage the community in working toward the best possible EternalEconomy. +- Enable a sustainable system for EternalEconomy's maintainers to review contributions. + +Please follow these steps to have your contribution considered by the maintainers: + +1. Follow all instructions in [the template](.github/pull_request_template.md). +2. Follow the [Checkstyle](checkstyle.xml) (if available) or standard Java coding conventions. +3. After you submit your pull request, verify that all status checks are passing. + +## Styleguides + +### Git Commit Messages + +- Use the present tense ("Add feature" not "Added feature"). +- Use the imperative mood ("Move cursor to..." not "Moves cursor to..."). +- Limit the first line to 72 characters or less. +- Reference issues and pull requests liberally after the first line. + +### Java Styleguide + +- Use 4 spaces for indentation. +- Organize imports. +- Use meaningful variable and method names. +- Document complex logic with comments. + +Thank you for contributing! diff --git a/README.md b/README.md index 7ca85711..032872ab 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,104 @@
![readme-banner.png](https://github.com/EternalCodeTeam/EternalEconomy/blob/master/assets/readme-banner.png?raw=true) -
\ No newline at end of file + +# EternalEconomy + +[![Available on SpigotMC](https://raw.githubusercontent.com/vLuckyyy/badges/main/available-on-spigotmc.svg)](https://www.spigotmc.org/resources/eternalcore-%E2%99%BE%EF%B8%8F-all-the-most-important-server-functions-in-one.112264/) +[![Available on Modrinth](https://raw.githubusercontent.com/vLuckyyy/badges/main/avaiable-on-modrinth.svg)](https://modrinth.com/plugin/eternalcore) +[![Available on Hangar](https://raw.githubusercontent.com/vLuckyyy/badges/main/avaiable-on-hangar.svg)](https://hangar.papermc.io/EternalCodeTeam/EternalCore) + +[![Chat on Discord](https://raw.githubusercontent.com/vLuckyyy/badges/main//chat-with-us-on-discord.svg)](https://discord.com/invite/FQ7jmGBd6c) +[![Read the Docs](https://raw.githubusercontent.com/vLuckyyy/badges/main/read-the-documentation.svg)](https://docs.eternalcode.pl/eternalcore/introduction) +[![Available on BStats](https://raw.githubusercontent.com/vLuckyyy/badges/main/available-on-bstats.svg)](https://bstats.org/plugin/bukkit/EternalEconomy2/28941) + +**The most modern and advanced economy plugin for your Minecraft server.** + +[Report Bug](https://github.com/EternalCodeTeam/EternalEconomy/issues) • [Request Feature](https://github.com/EternalCodeTeam/EternalEconomy/issues) • [Join Discord](https://discord.gg/eternalcode) + +
+ + + Support us on Ko-fi + + + + +--- + +## 🔥 Features + +| Feature | Description | +| :--- | :--- | +| 🚀 **High Performance** | Optimized for large servers with asynchronous database operations. | +| 💾 **Multi-Database** | Support for H2, SQLite, MySQL, MariaDB, and PostgreSQL. | +| 🌍 **Modern Design** | Slick default messages with MiniMessage support. | +| 📊 **Leaderboards** | Built-in high-performance balance top system. | +| ⚙️ **Configurable** | Extensive `config.yml` and `messages.yml` customization. | + +--- + +## 📷 Gallery + +
+ +| Feature Preview | GIF / Image | +| :--- | :--- | +| **Balance Check** | *Place your GIF here* | +| **Pay System** | *Place your GIF here* | +| **Admin Management** | *Place your GIF here* | + +
+ +--- + +## 💻 Commands & Permissions + +### Player Commands +| Command | Usage | Permission | Description | +| :--- | :--- | :--- | :--- | +| `/balance` | `/balance [player]` | `eternaleconomy.player.balance` | Check your own account balance. | +| `/balance` | `/balance ` | `eternaleconomy.player.balance.other` | Check another player's balance. | +| `/pay` | `/pay ` | `eternaleconomy.player.pay` | Transfer money to another player. | +| `/withdraw` | `/withdraw ` | `eternaleconomy.player.withdraw` | Withdraw money from your account. | +| `/balancetop` | `/balancetop [page]` | `eternaleconomy.player.balance.top` | View the richest players on the server. | + +### Admin Commands +| Command | Usage | Permission | Description | +| :--- | :--- | :--- | :--- | +| `/economy set` | `/eco set ` | `eternaleconomy.admin.set` | Set a player's balance to a specific amount. | +| `/economy add` | `/eco add ` | `eternaleconomy.admin.add` | Add a specific amount to a player's balance. | +| `/economy remove` | `/eco remove ` | `eternaleconomy.admin.remove` | Remove a specific amount from a player's balance. | +| `/economy reset` | `/eco reset ` | `eternaleconomy.admin.reset` | Reset a player's balance to the default. | +| `/economy reload` | `/eco reload` | `eternaleconomy.admin.reload` | Reload the plugin configuration. | +| `/economy check` | `/eco check ` | `eternaleconomy.admin.balance` | Check a player's balance (Admin alias). | + +--- + +## 🧩 Placeholders + +These placeholders are used within the `messages.yml` file to dynamic content. + +| Placeholder | Context | Description | +| :--- | :--- | :--- | +| `{PLAYER}` | Global | The name of the player involved in the transaction. | +| `{BALANCE}` | Balance Check | The formatted balance of the player. | +| `{AMOUNT}` | Transaction | The amount of money being transferred, added, or removed. | +| `{POSITION}` | Leaderboard | The rank of the player in the leaderboard. | +| `{PAGE}` | Leaderboard | The current page number. | +| `{TOTAL_PAGES}` | Leaderboard | The total number of pages. | + +--- + +## 📥 Installation + +1. Download the latest release from [GitHub](https://github.com/EternalCodeTeam/EternalEconomy/releases) or [Modrinth](https://modrinth.com/plugin/eternaleconomy). +2. Place the `.jar` file into your server's `plugins` folder. +3. Restart your server. +4. Configure `config.yml` and database settings if necessary. + +--- + +
+Made with ❤️ by the EternalCodeTeam +