Pubblicare su Marketplace
Per rendere il tuo plugin disponibile agli utenti XIQUIL, pubblicalo sul Marketplace tramite l’Hub.
Prerequisiti
Sezione intitolata “Prerequisiti”- Account sull’Hub XIQUIL con candidatura Publisher approvata (vedi Passo 1)
- Plugin pacchettizzato come archivio
.tar.gz, preferibilmente conplugin.source.jsonnella root - Metadata catalogo compilati nel form Hub
- Versione pubblica in formato
x.x.x - Test locale completato da Marketplace plugin > Sviluppatore
Il pacchetto caricato sull’Hub deve contenere codice e manifest tecnico. Puo includere router.py, plugin.py, requirements.txt, pacchetti Python, templates/ e frontend/bundle.js. Il plugin.json finale viene generato dall’Hub al momento dell’approvazione. Vedi Manifest e metadata plugin per il contratto completo.
Passo 1: Ottieni l’accesso Publisher
Sezione intitolata “Passo 1: Ottieni l’accesso Publisher”L’upload richiede una candidatura approvata. Il percorso verifica email e MFA, registra la versione dell’accordo Marketplace accettato e conserva la decisione motivata del backoffice.
- Vai su hub.xiquil.com e crea un account (o accedi).
- Verifica l’indirizzo email e attiva MFA.
- Apri Diventa Publisher, completa la candidatura e accetta l’accordo mostrato dall’Hub.
- Invia la pratica e attendi l’approvazione oppure una richiesta di modifica.
La guida Diventare Publisher Marketplace spiega requisiti, stati e trattamento proporzionato dei dati.
Una volta approvato, nella navigazione compare la sezione Developer.
Passo 2: Carica il plugin
Sezione intitolata “Passo 2: Carica il plugin”- Nella sezione I miei plugin, registra un nuovo plugin (nome/slug univoco, descrizione, categoria, tier richiesto)
- Carica l’archivio
.tar.gzcome nuova versione e inserisci versione pubblica, changelog e compatibilità Core - (Opzionale) Carica un’icona PNG 128×128, max 50 KB
- Verifica che il manifest tecnico sia coerente con lo slug registrato
- Clicca Invia per review
La versione passa così dallo stato draft a pending_review.
Durante la review non puoi modificare direttamente metadata, archivio o campi versione della release inviata. Se devi correggere qualcosa, attendi l’esito della review o prepara una nuova bozza quando l’amministratore rifiuta o richiede modifiche.
Prima di inviare la review, controlla che:
- il nome nel manifest coincida con lo slug registrato;
- la release version impostata sull’Hub sia superiore alla versione gia pubblicata;
min_core_versionsia impostata nel form versione dell’Hub;- il tier richiesto sia coerente con il piano scelto sull’Hub;
- eventuali pacchetti OS siano dichiarati in
system_packages; - il plugin funzioni dopo restart su una installazione pulita;
- le route plugin proteggano dati e permessi come le route core.
Passo 3: Scansione automatica + review manuale
Sezione intitolata “Passo 3: Scansione automatica + review manuale”Al caricamento, l’Hub esegue una scansione automatica di sicurezza:
| Controllo | Cosa verifica |
|---|---|
| Bandit | Analisi statica per vulnerabilità di sicurezza |
| pip-audit | Verifica delle dipendenze per CVE noti |
| Pattern pericolosi | Ricerca di eval, exec, os.system e simili |
Se l’amministratore approva, sceglie il canale di rilascio (beta o stable) e assegna la versione di rilascio; l’Hub genera il plugin.json effettivo, firma il pacchetto (RSA-PSS 4096), aggiunge il keyid della chiave Marketplace e lo rende visibile nel catalogo. Se rifiuta, indica una motivazione e la versione passa a rejected.
Passo 4: Distribuzione
Sezione intitolata “Passo 4: Distribuzione”Dopo l’approvazione, il plugin appare nel Marketplace di XIQUIL. Gli utenti con un tier di licenza compatibile possono installarlo dalla loro istanza:
- Impostazioni avanzate > Plugin
- Sfoglia il Marketplace
- Clicca Installa sul plugin desiderato
L’installazione dal Marketplace scarica il pacchetto firmato dall’Hub. XIQUIL verifica la firma usando le chiavi Marketplace fidate presenti nella licenza attiva, installa eventuali dipendenze, registra il plugin in database e chiede un restart quando necessario.
Prima dell’installazione, XIQUIL controlla anche la compatibilità dichiarata nel manifest (min_core_version e max_core_version). Se il plugin richiede una versione diversa del Core, l’installazione viene bloccata con un messaggio esplicito.
Aggiornamenti
Sezione intitolata “Aggiornamenti”Per pubblicare un aggiornamento:
- Incrementa la release version nel form Hub
- Ricostruisci l’archivio
.tar.gz - Caricalo come nuova versione dello stesso plugin e invialo per review
- L’amministratore approva la nuova versione (può anche promuovere una
betaastable)
Gli utenti ricevono una notifica quando un aggiornamento è disponibile.
La release version deve essere in formato x.x.x, senza prefisso v, e deve essere maggiore dell’ultima versione approvata dello stesso plugin. Il canale (beta o stable) viene scelto in review dall’amministratore e non fa parte della stringa di versione.
Le bozze vecchie o sostituite possono essere archiviate dal pannello Developer. Le versioni archiviate non sono candidate alla review e restano nascoste finché non attivi Mostra archiviate. Puoi ripristinare una versione archiviata come bozza se vuoi riprenderla; l’Hub archivia automaticamente eventuali altre bozze attive dello stesso plugin per evitare sovrapposizioni.
Durante l’aggiornamento dal Marketplace, il Core controlla che il pacchetto firmato contenga lo stesso name del plugin già installato. Se il pacchetto appartiene a un altro plugin, l’aggiornamento viene bloccato prima di sostituire i file.
Se l’aggiornamento aggiunge nuove tabelle o colonne, rendi la migrazione idempotente in on_startup: il plugin puo essere aggiornato su installazioni con dati gia esistenti e su installazioni nuove.
Badge e plugin ufficiali
Sezione intitolata “Badge e plugin ufficiali”Ogni plugin nel catalogo ha un badge di fiducia, assegnato dagli amministratori XIQUIL (non è auto-assegnabile dal developer):
| Badge | Significato |
|---|---|
| Ufficiale | Plugin sviluppato e mantenuto dal team XIQUIL |
| Community verificato | Plugin di terze parti revisionato e ritenuto affidabile da XIQUIL |
| Community | Plugin di terze parti pubblicato, senza verifica estesa |
| Non verificato | Stato iniziale, prima di qualsiasi assegnazione |
I plugin ufficiali seguono lo stesso flusso di pubblicazione descritto sopra (caricamento → scansione → approvazione admin); il badge Ufficiale viene applicato dall’amministratore dopo l’approvazione per segnalarne la provenienza dal team XIQUIL. Il badge riguarda solo la fiducia/provenienza mostrata in catalogo: non modifica scansione, review o canale di distribuzione.
Domande frequenti
Sezione intitolata “Domande frequenti”Quanto tempo richiede la review? La scansione automatica richiede pochi minuti, ma la pubblicazione dipende dall’approvazione manuale di un amministratore: i tempi variano in base alla coda di review.
Posso pubblicare plugin a pagamento?
Il pagamento non avviene sul Marketplace: i plugin sono distribuiti per tier di licenza (starter / pro / business). Impostando un tier richiesto, il plugin è installabile solo dagli utenti con quel tier (o superiore).
Come ritiro un plugin pubblicato? La disattivazione di un plugin pubblicato (toggle visibilità in catalogo) è gestita dagli amministratori XIQUIL: contatta il team per richiederla. Gli utenti che lo hanno già installato continuano a usarlo, ma non sarà più disponibile per nuove installazioni.