build: add CI, README, banner, metadata

dependabot/gradle/org.projectlombok-lombok-1.18.34
William 5 months ago
parent 8f4e952337
commit 29dfef4af7
No known key found for this signature in database

@ -0,0 +1,23 @@
# Dependabot configuration file for GitHub
version: 2
updates:
# CI workflow action updates
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
commit-message:
prefix: "ci"
# Gradle package updates
- package-ecosystem: "gradle"
directory: "/"
schedule:
interval: "weekly"
commit-message:
prefix: "deps"
ignore:
- dependency-name: 'org.spigotmc:spigot-api'
- dependency-name: 'io.papermc.paper:paper-api'
- dependency-name: 'io.papermc.paper:paper-mojangapi'

@ -0,0 +1,4 @@
# Funding metadata for GitHub
github: WiIIiam278
custom: https://buymeacoff.ee/william278

@ -0,0 +1,37 @@
# Builds, tests and publishes to maven when a commit is pushed
name: CI Tests & Publish
on:
push:
branches: [ 'master' ]
paths-ignore:
- 'workflows/**'
- 'README.md'
permissions:
contents: read
checks: write
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: 'Checkout for CI 🛎️'
uses: actions/checkout@v4
- name: 'Set up JDK 17 📦'
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: 'Build with Gradle 🏗️'
uses: gradle/gradle-build-action@v3
with:
arguments: build test publish
env:
SNAPSHOTS_MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }}
SNAPSHOTS_MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }}
- name: 'Publish Test Report 📊'
uses: mikepenz/action-junit-report@v4
if: success() || failure() # always run even if the previous step fails
with:
report_paths: '**/build/test-results/test/TEST-*.xml'

@ -0,0 +1,29 @@
# Builds, tests and publishes to maven when a release is published
name: Release Tests & Publish
on:
release:
types: [ published ]
permissions:
contents: read
checks: write
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: 'Checkout for CI 🛎️'
uses: actions/checkout@v4
- name: 'Set up JDK 17 📦'
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: 'Build with Gradle 🏗️'
uses: gradle/gradle-build-action@v3
with:
arguments: build test publish
env:
RELEASES_MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }}
RELEASES_MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }}

@ -1,2 +1,62 @@
# Uniform <!--suppress ALL -->
A cross-platform wrapper for making Brigadier commands, based on BrigadierWrapper by Tofaa2, itself inspired by emortalmcs command system. <p align="center">
<img src="images/banner.png" alt="Claim Operations Library" />
<a href="https://github.com/WiIIiam278/Uniform/actions/workflows/ci.yml">
<img src="https://img.shields.io/github/actions/workflow/status/WiIIiam278/Uniform/ci.yml?branch=master&logo=github"/>
</a>
<a href="https://repo.william278.net/#/releases/net/william278/uniform/">
<img src="https://repo.william278.net/api/badge/latest/releases/net/william278/uniform/uniform-common?color=00fb9a&name=Maven&prefix=v"/>
</a>
<a href="https://discord.gg/tVYhJfyDWG">
<img src="https://img.shields.io/discord/818135932103557162.svg?label=&logo=discord&logoColor=fff&color=7389D8&labelColor=6A7EC2" />
</a>
</p>
<br/>
**Uniform** is cross-platform wrapper for making Brigadier commands, based on [`BrigadierWrapper` by Tofaa2](https://github.com/Tofaa2/BrigadierWrapper/), which itself was inspired by [EmortalMC's `command-system`](https://github.com/emortalmc/command-system).
Uniform _currently_ targets the following platforms:
| Platform | Version | Java |
|----------------|------------|:-----:|
| Paper | \>`1.20.4` | >`17` |
| Velocity | \>`3.3.0` | >`17` |
Uniform _plans_ to support the following platforms:
| Platform | Version | Java |
|----------------|------------|:-----:|
| Fabric | =`1.20.6` | >`21` |
| Spigot&dagger; | \>`1.17.1` | >`17` |
&dagger; Brigadier commands are wrapped into Bukkit commands for Spigot.
## Setup
Uniform is available [on Maven](https://repo.william278.net/#/releases/net/william278/uniform/). You can browse the Javadocs [here](https://repo.william278.net/javadoc/releases/net/william278/uniform/latest).
<details>
<summary>Gradle setup instructions</summary>
First, add the Maven repository to your `build.gradle` file:
```groovy
repositories {
maven { url "https://repo.william278.net/releases" }
}
```
Then, add the dependency itself. Replace `VERSION` with the latest release version. (e.g., `1.0`) and `PLATFORM` with the platform you are targeting (e.g., `bukkit`). If you want to target pre-release "snapshot" versions (not recommended), you should use the `/snapshots` repository instead.
```groovy
dependencies {
implementation "net.william278.uniform:uniform-PLATFORM:VERSION"
}
```
</details>
Using Maven/something else? There's instructions on how to include Uniform on [the repo browser](https://repo.william278.net/#/releases/net/william278/uniform).
## Building
To build Uniform, run `clean build` in the root directory. The output JARs will be in `target/`.
## License
Uniform is licensed under GPL v3 as it derives from BrigadierWrapper. See [LICENSE](https://github.com/WiIIiam278/Uniform/raw/master/LICENSE) for more information.

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

@ -7,8 +7,7 @@ dependencies {
api project(path: ':common') api project(path: ':common')
compileOnlyApi 'io.papermc.paper:paper-mojangapi:1.20.4-R0.1-SNAPSHOT' compileOnlyApi 'io.papermc.paper:paper-mojangapi:1.20.4-R0.1-SNAPSHOT'
compileOnlyApi 'io.papermc.paper:paper-api:1.20.4-R0.1-SNAPSHOT'
compileOnly 'io.papermc.paper:paper-api:1.20.4-R0.1-SNAPSHOT'
compileOnly 'org.projectlombok:lombok:1.18.32' compileOnly 'org.projectlombok:lombok:1.18.32'
annotationProcessor 'org.projectlombok:lombok:1.18.32' annotationProcessor 'org.projectlombok:lombok:1.18.32'

Loading…
Cancel
Save