Struktura Projektu Sponge

Projekt Sponge składa się z różnych podprojektów, wszystkie mają swoje repozytoria na GitHub. Krótki przegląd:

Projekt Opis Co jest zawarte w repozytorium?
SpongeAPI Interfejs API Rozwój interfejsu API
SpongeForge Realizacja wdrożenia SpongeAPI jest priorytetem dla Forge Opracowanie części funkcji SpongeForge kategoryzowanych pod Forge
SpongeVanilla Realizacja wdrożenia SpongeAPI opartym bezpośrednio na Vanilla Minecraft. Rozwój odpowiednika Vanilla jako repozytorium SpongeForge
SpongeCommon Wstrzykiwanie kodu pomiędzy SpongeForge i SpongeVanilla Praca nad rozwojem wszystkich zasobów źródłowych współdzielonych pomiędzy SpongeForge i SpongeVanilla
Mixin Narzędzie służące do wstrzykiwania kodu wdrożenia do podstawowej struktury kodu Rozwój naszego rozwiązania pod względem programistycznym do tworzenia punktów zaczepienia Sponge do serwera Minecraft
SpongeDocs Oficjalna dokumentacja Projektu Sponge Rozszerzenia, naprawy i tworzenie tekstów do SpongeDocs
SpongeHome Strona internetowa Projektu Sponge Rozwój naszej strony internetowej
Ore Rozwiązanie wspierające dokumentacje i publikacji wtyczek Rozwój wsparcia dla systemu publikacji wtyczek
SpongeAuth The authentication portal and SSO for our websites Development of our authentication portal and SSO solution

SpongeCommon, SpongeForge oraz SpongeVanilla

SpongeCommon jest naszym repozytorium, czyli magazynem całego kodu źródłowego, który jest podzielony między SpongeForge i SpongeVanilla przygotowanych do realizacji. Repozytoria SpongeForge i SpongeVanilla zawierają także kod, który nie może być współużytkowany między nimi. Tak jak Forge wymaga niektórych konkretnych funkcji, które nie będą działać na Vanilli i odwrotnie.

Przy odwoływaniu się do realizacji SpongeForge to w zasadzie mówisz o wszystkim co jest zawarte w SpongeCommon i SpongeForge. To samo odnosi się do SpongeVanilla i SpongeCommon. To jest powód dlaczego obiekt SpongeForge lub SpongeVanilla z repozytorium nie zawierającego SpongeCommon nie będzie działać.

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.

Ruda

Ore is our very own plugin hosting solution. It’s written in Scala, based on the Play Framework and of course open source!

Jak wszystko jest ze sobą powiązane?

Ilustracja przedstawia poszczególne części implementacji Sponge i jak współdziałają ze sobą i ich zależności. Po lewej stronie jest typowa konfiguracja SpongeForge z niektórymi wtyczkami SpongeAPI, Forge mod i hybrydowy, który używa Forge (jako mod) i Sponge (jako wtyczka) do interakcji. Po prawej stronie znajdujemy typową konfiguracje SpongeVanilla. Zauważ, że SpongeVanilla nie obsługuje modyfikacji i hybryd Forge, gdyż SpongeVanilla brakuje funkcji Forge.

Repo Overview