04 / SVILUPPARE5 MIN DI LETTURA

Avviare il progetto in locale

Le directory hanno dipendenze proprie. Usa i lockfile del repository e mantieni allineate le versioni di contratti, ABI, manifest e client.

I comandi seguenti costruiscono o verificano i componenti in locale. Non costituiscono una procedura di messa in produzione.

Prerequisiti

Il progetto usa Node.js recente, pnpm per dapp e servizi, Foundry per Solidity e npm per questo GitBook. I servizi richiedono Node 22 o superiore; il GitBook è stato preparato con Node 24.

I contratti fissano Solidity 0.8.26, EVM Cancun, compilazione via IR, ottimizzatore a 10 runs e nessun metadato CBOR. Questi parametri fanno parte dell’identità dei bytecode da verificare.

Dopo la clonazione, le dipendenze Solidity del repository devono essere presenti:

git submodule update --init --recursive

Compilare e testare i contratti

Da contracts/:

forge build --sizes
forge test

La configurazione contiene diversi livelli di fuzzing e invarianti:

FOUNDRY_PROFILE=ci forge test
FOUNDRY_PROFILE=gate forge test

Il profilo gate è volutamente lungo. Un risultato di test deve essere associato alla revisione esatta, ai parametri e alle fonti compilate. La nuova implementazione a più muri è ancora in validazione; un vecchio log non è un risultato di questi comandi su questa versione.

Avviare la dapp

Da dapp/:

pnpm install --frozen-lockfile
pnpm typecheck
pnpm test
pnpm build
pnpm dev

Vite mostra l’URL di sviluppo. La configurazione distingue una modalità simulazione dai dati del deployment configurato. Usa gli esempi e le istruzioni del repository per configurare un RPC locale, senza copiare credenziali d’accesso nelle fonti o nel bundle pubblico.

La compilazione del frontend non prova che il suo manifest corrisponda al contratto presente sulla rete.

Mantenere le ABI

Da contracts/, l’esportazione segue la compilazione:

bash scripts/export-abi.sh
python3 scripts/check-abi.py

La dapp dispone di pnpm gen-abi e i servizi di pnpm gen:abi. Esamina le modifiche prodotte per interfacce, eventi e tipi interessati. La nuova libreria dei muri e le viste per ID vanno incluse nella sincronizzazione della release.

Il comando pnpm sync-deployment della dapp rilegge un manifest di deployment: va eseguito solo con i metadati della versione realmente verificata.

Verificare i servizi

Da services/:

pnpm install --frozen-lockfile
pnpm gen:abi
pnpm typecheck
pnpm test

La modalità dry-run del keeper si configura con i parametri locali documentati nel suo README. Esercizio e ripresa delle transazioni hanno una pagina dedicata.

Avviare questo GitBook

Da gitbook/:

npm ci
npm run dev

Il sito viene servito su http://localhost:4000 con ricostruzione delle pagine. Per produrre la directory statica _book/ e verificare i collegamenti:

npm run build
npm run preview

L’anteprima locale usa http://localhost:4001. I font sono inclusi; la ricerca viene eseguita nel browser sull’indice del libro.

Per verificare i percorsi browser della documentazione:

npm run test:install
npm run test:browser

Il README di gitbook/ descrive la scelta di HonKit, la struttura, i controlli e la manutenzione editoriale.

Fonti: contracts/foundry.toml, script del repository, dapp/package.json, services/package.json e gitbook/package.json. Per la build di questa documentazione non servono chiavi né URL RPC autenticati.

CUBIT / 10 settembre 2026 Fonti e metodo