Skip to content
This repository has been archived by the owner on Nov 3, 2022. It is now read-only.

NucleusPowered/Nucleus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nucleus v3

This project is no longer active. You are welcome to fork under the terms of the MIT licence under a different name.

For version 1, the legacy version for Sponge API 7.1 (Minecraft 1.12), see the tag "S7.1-v1-FINAL".
For version 2, the current version for Sponge API 7.3 (Minecraft 1.12), see the branch "v2/S7".

Licence: MIT (except for the Nucleus logo, which is all rights reserved, and any third party shaded code)

Nucleus is a Sponge plugin that forms a solid base for your server, providing essential commands, events, and other tidbits that you might need. Extremely configurable, only loading up the commands and modules you want (and providing a way for plugins to disable modules that they replace the functionality of), and providing a simple and rich API, Nucleus is an elite plugin for providing simple server tasks, and an essential addition to your server!

Contributions

Are you a talented programmer wanting to contribute some code? Perhaps someone who likes to write documentation? Do you have a bug that you want to report? Or perhaps you have an idea for a cool new idea that would fit in with Nucleus? We'd be grateful for your contributions - we're an open community that appreciates any help you are willing to give!

  • Read our guidelines.
  • Open an issue if you have a bug to report, or a pull request with your changes.

Getting and Building Nucleus

Nucleus currently uses Gradle 7.3.3 and is compiled using JDK 17 (but to a Java 8 target).

To get a copy of the Nucleus source, ensure you have Git installed, and run the following commands from a command prompt or terminal:

  1. git clone git@github.com:NucleusPowered/Nucleus.git
  2. cd Nucleus
  3. cp scripts/pre-commit .git/hooks

To build Nucleus, navigate to the source directory and run either:

  • ./gradlew build on UNIX and UNIX like systems (including macOS and Linux)
  • gradlew build on Windows systems

You will find the compiled JAR which will be named like Nucleus-[version]-plugin.jar in output/. A corresponding API and javadocs jar will also exist.

Building against the Nucleus API

Nucleus is available via a Maven repository.

  • Repo: https://repo.drnaylor.co.uk/artifactory/list/minecraft
  • Group ID: io.github.nucleuspowered
  • Artifact Name: nucleus-api

The versioning follows version[-SNAPSHOT|-ALPHAn|-BETAn|-RCn], where n is an integer. Add the -SNAPSHOT section for the latest snapshot.

You can also get Nucleus as a whole this way, but internals may break at any time. The API is guaranteed to be more stable.

You can also use JitPack as a repository, if you prefer.

Third Party Libraries

The compiled Nucleus plugin includes the following libraries (with their licences in parentheses):

  • Vavr 1.0-alpha-4 (Apache 2.0)

See THIRDPARTY.md for more details.