> For the complete documentation index, see [llms.txt](https://base-es.gitbook.io/base/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://base-es.gitbook.io/base/overview/cadena-de-herramientas/truffle.md).

# Truffle

**Truffle** es una suite integral de herramientas diseñada para facilitar el desarrollo de contratos inteligentes.

Con **Truffle**, puedes diseñar, probar, depurar y desplegar tus contratos inteligentes en Base de manera eficiente.

#### Usando Truffle con Base

Si deseas configurar **Truffle** para desplegar contratos inteligentes en Base, sigue estos pasos:

1. **Instalación de Truffle**\
   Para instalar Truffle en tu sistema, ejecuta el siguiente comando:

   ```bash
   bashCopy codenpm install -g truffle
   ```
2. **Creación de un nuevo proyecto Truffle**\
   Inicia un nuevo proyecto con Truffle utilizando el siguiente comando:

   ```bash
   bashCopy codetruffle init
   ```
3. **Configuración de la red en Truffle**\
   Es necesario actualizar el archivo `truffle-config.js` de tu proyecto para añadir Base como una red. Aquí te muestro cómo hacerlo:

   ```javascript
   javascriptCopy codeconst HDWalletProvider = require('@truffle/hdwallet-provider');

   module.exports = {
     networks: {
       'base-mainnet': {
         provider: function () {
           return new HDWalletProvider('MNEMONIC', 'https://mainnet.base.org');
         },
       },
       'base-goerli': {
         provider: function () {
           return new HDWalletProvider('MNEMONIC', 'https://goerli.base.org');
         },
       },
       'base-local': {
         host: 'localhost',
         port: 8545,
         network_id: '*',
       },
     },
   };
   ```

   **INFO:**\
   Recuerda que 'MNEMONIC' es la frase mnemotécnica secreta asociada a la cuenta que utilizarás para desplegar el contrato.
4. **Compilación y despliegue del contrato inteligente**\
   Una vez que hayas realizado las configuraciones anteriores, puedes compilar y desplegar tu contrato con el siguiente comando:

   ```bash
   bashCopy codetruffle migrate --network base-goerli
   ```

   Nota: Cuando estés listo para desplegar en la red principal, simplemente cambia `base-goerli` por `base-mainnet` y ejecuta el comando nuevamente.

**INFO:**\
Para más detalles sobre cómo desplegar contratos en Base utilizando Truffle, te recomiendo que consultes [Desplegar un contrato inteligente](https://docs.base.org/guides/deploy-smart-contracts).

Espero que esta reescritura te sea útil y te facilite el proceso de trabajar con **Truffle** y Base. ¡Buena suerte en tu desarrollo!
