La Estructura del Proyecto Sponge

El Proyecto Sponge consiste de diferentes subproyectos, situados en varios repositorios en GitHub. Aquí va un breve resumen antes de entrar en detalle:

Proyecto Descripción ¿Qué se hace en el repositorio?
`SpongeAPI <https://github.com/Spongepowered/SpongeAPI> ` _ La API en sí Desarrollo de la APi en sí
` SpongeForge <https://github.com/Spongepowered/SpongeForge> ` _ Una implementación de SpongeAPI construida sobre Forge Desarrollo de las partes de SpongeForge que se basan en Forge
` SpongeVanilla <https://github.com/Spongepowered/SpongeVanilla> ` _ Una implementación de SpongeAPI construída directamente encima de Minecraft Vanilla Desarrollo de la Contraparte Vanilla del repositorio de SpongeForge
`SpongeCommon <https://github.com/Spongepowered/SpongeCommon> ` _ El código compartido entre SpongeForge y SpongeVanilla Desarrollo de todo código el cual se comparte entre SpongeForge y SpongeVanilla
Mixin La herramienta utilizada para inyectar implementaciones dentro de la estructura de código subyacente Desarrollo de nuestra solución para enganchar a Sponge dentro del servidor de Minecraft
SpongeDocs La Documentación Oficial de SpongeProject Expandir, reparar y escribir los SpongeDocs
SpongeHome La página web para el SpongeProject Desarrollo de nuestra página web
Ore Solución hosting plugin Desarrollo de nuestra solución de plugin hosting
SpongeAuth The authentication portal and SSO for our websites Development of our authentication portal and SSO solution

SpongeCommon, SpongeForge y SpongeVanilla

El repositorio de SpongeCommon, es la base de todo el código compartido entre la implementación de SpongeForge y SpongeVanilla. Los repositorios de SpongeForge y SpongeVanilla contienen el código que no se puede compartir entre ellos, ya que Forge requiere algunas cosas específicas de Forge que no funcionarán en Vanilla y viceversa.

Al referirse a la implementación de SpongeForge, está hablando básicamente de todo lo que contienen los repositorios de SpongeCommon y SpongeForge. Lo mismo se aplica a SpongeVanilla y SpongeCommon. Ese es el motivo por la cual construir desde el repositorio de SpongeForge o SpongeVanilla sin incluir SpongeCommon, no funcionará.

SpongeHome

SpongeHome is the Sponge project’s website. It’s written in Golang, using the go-macaron library. It uses SCSS as its CSS preprocessor.

Ore

Ore es nuestra propia solución de plugin hosting. Está escrito en Scala, basado en el Play Framework y por supuesto en el código abierto!

Cómo todo está articulado en conjunto

La imagen muestra las múltiples partes de la implementación de Sponge, sus dependencias y cómo interactúan entre sí. En el lado izquierdo se ve una configuración típica de SpongeForge, con algunos complementos de SpongeAPI, un mod Forge y un híbrido entre Forge (como mod) y Sponge (como complemento), que interactúan. En el lado derecho se ve una configuración típica de SpongeVanilla. Verás que SpongeVanilla no admite mods de Forge ni híbridos, ya que a SpongeVanilla le falta la funcionalidad de Forge:

Repo Overview