Struktur dari proyek Sponge
Proyek Sponge terdiri dari beberapa subproyek yang berbeda, yang diselenggarakan diberbagai repositori GitHub. Berikut sebuah gambaran singkat sebelum menuju ke detailnya:
Proyek |
Deskripsi |
Apa yang dikerjakan dalam repositori? |
---|---|---|
API itu sendiri |
Pengembangan dari API itu sendiri |
|
Implementasi SpongeAPI dibangun di atas Forge |
Pengembangan bagian SpongeForge yang mengandalkan Forge |
|
Implementasi SpongeAPI dibangun langsung di atas Vanilla Minecraft |
Pengembangan Counterpart Vanilla dari repositori SpongeForge |
|
Kode bersama antara SpongeForge dan SpongeVanilla |
Pengembangan semua kode yang dibagi antara SpongeForge dan SpongeVanilla |
|
Alat yang digunakan untuk memasukkan implementasi kedalam struktur kode yang mendasar |
Pengembangan solusi kami untuk menghubungkan Sponge ke server Minecraft |
|
Dokumentasi resmi ProyekSponge |
Memperluas, memperbaiki dan menulis SpongeDocs |
|
Situs web untuk proyek sponge |
Perkembangan situs web kami |
|
Plugin hosting solusi |
Pengembangan solusi plugin hosting kami |
|
The authentication portal and SSO for our websites |
Development of our authentication portal and SSO solution |
SpongeCommon, SpongeForge dan SpongeVanilla
Repositori SpongeCommon adalah basis yang berisi semua kode yang dibagi antara implementasi SpongeForge dan SpongeVanilla. Repositori SpongeForge dan SpongeVanilla berisi semua kode yang tidak dapat dibagi di antara keduanya, karena Forge memerlukan beberapa hal khusus untuk Forge yang tidak sesuai dengan Vanilla dan sebaliknya.
Bila Anda mengacu pada penerapan SpongeForge, pada dasarnya Anda membicarakan semua yang ada dalam penyimpanan SpongeCommon dan SpongeForge. Hal yang sama berlaku untuk SpongeVanilla dan SpongeCommon. Inilah alasan mengapa membangun SpongeForge atau SpongeVanilla dari repositori tanpa termasuk SpongeCommon tidak akan berfungsi.
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.
Bijih
Ore is our very own plugin hosting solution. It's written in Scala, based on the Play Framework and of course open source!
Bagaimana segalanya diikat bersama
Gambar menunjukkan berbagai bagian dari Sponge Implementations dan bagaimana mereka berinteraksi satu sama lain dan dependensinya. Di sisi kiri adalah setup SpongeForge yang khas dengan beberapa plugin SpongeAPI, mod Forge dan hibrida yang menggunakan Forge (sebagai mod) dan Sponge (sebagai plugin) untuk berinteraksi. Di sisi kanan ada setup SpongeVanilla yang khas. Anda akan melihat bahwa SpongeVanilla tidak mendukung mods Forge atau hibrida, karena SpongeVanilla kehilangan fungsi Forge: