Remixd: Accedere al tuo filesystem locale
Per dare all’IDE Remix (l’applicazione web) l’accesso a una cartella sul tuo computer, è necessario usare Remixd - il plugin con remixd - il modulo cli/npm.
Il plugin Remixd può essere attivato dal gestore dei plugin o da Esplora file - vedere l’immagine qui sotto. Il comando connect to localhost (connetti al localhost) attiverà il plugin Remixd.
Una volta cliccato su connect to localhost (connetti a localhost) o attivato Remixd dal Gestore di Plugin, si aprirà una finestra di dialogo:
Il plugin Remixd è un plugin websocket e non ha un’interfaccia utente se non questa finestra di dialogo - quindi non vedrete un’icona Remixd nel pannello delle icone.
Prima di premere Connect (Comnetti), è necessario installare il [modulo NPM remixd] (https://www.npmjs.com/package/@remix-project/remixd) ed eseguire il comando remixd.
Il codice di remixd
è qui .
installazione di remixd
remixd è un modulo NPM e può essere installato globalmente con il seguente comando: npm install -g @remix-project/remixd`
Oppure installatelo semplicemente nella directory di vostra scelta, rimuovendo il flag -g: npm install @remix-project/remixd
NOTA: Quando il modulo NPM remixd viene installato, installa anche Slither, solc-select and sets solc alla versione più recente, per esempio, la 0.8.15 corrente.
ALSO NOTE: Python3.6+ (pip3)
needs to already be installed on the System. (This packaging of Slither with the remixd module is supported since Remixd v0.6.3). In case of any discrepancy, Slither can also be installed along with other dependencies using command remixd -i slither
Trova la tua versione di remixd
Il comando: remixd -v
o remixd --version
restituirà il numero della tua versione.
**Se questo comando non funziona, avete una versione non aggiornata
Aggiornamento all’ultimo remixd
Poiché remixd crea un ponte dal browser al tuo filesystem locale, è importante disporre dell’ultima versione dello script.
Per gli utenti che hanno installato la versione di remixd da un indirizzo NPM MOLTO vecchio o per gli utenti che non sanno da quale indirizzo NPM l’hanno installata, eseguire questi 2 passaggi:
disinstallare il vecchio: npm uninstall -g remixd
installare il nuovo: npm install -g @remix-project/remixd
Per la maggioranza degli utenti che sanno di avere una versione di remixd installata da @remix-project/remixd, basta eseguire:
npm install -g @remix-project/remixd
comandi di remixd
Il comando remixd senza opzioni utilizza la directory corrente del terminale come directory condivisa e il dominio Remix condiviso sarà https://remix.ethereum.org
, https://remix-alpha.ethereum.org
o https://remix-beta.ethereum.org
Il comando remixd è:
remixd
Se si utilizza Remix da localhost o non si esegue il comando dalla propria directory di lavoro, è necessario utilizzare il comando con i flag.
opzioni di remixd
Usage: remixd [options]
Establish a two-way websocket connection between the local computer and Remix IDE for a folder
Options:
-v, --version output the version number
-u, --remix-ide <url> URL of remix instance allowed to connect
-s, --shared-folder <path> Folder to share with Remix IDE (Default: CWD)
-i, --install <name> Module name to install locally (Supported: ["slither"])
-r, --read-only Treat shared folder as read-only (experimental)
-h, --help output usage information
Example:
remixd -s ./shared_project -u http://localhost:8080
NOTA: remixd -i slither
può essere usato per installare Slither insieme alle sue dipendenze
HTTP vs HTTPS nel comando remixd
Se il browser è su https://remix.ethereum.org (secure http), usare https nel comando:
remixd -s <absolute-path-to-the-shared-folder> --remix-ide https://remix.ethereum.org
Oppure, se si usa http nel browser, usare http nel comando remixd.
Permessi di lettura/scrittura & Modalità di sola lettura
La cartella viene condivisa utilizzando una connessione websocket tra l”IDE Remix
e remixd
.
Assicurarsi che l’utente che esegue remixd
abbia i permessi di lettura/scrittura sulla cartella.
In alternativa, c’è un’opzione per eseguire remixd in modalità di sola lettura, usando il flag --read-only
.
Utilizzo Porte
remixd
funziona effettuando connessioni websocket con l’IDE Remix su diverse porte. Le porte sono definite in accordo con lo scopo specifico. I dettagli sull’uso delle porte sono i seguenti:
65520 : per il listener websocket
remixd
, per condividere il file system locale con l’IDE Remix. La cartella condivisa sarà caricata nell’area di lavoroEsplora File
dell’IDE Remix, denominatalocalhost
65522 : per il listener websocket
hardhat
, per abilitare la compilazione Hardhat usando il pluginSolidity Compiler
(Compilatore Solidity) dell’IDE Remix, se la cartella condivisa è un progetto Hardhat.65523 : per il listener websocket
slither
, per abilitare l’analisi di Slither usando il pluginSolidity Static Analysis
(Analisi statica Solidity) dell’IDE Remix65524 : per il listener websocket
truffle
, per abilitare la compilazione Truffle usando il pluginSolidity Compiler
(Compilatore Solidity) dell’IDE Remix, se la cartella condivisa è un progetto Truffle.
Nota: Assicurarsi che il tuo sistema sia sufficientemente protetto e che queste porte non siano aperte o inoltrate.
Attenzione!
remixd
fornisce accesso completo in lettura e scrittura alla cartella data per qualsiasi applicazione che possa accedere allaporta TCP 65520
sul tuo host locale.Per minimizzare il rischio, Remixd può SOLO fare da ponte tra il vostro filesystem e gli URL dell’IDE di Remix - inclusi:
https://remix.ethereum.org
https://remix-alpha.ethereum.org
https://remix-beta.ethereum.org
package://a7df6d3c223593f3550b35e90d7b0b1f.mod
package://6fd22d6fe5549ad4c4d8fd3ca0b7816b.mod
https://ipfsgw.komputing.org
(il pacchetto:// url nella lista sopra sono per remix desktop)
Cliccando Connetti nella finestra di dialogo.
Cliccando sul pulsante Connect (Connetti) nella finestra di dialogo di Remixd (vedi immagine sopra), si tenterà di avviare una sessione dove il tuo browser potrà accedere alla cartella specificata nel filesystem del tuo computer.
Se non c’è remixd
in esecuzione in background - si aprirà un’altra finestra di dialogo che dirà:
Cannot connect to the remixd daemon.
Please make sure you have the remixd running in the background.
Assumendo che non venga visualizzata la seconda finestra di dialogo, la connessione al daemon remixd è riuscita. La cartella condivisa sarà visibile nell’area di lavoro di Esplora file sotto localhost.
Creazione & cancellazione di cartelle e file
Cliccando sull’icona new folder (nuova cartella) o new file (nuovo file) sotto localhost si crea un nuovo file o una nuova cartella nella cartella condivisa. Allo stesso modo, cliccando con il tasto destro su un file o una cartella è possibile rinominare o eliminare il file.
Chiusura di una sessione di remixd
Nel terminale in cui remixd è in esecuzione, digitando ctrl-c
si chiuderà la sessione. L’IDE Remix visualizzerà un messaggio modale che indicherà che remixd ha smesso di funzionare.