=================
Creating a Plugin
=================
This section is intended for developers who wish to develop plugins with the Sponge API. The articles cover various
aspects of the Sponge API and the concepts behind it. It is important to understand that the intent of this section is
to help developers get started with the Sponge API, not to cover every concept. The
`Javadocs `__ will be of great help to you once you are comfortable with the API.
.. note::
It is recommended to have prior experience with developing in Java! Copying-and-pasting examples from the
documentation likely will not work, especially without modification.
.. tip::
The `Cookbook `__ is a collection of fully functional plugins that each
demonstrate a specific part of the SpongeAPI. These plugin "recipes" are standalone and are compilable via Gradle
or Maven. Some of them demonstrate how to create plugins using other JVM languages such as Scala and Kotlin.
Contents
========
.. toctree::
:maxdepth: 2
:titlesonly:
buildsystem
workspace/index
project/index
plugin-identifier
plugin-class
lifecycle
injection
practices/index
optional/index
logging
commands/index
event/index
assets
configuration/index
text/index
data/index
blocks/index
entities/index
items/index
trade-offers
effects
scheduler
services
database
permissions
bans
bookview
economy/index
wgen/index
manager
game-profile-manager
offline-userplayer-data
debugging
tab-lists
plugin-meta
ray-tracing
tutorials
internals/index