Skip to main content

Overview

IgnisCore extensions are platform-agnostic JARs loaded at runtime. This section covers building, testing, and deploying them.

Quick start

  1. Copy an existing extension under extensions/blocks/ or extensions/items/
  2. Add Maven dependency on api (provided scope)
  3. Implement a strategy class extending AbstractIgnisBlockStrategy or AbstractIgnisItemStrategy
  4. Ship block-extension.yml / item-extension.yml, config.yml, and textures
  5. Build with mvn package and deploy to the plugin data folder
<dependency>
<groupId>dev.rono</groupId>
<artifactId>api</artifactId>
<version>1.0.0</version>
<scope>provided</scope>
</dependency>

Documentation layers

LayerWhat it covers
Extension CookbookPractical recipes — explosions, throwables, GUI blocks
API ReferenceCore API and extension-shared helpers
ArchitectureModule stack, boot flow, dependency rules
JavadocFull class and method reference
Sample extensionsWorking JARs in the repo

The website is intentionally thin — detailed API signatures live in Javadoc. The cookbook shows you how to do common tasks with links to the relevant classes.

Two libraries

LibraryMaven artifactWhen
Core APIdev.rono:apiAlways — strategies, ports, models
Extension shareddev.rono.extensions:sharedOptional — typed config helpers (ExplosionConfig, ThrowableItemConfig)

Both use provided scope — the bootstrap plugin supplies them at runtime.

Next steps