La struttura del Progetto Sponge
Avvertimento
This documentation refers to an outdated SpongeAPI version and is no longer actively maintained. While the code examples still work for that API version, the policies, guidelines, and some links may have changed. Please refer to the latest version of the documentation for those.
Il progetto Sponge è costituito da diversi sottoprogetti, ospitati in vari repository su GitHub. Prima di entrare nel dettaglio, ecco una breve panoramica:
Progetto |
Descrizione |
Cosa è fatto in questa repository? |
---|---|---|
La stessa API |
Sviluppo dell’API stessa |
|
Un’implementazione della SpongeAPI costruita al di sopra di Forge |
Sviluppo delle parti dI SpongeForge che si basano su Forge |
|
Un’implementazione di SpongeAPI costruita direttamente al di sopra di Minecraft Vanilla |
Sviluppo della controparte Vanilla della repository di SpongeForge |
|
Il codice condiviso tra SpongeForge e SpongeVanilla |
Sviluppo di tutto il codice che è condiviso tra SpongeForge e SpongeVanilla |
|
Lo strumento utilizzato per iniettare le implementazioni nella struttura del codice sottostante |
Sviluppo della nostra soluzione per agganciare Sponge nel server di Minecraft |
|
La documentazione ufficiale del ProgettoSponge |
Espandere, Fixare, e scrivere i SpongeDocs |
|
Il sito web per il ProgettoSponge |
Sviluppo del nostro sito |
|
Soluzione hosting per plugin |
Sviluppo della soluzione hosting per plugin |
SpongeCommon, SpongeForge e SpongeVanilla
Il repository di SpongeCommon è la base che contiene tutto il codice che è condiviso tra l’implementazione di SpongeForge e SpongeVanilla. Il repository di SpongeForge e SpongeVanilla contengono tutto il codice che non può essere condiviso tra di loro, poiché Forge richiede alcune cose specifiche che non funzionano su Vanilla e viceversa.
Quando ti riferisci all’implementazione di SpongeForge, in pratica stai parlando di tutto che è contenuto nelle repository di SpongeCommon e SpongeForge. Lo stesso vale per SpongeVanilla e SpongeCommon. Questo è il motivo per cui costruire SpongeForge o SpongeVanilla dal repository senza includere SpongeCommon non funzionerà.
SpongeHome
SpongeHome is the SpongeProject’s website. It’s written in Golang, using the go-macaron library. It uses SCSS as it’s CSS preprocessor.
Minerale
Ore è la nostra vera soluzione hosting per plugin. È scritto in Scala, basata sul Framework Play e naturalmente open-source!
Come tutto è legato insieme
L’immagine mostra le varie parti delle implementazioni di Sponge e come interagiscono l’uno con l’altro e le loro dipendenze. Sul lato sinistro si trova una tipica installazione di SpongeForge con alcuni plugin di SpongeAPI, una mod Forge e un ibrido che usa Forge( come una mod) e Sponge (come un plugin) per interagire. Sul lato destro c’è una tipica installazione di SpongeVanilla. Noterai che SpongeVanilla non supporta le mod Forge o gli ibridi, perché esso non presenta la funzionalità di Forge: