@ -58,7 +58,7 @@ Then, create a `index.js` file like this,
import panelJson from './panel.json';
import enJson from '../en';
// There may have some un-translated content. Always fill in the gaps with EN JSON.
// There may have some untranslated content. Always fill in the gaps with EN JSON.
// No need for a defaultMessage prop when render a FormattedMessage component.
export default Object.assign({}, enJson, {
...panelJson,
@ -84,7 +84,7 @@ If you search `FormattedMessage` or `intl.formatMessage` in this project, you wi
**Why?**
Each non-english language will be filled in the gaps with english. Even though there may be some un-translated content, it will always use english as defaultMessage. That's why we don't need to provide a `defaultMessage` prop each time we render a `FormattedMessage` component.
Each non-english language will be filled in the gaps with english. Even though there may be some untranslated content, it will always use english as defaultMessage. That's why we don't need to provide a `defaultMessage` prop each time we render a `FormattedMessage` component.
But in some cases, the `id` prop may not be static. For example,
"editor.title1.message1":"Hai appena incollato un frammento di codice o contratto nell'editor.",
"editor.title1.message2":"Assicurati di comprenderlo a pieno prima di distribuire, o interagire con, questo contratto. Non cadere nelle truffe!",
"editor.title1.message3":"L'esecuzione di codice non attendibile può mettere <span>a rischio</span> il tuo portafoglio. Nel peggiore dei casi, potresti <span>perdere tutto il tuo denaro</span>.",
"editor.title1.message4":"Se non lo comprendi del tutto, ti preghiamo di non eseguire questo codice.",
"editor.title1.message5":"Se non sei uno sviluppatore di contratti intelligenti, chiedi a qualcuno di fiducia, che abbia le capacità di determinare se questo codice è sicuro per l'utilizzo.",
"editor.title1.message6":"Consulta <a>questi consigli</a> per ulteriori informazioni.",
"editor.zoomIn":"Ingrandisci",
"editor.zoomOut":"Riduci",
"editor.formatCode":"Formatta il Codice",
"editor.generateDocumentation":"Genera della documentazione per questa funzione",
"editor.generateDocumentation2":"Genera della documentazione per questa funzione \"{name}\"",
"editor.generateDocumentationByAI":"```solidity\n {content}\n```\n Generi esclusivamente la documentazione di natspec per la funzione {currentFunction}, utilizzando la sintassi di stile docstring. Utilizza soltanto i tag supportati da docstring",
"editor.explainFunction":"Spiega questa funzione",
"editor.explainFunctionSol":"Spiega questo codice",
"editor.explainFunction2":"Spiega la funzione \"{name}\"",
"editor.explainFunctionByAI":"```\n{content}\n```\nSpiega la funzione {currentFunction}",
"editor.explainFunctionByAISol":"```\n{content}\n```\nSpiega la funzione {currentFunction}",
"editor.ExplainPipeMessage":"```\n {content}\n```\nSpiega il precedente frammento",
"editor.executeFreeFunction":"Esegui una funzione gratuita",
"editor.executeFreeFunction2":"Esegui la funzione gratuita \"{name}\"",
"editor.toastText1":"Questo può eseguire esclusivamente la funzion gratuita",
"editor.toastText2":"Ti preghiamo di andare alle impostazioni di Remix, per attivare le funzionalità dell'editor del codice, o attendi il caricameento dl contesto dell'editor attuale.",
"editor.text":"Il file è aperto in modalità di <b>sola lettura</b>."
"filePanel.workspace.updateGist":"Pubblica aggiornamento di Gist",
"filePanel.viewAllBranches":"Visualizza tutte le branch",
"filePanel.createBranch":"Crea una branch",
"filePanel.switchBranches":"Cambia branch",
"filePanel.checkoutGitBranch":"Controllare il ramo Git",
"filePanel.findOrCreateABranch":"Trovare o creare un ramo.",
"filePanel.initGitRepositoryLabel":"Inizializza l'area di lavoro come nuovo repository git",
"filePanel.initGitRepositoryWarning":"Per utilizzare le funzioni di Git, aggiungere nome utente ed e-mail alla sezione Github del pannello Impostazioni.",
"filePanel.initGitRepositoryWarning":"Per utilizzare le funzionalità di Git, aggiungi il nome utente e l'email alla sezione di GitHub del plugin di Git.",
"filePanel.createPublicGist":"Pubblica su un Gist pubblico",
"filePanel.createPublicGistMsg1":"Sei sicuro di voler inviare le modifiche al file gist remoto su github.com?",
"filePanel.createPublicGistMsg2":"Sei sicuro di voler pubblicare in modo anonimo tutti i tuoi file nella cartella {path} come gist pubblico su github.com?",
"filePanel.createPublicGistMsg3":"Sei sicuro di voler pubblicare in modo anonimo tutti i tuoi file nella cartella {path} come gist pubblico su github.com?",
@ -103,6 +120,12 @@
"filePanel.mintable":"Mintable",
"filePanel.burnable":"Bruciabile",
"filePanel.pausable":"Pausabile",
"filePanel.semaphore":"Semaforo",
"filePanel.hashchecker":"Controllo dell'Hash",
"filePanel.rln":"Nullificatore del Rate-Limiting",
"filePanel.breakthroughLabsUniswapv4Hooks":"Hook di Breakthrough-Labs",
"home.scamAlertText":"L'unico URL utilizzato da Remix è remix.ethereum.org",
"home.scamAlertText2":"Attenzione ai video online che promuovono i \"bot di che fanno \"front running\" di liquidità\"",
"home.scamAlertText3":"Ulteriori suggerimenti di sicurezza",
"home.learnMore":"Scopri di più",
"home.here":"qui",
"home.here":"altro",
"home.featured":"In Evidenza",
"home.jumpIntoWeb3":"JUMP INTO WEB3",
"home.jumpIntoWeb3More":"More",
"home.jumpIntoWeb3Text":"Remix IDE is part of the Remix Project, a rich toolset that can be used for the entire journey of contract development by users of any knowledge level. Learn more on the Remix Project website.",
"home.learnEthPromoTitle":"LearnEth: Tutorial dentro Remix",
"home.learnEthPromoButton":"Inizia a imparare",
"home.learnEthPromoText":"Consulta i tutorial su Remix, Solidity e altri progetti del Web3. Ottimo per tutti i livelli di competenza.",
"home.remixYouTube":"GUARDA PER IMPARARE",
"home.remixYouTubeText1":"Video di Suggerimenti dal Team di Remix",
"home.remixYouTubeMore":"Guarda",
@ -28,7 +29,7 @@
"home.dgitPluginDesc":"Aggiungi il controllo delle sorgenti ai tuoi progetti.",
"home.oneClickDappDesc":"Genera rapidamente interfacce per contratti intelligenti",
"quickDapp.text1":"QuickDapp funziona soltanto per il Fornitore Iniettato, al momento. Ulteriori fornitori saranno adottati nelle iterazioni future.",
"quickDapp.text2":"Il click sull'icona di modifica in un contratto distribuito, inserirà automaticamente i parametri.",
"quickDapp.admin":"Admin",
"quickDapp.resetFunctions":"Ripristina le funzioni",
"quickDapp.deleteDapp":"Elimina dApp",
"quickDapp.text3":"QuickDapp distribuisce su Surge.sh. I profili di Surge sono gratuiti fiino al raggiungimento di un livello d'utilizzo. L'email e la password che inserisci di seguito, ti consentiranno di accedere a un profilo di Surge. Il dominio secondario è di tua scelta, ma dev'essere univoco. Ulteriori informazioni su <a>surge.sh</a>",
"quickDapp.email":"Email",
"quickDapp.surgeEmail":"Email di Surge",
"quickDapp.password":"Password",
"quickDapp.surgePassword":"Password di Surge",
"quickDapp.subdomain":"Dominio secondario",
"quickDapp.uniqueSubdomain":"Nome univoco del dominio secondario",
"quickDapp.shareTo":"Condividi con (Facoltativo)",
"settings.reset":"Ripristino delle impostazioni predefinite",
"settings.general":"Impostazioni generali",
"settings.generateContractMetadataText":"Generare i metadati del contratto. Genera un file JSON nella cartella del contratto. Permette di specificare gli indirizzi delle librerie da cui dipende il contratto. Se non viene specificato nulla, Remix distribuisce le librerie in modo automatico.",
"settings.general":"Generali",
"settings.generateContractMetadataText":"Genera i metadati del contratto",
"settings.generateContractMetadataTooltip":"Genera un file JSON nella cartella del contratto. Consente di specificare gli indirizzi della libreria da cui dipende il contratto. Se non viene specificato nulla, Remix distribuisce automaticamente le librerie.",
"settings.ethereunVMText":"Utilizzare sempre la macchina virtuale Remix al momento del caricamento",
"settings.wordWrapText":"A capo automatico nell'editor",
"settings.useAutoCompleteText":"Abilita il completamento del codice nell'editor.",
"settings.useShowGasInEditorText":"Visualizza le stime del gas nell'editor.",
"settings.displayErrorsText":"Visualizza gli errori nell'editor durante la digitazione.",
"settings.matomoAnalytics":"Attiva \"Matomo Analytics\". Non raccogliamo informazioni di identificazione personale (PII, dall'inglese \"personally identifiable information\"). Le informazioni vengono utilizzate per migliorare l'esperienza utente e l'interfaccia utente del sito. Per saperne di più ",
"settings.enablePersonalModeText":" Abilita la modalità personale per il provider web3. Le transazioni inviate tramite Web3 utilizzeranno l'API web3.personal.\n",
"settings.warnText":"Assicurati che l'endpoint sia aperto prima di abilitarlo. Questa modalità consente all'utente di fornire una frase d'accesso nell'interfaccia di Remix senza dover sbloccare l'account. Sebbene sia molto comodo, è necessario fidarsi completamente del backend a cui si è connessi (Geth, Parity, ...). Remix non conserva mai alcuna frase d'accesso",
"settings.useAutoCompleteText":"Abilita il completamento del codice nell'editor",
"settings.useShowGasInEditorText":"Mostra le stime sul gas nell'editor",
"settings.displayErrorsText":"Mostra gli errori nell'editor durante la digitazione",
"settings.matomoAnalyticsTooltip":"Non raccogliamo le informazioni di identificazione personali. Le informazioni sono utilizzate per migliorare l'UX e l'UI del sito.",
"settings.enablePersonalModeText":" Abilita la modalità Personale per il fornitore del Web3",
"settings.enablePersonalModeTooltip":"Le transazioni inviate sul Web3 utilizzeranno l'API web3.personal. Assicurati che l'endpoint sia aperto, prima di abilitarlo. Questa modalità consente a un utente di fornire una frase d'accesso nell'interfaccia di Remix, senza dover sbloccare il profilo. Sebbene ciò sia molto conveniente, dovresti fidarti completamente del backend cui sei connesso (Geth, Parity, ...). Remix non conserva mai alcuna frase d'accesso.",
"settings.gitAccessTokenText":"Il token di accesso viene utilizzato per pubblicare una Gist e recuperare i contenuti di GitHub. Potrebbe essere necessario inserire nome utente/email.",
"settings.gitAccessTokenText2":"Vai alla pagina dei token di github (link in basso) per creare un nuovo token e salvarlo in Remix. Assicurati che questo token abbia solo l'autorizzazione \"create gist\"",
"settings.etherscanTokenTitle":"Token di accesso a Etherscan",
"settings.etherscanAccessTokenText":"Gestione della chiave api utilizzata per interagire con Etherscan.",
"settings.etherscanAccessTokenText2":"Vai alla pagina delle chiavi api di Etherscan (link in basso) per creare una nuova chiave api e salvarla in Remix.",
"settings.sindriAccessTokenTitle":"Credenziali di Sindri",
"settings.sindriAccessTokenText":"Il token d'accesso viene utilizzato per compilare i circuiti ZKP e generare prove con Sindri.",
"settings.sindriAccessTokenText2":"Vai alla pagina di creazione del profilo di Sindri (link in basso), per creare un nuovo token e salvarlo su Remix.",
"settings.save":"Salva",
"settings.remove":"Rimuovi",
"settings.themes":"Temi",
@ -37,5 +42,9 @@
"settings.projectID":"ID PROGETTO",
"settings.projectSecret":"SEGRETO DEL PROGETTO",
"settings.analyticsInRemix":"Analytics nella Remix IDE",
"solidity.runStaticAnalysis.iconTooltip":"Clicca per analizzare le vulnerabilità di questo contratto con gli analizzatori di Remix, Solhint e Slither",
"solidity.runSolidityScan":"Esegui SolidityScan",
"solidity.solScan.iconTooltip":"Clicca per scansionare per le vulnerabilità di questo contratto con SolidityScan, un fornitore di terze parti [BETA]",
"solidity.solScan.modalTitle":"Autorizzazione per la condivisione del codice",
"solidity.solScan.modalMessage":"Per scansionare e analizzare il contratto per rischi e vulnerabilità, il suo codice sarà condiviso con SolidityScan, un fornitore di terze parti. ",
"terminal.listen":"ascolta su tutte le transazioni",
"terminal.listen":"Ascolta su tutte le transazioni",
"terminal.listenVM":"Ascolta su tutte le transazioni è disabilitato per l'ambiente della VM",
"terminal.listenTitle":"Se è selezionato, Remix ascolterà tutte le transazioni generate nell'environment attuale e non solo quelle create da te",
"terminal.search":"Cercare con hash o indirizzo della transazione",
"terminal.search":"Filtra con hash o indirizzo della transazione",
"terminal.used":"usato",
"terminal.debug":"Debug",
"terminal.welcomeText1":"Benvenuto a",
@ -11,10 +12,10 @@
"terminal.welcomeText5":"Esegui gli script JavaScript",
"terminal.welcomeText6":"Immettere uno script direttamente nell'interfaccia della riga di comando",
"terminal.welcomeText7":"Seleziona un file Javascript nel file explorer ed esegui `remix.execute()` o `remix.exeCurrent()` nell'interfaccia Command Line (Terminale)",
"terminal.welcomeText8":"Fare clic con il tasto destro su un file JavaScript nell'esplora file e quindi fare clic su `Run`",
"terminal.welcomeText8":"Clicca con il destro su un file JavaScript in Esplora File, quindi clicca su `Esegui`",
"terminal.welcomeText9":"Le seguenti librerie sono accessibili",
"terminal.welcomeText10":"Digitare il nome della libreria per vedere i comandi disponibili",
"terminal.text1":"Questo tipo di comando è stato deprecato e non è più funzionante. Si prega di eseguire remix.help() per elencare i comandi disponibili.",
"terminal.text1":"Questo tipo di comando è stato deprecato e non è più operativo. Ti preghiamo di eseguire remix.help() per elencare tutti i comandi disponibili.",
"udapp.atAddressOptionsTitle1":"indirizzo del contratto",
"udapp.atAddressOptionsTitle2":"Interagire con il contratto distribuito - richiede che il file .abi o il file .sol compilato sia selezionato nell'editor (con la stessa configurazione del compilatore)",
"udapp.atAddressOptionsTitle2":"Interagisci con il contratto distribuito; richiede che il file .abi, o il file .sol compilato, sia selezionato nell'editor (con la stessa configurazione del compilatore)",
"udapp.atAddressOptionsTitle3":"Compila un file *.sol o seleziona un file *.abi.",
"udapp.atAddressOptionsTitle4":"Per interagire con un contratto distribuito, è necessario inserire il suo indirizzo e compilare il file sorgente *.sol (con le stesse impostazioni del compilatore) oppure selezionare il file .abi nell'editor. ",
"udapp.contractOptionsTitle1":"Si prega di compilare *.sol file per distribuire o accedere a un contratto",
"udapp.contractOptionsTitle2":"Selezionare un contratto compilato da distribuire o da utilizzare con At Address.",
"udapp.contractOptionsTitle3":"Selezionare e compilare il file *.sol per distribuire o accedere a un contratto.",
"udapp.contractOptionsTitle4":"Quando c'è un file .sol compilato, scegliere il contratto da distribuire o da usare con At Address.",
"udapp.checkSumWarning":"Sembra che non si stia utilizzando un indirizzo con checksum. Un indirizzo con checksum è un indirizzo che contiene lettere maiuscole, come specificato in {a}. Gli indirizzi con checksum sono pensati per evitare che gli utenti inviino transazioni all'indirizzo sbagliato.",
"udapp.checkSumWarning":"Sembra che tu non stia utilizzando un indirizzo con somma di controllo. Si tratta di un indirizzo contenente delle lettere maiuscole, come specificato in {a}. Gli indirizzi con somma di controllo sono pensati per evitare che gli utenti inviino le transazioni all'indirizzo sbagliato.",
"udapp.isOverSizePromptEip170":"L'inizializzazione della creazione del contratto restituisce dati di lunghezza superiore a 24576 byte. La distribuzione probabilmente fallirà se la rete corrente ha attivato l'eip 170. Ulteriori informazioni: {a}",
"udapp.isOverSizePromptEip3860":"Il codice di avvio della creazione del contratto supera la dimensione massima consentita di 49152 byte. È probabile che la distribuzione fallisca se la rete corrente ha attivato l'eip 3860. Ulteriori informazioni: {a}",
"udapp.thisContractMayBeAbstract":"Questo contratto potrebbe essere astratto, potrebbe non implementare completamente i metodi di un contratto genitore astratto o potrebbe non invocare correttamente il costruttore di un contratto ereditato.",
"udapp.enterAMessageToSign":"Inserire un messaggio da firmare",
"udapp.enterAMessageToSign":"Inserisci un messaggio per firmare e clicca su `Firma`",
"udapp.hash":"hash",
"udapp.signature":"firma",
"udapp.saveVmStateTitle":"Save VM state",
"udapp.saveVmStateLabel":"State Name",
"udapp.saveVmStateTip":"Saved VM states can be pinned as environment using Environment Explorer",
"udapp.injectedTitle":"Purtroppo non è possibile creare un account utilizzando un provider iniettato. Per favore crea l'account direttamente dal tuo provider (cioè metamask o altro dello stesso tipo).",
"udapp.createNewAccount":"Crea un nuovo account",
"udapp.createNewAccount":"Crea un nuovo conto",
"udapp.web3Title":"La creazione di un account è possibile solo in modalità personale. Vai su Impostazioni per abilitarlo.",
"udapp.defaultTitle":"Purtroppo non è possibile creare un account utilizzando un portafoglio esterno ({selectExEnv}).",
"udapp.text1":"Fornisci una frase segreta per la creazione dell'account",
"udapp.tooltipText1":"L'elenco degli account è vuoto, assicurati che il provider corrente sia collegato correttamente a Remix",
"udapp.modalTitle1":"Passphrase per firmare un messaggio",
"udapp.modalMessage1":"Inserisci la tua frase segreta per questo account per firmare il messaggio",
"udapp.copyAccount":"Copia account negli appunti",
"udapp.signMsgUsingAccount":"Firma un messaggio utilizzando questo account",
"udapp.copyAccount":"Copia conto",
"udapp.signMsgUsingAccount":"Firma con questo conto",
"udapp.transactionsCountTooltip":"Il numero di transazioni registrate",
"udapp.transactionSaveTooltip1":"Nessuna transazione da salvare",
"udapp.transactionSaveTooltip2":"Salvare la transazione {count} come file di scenario",
"udapp.transactionSaveTooltip3":"Salvare le transazioni {count} come file di scenario",
"udapp.transactionsWalkthroughTooltip":"Inizia il tour dettagliato per il registratore.",
"udapp.infoRecorderTooltip":"Salvare le transazioni (contratti distribuiti ed esecuzioni di funzioni) e riprodurle in un altro ambiente, ad esempio le transazioni create nella macchina virtuale Remix possono essere riprodotte in Injected Provider.",
"udapp.livemodeRecorderTooltip":"Se i contratti vengono aggiornati dopo la registrazione delle transazioni, selezionando questa casella si eseguono le transazioni registrate con l'ultima copia dei contratti compilati",
"udapp.livemodeRecorderLabel":"Eseguire le transazioni utilizzando l'ultimo risultato della compilazione",
"udapp.mainnetText1":"Stai per creare una transazione su {name} Network. Conferma i dettagli per inviare le informazioni al tuo provider.",
"udapp.mainnetText2":"Il provider per molti utenti è MetaMask. Il provider ti chiederà di firmare la transazione prima che venga inviata alla rete {name}.",
@ -113,7 +129,7 @@
"udapp.contractCreation":"Creazione Contratto",
"udapp.transactionFee":"Transazione non valida. La commissione massima non dovrebbe essere inferiore alla commissione base",
"udapp.title1":"Rappresenta la parte della commissione della transazione che va al minatore.",
"udapp.title2":"Rappresenta l'importo massimo della commissione che pagherai per questa transazione. Il minimo deve essere impostato su Base Fee.",
"udapp.title2":"Rappresenta l'importo massimo della commissione che pagherai per questa transazione. Il minimo dev'essere impostato alla commissione di base.",
"udapp.gasPrice":"Prezzo del gas",
"udapp.gweiText":"visita {a} per informazioni sul prezzo corrente del gas.",
"udapp.EIP712-2":"Ti preghiamo di seguire <a>questo collegamento</a> per ottenere ulteriori informazioni.",
"udapp.EIP712-3":"Su Remix, è possibile firmare i dati digitati cliccando con il destro del mouse su Firma Dati Digitati su un file JSON il cui contenuto è compatibile con l'EIP-712.",
"udapp.EIP712-create-template":"Crea un JSON conforme all'EIP-712",
@ -30,8 +30,8 @@ Each library is an NPM package and has basic documentation about its usage in it
## Contributing
Everyone is very welcome to contribute on Remix Project. Suggestions, issues, queries and feedbacks are our pleasure. Please reach us on [Gitter](https://gitter.im/ethereum/remix) in case of any query.
Everyone is very welcome to contribute on Remix Project. Suggestions, issues, queries and feedback are our pleasure. Please reach us on [Gitter](https://gitter.im/ethereum/remix) in case of any query.
For more information on the contributing in code, see our [contribution guidelines](https://github.com/ethereum/remix-project/blob/master/CONTRIBUTING.md).
For more information on the contributing to the code, see our [contribution guidelines](https://github.com/ethereum/remix-project/blob/master/CONTRIBUTING.md).
`CompilerInput` can be used to form the [compiler input](https://github.com/ethereum/remix-project/blob/master/libs/remix-solidity/src/compiler/types.ts#L1) by passing the [options](https://github.com/ethereum/remix-project/blob/master/libs/remix-solidity/src/compiler/types.ts#L144)
`Compiler` is a class containing various methods to perform compiler related actions. Have a look to`Compiler` interface:
`Compiler` is a class containing various methods to perform compiler related actions. Have a look at `Compiler` interface:
```
class Compiler {
@ -135,7 +135,7 @@ class Compiler {
Please feel free to open an issue or a pull request.
In case you want to add some code, do have a look to our contribution guidelnes [here](https://github.com/ethereum/remix-project/blob/master/CONTRIBUTING.md). Reach us on [Gitter](https://gitter.im/ethereum/remix) in case of any queries.
In case you want to add some code, do have a look to our contribution guidelines [here](https://github.com/ethereum/remix-project/blob/master/CONTRIBUTING.md). Reach us on [Gitter](https://gitter.im/ethereum/remix) in case of any queries.
@ -269,7 +269,7 @@ For more details, see parameters' type definitions [here](src/types.ts).
Please feel free to open an issue or a pull request.
In case you want to add a code, do have a look to our contribution guidelines [here](https://github.com/ethereum/remix-project/blob/master/CONTRIBUTING.md). Reach us in [Gitter](https://gitter.im/ethereum/remix) in case of any queries.
In case you want to add a code, do have a look at our contribution guidelines [here](https://github.com/ethereum/remix-project/blob/master/CONTRIBUTING.md). Reach us in [Gitter](https://gitter.im/ethereum/remix) in case of any queries.
@ -29,8 +29,8 @@ This generates a verification key (`./zk/build/verification_key.json`) and artif
This script:
- create a list of identity commitments and add it to a `IncrementalMerkleTree`. The tree is used to generate a merkle proof that a specified identity is actually in the tree (see`tree.createProof(0)`).
- creates a list of identity commitments and add it to a `IncrementalMerkleTree`. The tree is used to generate a merkle proof that a specified identity is actually in the tree (see`tree.createProof(0)`).
- generate a witness and a proof of execution with `messageId`equal to 0.
- generating 2 proofs (two different messages) with the same `messageId` reveal the two points of the polynomial necessary to deduct the `identitySecret` (using `shamirRecovery`).
- generating 2 proofs (two different messages) with the same `messageId` reveal the two points of the polynomial necessary to deduce the `identitySecret` (using `shamirRecovery`).
@ -20,7 +20,7 @@ This generates a verification key (`./zk/build/verification_key.json`) and artif
#### 3) execute the file `run_verification.ts`:
This script:
- create a list of identity commitments and add it to a `IncrementalMerkleTree`. The tree is used to generate a merkle proof that a specified identity is actually in the tree (see `tree.createProof(0)`).
- generate a witness and a proof of execution.
- creates a list of identity commitments and add it to a `IncrementalMerkleTree`. The tree is used to generate a merkle proof that a specified identity is actually in the tree (see `tree.createProof(0)`).
- generates a witness and a proof of execution.
- verify that the proof is valid `(snarkjs.groth16.verify)`
- ultimately verify that the hash generated by the circom compiler is the same as the root hash for the Tree. `(proof1.root.toString() === publicSignals[0]`). This asserts that the identity provided to the circuit is actually part of that semaphore group.
`@remix-project/remixd` is an NPM module that intends to be used with [Remix IDE](https://remix.ethereum.org/) web and desktop applications. It establishes a two-way websocket connection between the local computer and Remix IDE for a particular project directory.
`remixd` can be used to setup a development environment with other popular frameworks like Hardhat, Truffle, Slither etc.
`remixd` can be used to setup a development environment with other popular frameworks like Hardhat, Truffle, Slither etc.
More details are explained in the [documentation](https://remix-ide.readthedocs.io/en/latest/remixd.html).
@ -71,13 +71,13 @@ The current user should have `read/write` access to the folder (at least `read`
It is important to notice that changes made to the current file in `Remix IDE` are automatically saved to the local computer every 5000 ms. There is no `Save` action. But the `Ctrl-Z` (undo) can be used.
Furthermore:
- No copy of the shared folder are kept in the browser storage.
- No copy of the shared folder is kept in the browser storage.
- Clicking on the new folder or new file icon under localhost will create a new file or folder in the shared folder.
- If a folder does not contain any file, the folder will not be displayed in the explorer (that might change).
- Symbolic links are not forwarded to Remix IDE.
## Ports Usage
remixd creates a websocket connections with Remix IDE on different ports. Ports are defined according to specific purpose. Port usage details are as:
remixd creates a websocket connection with Remix IDE on different ports. Ports are defined according to specific purposes. Port usage details are as:
- **65520** : For `remixd` websocket listener, to share a project from local device with Remix IDE. Shared folder will be loaded in the Remix IDE File Explorer workspace named localhost [See more](https://remix-ide.readthedocs.io/en/latest/remixd.html)
- **65522** : For `Hardhat` websocket listener, to enable the Hardhat Compilation using Remix IDE Solidity Compiler plugin, if shared folder is a Hardhat project [See more](https://remix-ide.readthedocs.io/en/latest/hardhat.html)