Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Truffle Suite

11/14
Recursos

Instalación

Seguiremos unos cuantos pasos para instalar dos de los componentes de la suite: Truffle y Ganache. Para esto, necesitarás ya tener instalado Node.js y npm. También te sugerimos usar una extensión para VS Code, se llama “Solidity” y su autor es Juan Blanco.

Truffle

  1. Ingresa a la página www.trufflesuite.com
  2. Abre una terminal con bash (CLI), y en el directorio principal ejecuta el comando: $ npm update -g
  3. Al término del proceso, escribe: $ npm install -g truffle
  4. Para comprobar que todo salió bien y revisar la versión instalada, ejecuta: $ truffle --version

Ganache

Para la versión de escritorio:

  1. Visita www.trufflesuite.com/ganache
  2. El sitio web reconoce tu SO, solo debes dar clic en el botón de descarga
  3. Al término, puedes encontrar el logo de Ganache ya disponible. Abre la aplicación
  4. Al elegir “Quickstart”, se abrirá la interfaz general. En la parte superior se encuentra el menú de las ventanas principales: Accounts, Blocks, Transactions, Contracts, Events y Logs

Para la versión de CLI:

  1. Ejecuta el comando: $ npm install -g ganache-cli
  2. Posteriormente, ejecuta el siguiente comando para verificar: $ ganache-cli --version
  3. Para iniciar el programa, ejecuta: $ ganache-cli

Ambas versiones de Ganache sirven para lo mismo, es solamente cuestión de elegir una o incluso usar las dos.

Empecemos a entrar en Blockchain

Es momento de emplear estas herramientas para un ejercicio práctico. Recuerda que para todo aquello con lo que no estes familiarizado, en Platzi contamos con los cursos complementarios que te ayudarán a seguir mejor cualquier procedimiento.

Vamos a desplegar un sencillo contrato, empezando con la herramienta Truffle:

  1. En tu terminal, crea un directorio nuevo, que es donde iniciarás Truffle: $ take hello-blochchian
  2. Una vez adentro de la carpeta “hello-blockchain”, ejecuta: $ truffle init
  3. Verás el mensaje “Init succesful, sweet!”, unas líneas más abajo, si todo salió bien.
  4. En la misma carpeta, ejecuta lo siguiente para abrir el directorio dentro de VS Code: $ code .

Ya estás cada vez más cerca de lograr algo asombroso. Aunque no lo creas, el número de personas animándose a probar nuevas tecnologías como esta es bastante inferior si lo comparamos al resto. Sigue así 😃

VS Code y Truffle

Entonces, procederemos a visualizar la carpeta y los archivos que has descargado:

  1. En VS Code, encontrarás las carpetas: “contracts”, “migrations”,“test” y “truffle-config.js”
  2. Dirígete a esta última, y busca la línea “development”. Descomenta esa y las siguientes tres líneas hasta la que dice “network_id”. Se encuentran cerca de la línea 40
  3. Después, dirígete a la carpeta “contracts” y crea un nuevo archivo llamado: “HelloBlockchain.sol” (sin ningún cambio para que no haya problemas)
  4. Copia en el editor de este archivo el código que se proporciona en el área de recursos, el que se indica para el contrato de Solidity
  5. Ahora, dirígete a la carpeta “migrations” y crea un archivo llamado “2_hello_blockchain.js”
  6. Copia el código del área de recursos, el que se indica como script de despliegue en ese archivo nuevo
  7. Abre dos ventanas de terminal. Una para Ganache y otra para Truffle
  8. En una de ellas, ejecuta: $ ganache-cli (al final, es importante que arroje un mensaje “Listening on 127.0.0.1:8545”)
  9. En la otra ventana, ejecuta: $ truffle console --network development

Ya falta poco

¡Muy bien!, si ya llegaste a este punto significa que estás por dar tus primeros pasos reales como desarrollador blockchain.

Recapitulemos un poco: hasta ahora, hemos instalado un entorno básico y ya cuentas con la magia de Truffle para poder hacer contratos de una forma más cómoda y rápida. Al trabajar con esta Suite, usaremos dos terminales para poder ver lo que ocurre con mayor facilidad.

En el último paso dado, la consola deTruffle se debió iniciar, y lo puedes verificar al notar que en la otra ventana (donde está corriendo Ganache) aparecieron algunas líneas que empiezan con “eth” (no te preocupes si no entiendes el código por ahora, eso es lo que aprenderás conforme vayas avanzando en este camino).

Todo trabajo da su recompensa

Ahora seguiremos con unos pasos finales, que son realmente interesantes:

  • Escribe el siguiente comando en la consola Truffle: > web3.eth.getBlock(0)En el output de esa ventana, se puede visualizar la información del bloque Génesis o ceroEn la terminal de Ganache también verás el registro de la operación “eth_getBlockByNumber”
  • Ejecuta en la consola de Truffle: > compile
  • Ejecuta en la misma consola: > migrate
  • Con esto, se muestran las transacciones necesarias para el despliegue y también para la creación de nuevos bloques
  • En la consola Truffle puedes ver los detalles de cada transacción, como el nombre del contrato, el hash, el gas usado, el valor en ETH enviado, etc. Al final, se resume el total de las transacciones y el costo total. Casi como un ticket de compra común.
  • Un bonus: Ejecuta en la consola de Truffle: > const instance = await HelloBlockchain.deployed()Y finalmente, llama a la función “sayHi” ejecutando: > instance.sayHi.call()Verás una línea adicional en la consola de Ganache que dice “eth_call” y un mensaje que dice en verde “¡Hello, Blockchain!” en la consola de Truffle

!Felicidades!, has desplegado tu primer contrato inteligente en una blockchain local. No ha sido precisamente fácil, pero con la práctica y la constancia, estos serán conceptos y procesos que dominarás con rapidez.

Ejemplos

El siguiente código de prueba sirve para crear tu primer contrato en Solidity:

// SPDX-License-Identifier: GPL-3.0

pragma solidity >=0.4.22 <0.9.0;

contract HelloBlockchain {
    
    function sayHi() public pure returns (string memory) {
        return "!Hello, blockchain!";
    }

}

El código para el script de despliegue es:

var helloBlockchain = artifacts.require("./HelloBlockchain.sol");

module.exports = function (deployer) {
	deployer.deploy(helloBlockchain)
}

Aporte creado por: Luis Enrique Herrera.

Aportes 80

Preguntas 66

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

En el minuto 18:00 cuando el profe inicia la consola de truffle, en un primer intento le da un error y en un segundo intento ya funciona correctamente.
Lo que paso fue un error en el tipo de guion que uso antes de la palabra network.
En el primer intento usa este guion que es más corto -.
En el segundo usa este otro un poco más largo –.
La instrucción correcta para inicializar la consola de truffle es:

truffle console —network development

Comandos de la clase (ubuntu)

cd $HOME
sudo npm update -g

#truffle:
sudo npm install -g truffle
truffle --version

#ganache:
sudo npm install -g ganache-cli
ganache-cli --version
ganache-cli

# cd a tu carpeta helloBlockchain
truffle init #crea la estructura del proyecto
ls -l 
#
truffle console —network development 
#Alt + Mayúsculas + guión corto (-): guión largo (—)
web3.eth.getBlock(0)
compile 
migrate #deploy
#
const instance = await HelloBlockchain.deployed()

instance.sayHi.call() 

Por si a alguno le aparece Error y no le muestra las cuentas disponibles al ejecutar ‘ganache-cli’ (08:35) se debe a un error que ocurre con la última version del nodejs. En mi caso hice downgrade de la 17.0.1 a la 16LTS y me aparecieron las cuentas disponibles así como sus llaves.

Consola de comandos Windows- instalación truffle:

-truffle:

  • npm update -g
  • npm install -g truffle
  • truffle --version

-ganache

  • npm install -g ganache-cli
  • ganache-cli --version
  • ganache-cli

crear proyecto de prueba:

  • crtl + c // para salir del proyecto actual
  • mkdir hello-blockchain // crear carpeta del proyecto
  • cd hello-blockchain // ingresar a la carpeta del proyecto
  • truffle init //crea la estructura del proyecto
  • ls // listar archivos de carpeta
  • code . // abrir visual studio code para abrir visual studio si lo tienes instalado

//descomentar las líneas correspondientes a development en el archivo truffle-config.js (líneas desde la 44 a la 48)

//crear archivo HelloBlockchain.sol en la carpeta de contracts
// instalar extensión de solidity

//código para el archivo HelloBlockchain.sol

// SPDX-License-Identifier: GPL-3.0

pragma solidity >=0.4.22 <0.9.0;

contract HelloBlockchain {
    
    function sayHi() public pure returns (string memory) {
        return "!Hello, blockchain!";
    }

}

//desplegar el código del contrato dirigiéndose a la carpeta migrations y creando el archivo 2_hello_blockchain.js

var helloBlockchain = artifacts.require("./HelloBlockchain.sol");

module.exports = function (deployer) {
	deployer.deploy(helloBlockchain)
}

// en la terminal de la carpeta hello-blockchain

  • ganache-cli

// en la terminal para ver los logs - terminal truffle

  • truffle console —network development
  • web3.eth.getBlock(0)
  • compile
  • migrate // despliegue
  • const instance = await HelloBlockchain.deployed()
  • instance.sayHi.call()

!Muchos exitos!

Al llamar a la función desplegada, el profesor ejecuta la siguiente instrucción:

instance.sayHi.call()

otra manera de hacerlo es simplemente llamando la función directamente:

instance.sayHi()

para los que no les funciona en windows es con doble guion antes de network

truffle console --network development

Quiero realizar el siguiente aporte tenia el siguiente error cuando digitaba el siguiente comando

<ganache-cli> 

me aparecía el siguiente error

<ganache-cli
Error: error:0308010C:digital envelope routines::unsupported> 

después de leer en varios foros encontré la solución y era la versión de mi npm la cual es la 17 lo que hice me dirigí al link donde se instala el npm pero no descargue la versión 17 fui a la opción de descargas y descargue la versión 16 después de desinstalar la versión 17 y instalar la versión 16 quedo solucionado.

En caso les salga el siguiente mensaje:

        throw new Error("Could not find artifacts for " + import_path + " from any sources");

Deben asegurarse de que el nombre del contrato es igual al nombre del archivo Solidity 😃

El código que utiliza el profesor para el contrato y el script de despliegue lo puedes encontrar en la descripción de la clase o en este comentario 😁😉.

El código para el contrato de Solidity es:

// SPDX-License-Identifier: GPL-3.0

pragma solidity >=0.4.22 <0.9.0;

contract HelloBlockchain {
    
    function sayHi() public pure returns (string memory) {
        return "!Hello, blockchain!";
    }

}

El código para el script de despliegue es:

var helloBlockchain = artifacts.require("./HelloBlockchain.sol");

module.exports = function (deployer) {
	deployer.deploy(helloBlockchain)
}

Gente si no se les conecta al puerto correcto es porque tienen que borrar las barras diagonales de las lineas 44 a 48 del archivo truffle-config.js para descomentarlo.
Yo estuve como 1 hora y era esa tontera.

El comando de instalación de ganache ahora a cambiado a

npm install ganache --global

Instalacion

  1. Tener previamnte instalado el npm
    Instalar npm en macOS o Windows
  2. Desde terminal vamos al directorio homre raiz con $cd ~
  3. Actualizar los paquetes de npm con $npm update -g
    $sudo npm update -g (cpn permisos)
  4. Instalamos Truffle $npm install -g truffle
  5. Verificamos $truffl --version

PROBLEMA AL INSTALAR TRUFFLE
Buenas Gente,
Les quiero compartir el problema que tuve al instalar truffle con el fin de que a esas pocas personas como yo les pueda ser de utilidad.
Luego de instalar el nodejs me aparecian muchas lineas que señalaban varios errores. Probé instalando python, visual, etc, nada fucionó.
Lo unico que me funcionó fue instalar la version 16.13.2 de nodejs.
En Conclusion: Parece que es un problema de versiones de compatibilidad.

Me salió este mensaje al intentar compilar

Error: Could not find a compiler version matching 0.8.9. Please ensure you are specifying a valid version, constraint or build in the truffle config. Run `truffle compile --list` to see available versions.```

Se supone queue la versión 0.8.9 sí debería estar soportada por el archivo .sol de la función sayhi 🤷🏽‍♂️
Ayuda después de llegar al comando en Windows: truffle init y tener el output ... al revisar el contenido de la carpeta con: ls -l me sale "no se reconoce como un comando interno o externo,programa o archivo por lotes ejecutable" Ayuda [email protected] .... no puedo ver el contenido de la carpeta

Para los que tienen error al correr

ganache-cli 

(Y DERIVADOS)

intenten instalar ganache con node versión 16, con esa versión funciona OK

Todos los paquetes de npm que llevan “cli” en el nombre, significa: Command Line Interface

si alguno le causa curiosidad el npm es un gestor de dependencias de javascript , y lo puedes descargar con tan solo descargar nodejs que es la herramienta que se utiliza para usar javascript en el backend del lado del servidor

Yo tuve problemas instalando truffle en windows 10, me salía error. Se solucionó instalando la última versión de python.

Veo muchísimas personas con el mismo error al querer instalar Truffle y ningún feedback con la solución.

Si usan la aplicación Windows de Ganache, se debe trabajar con el puerto 7545

Para los usurarios de mac, tuve problemas para instalar truffle.
instalar homebrew me ayudo. (Muchos seguro que son avanzados, pero para lo que no lo sean este es mi aporte).

Usuarios de MacOS que tengan problema para instalar truffle usen homebrew, 1 dia entero intentando resolver el problema, cualquier ayuda que necesiten se pueden comunicar conmigo y los ayudare como pueda.
instagram: nachogelvez
twitter: ciogel3

me sale este error alguien me ayuda
C:>npm update -g
npm ERR! code EINVALIDPACKAGENAME
npm ERR! Invalid package name “.express-Pphr6s1T”: name cannot start with a period

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\erick\AppData\Local\npm-cache_logs\2022-01-23T20_53_58_082Z-debug-0.log

Aporte menor pero útil. En VSCode los shortcuts para descomentar por defecto son.
Texto seleccionado
Ctrl+K // VS queda a la espera de otro comando
Ctrl+C // Comenta
Ctrl+U // Descomenta

En la parte inferior izquierda de VS podemos ver cuando hacemos Ctrl+K que Visual nos dice que espera otro comando.

Truffle Suite

Es un entorno de desarrollo diseñado para facilitar la creación de aplicaciones
basada en tecnología blockchain, te permite compilar código, desplegar contratos
inteligentes y desarrollar el frontend de tus aplicaciones.

Se conforma por:

  • Truffle. Te permite administrar tus contratos inteligentes y crear scrips
    para desplegarlos de manera sencilla y con una estructura clara, además
    te permite crear test para depurar tu código.

  • Ganache. Te brinda la opción de tener una blockchain personal para desplegar
    tus contratos y probar tus aplicaciones de forma local. Disponible como
    aplicación de escritorio y también como herramienta para línea de comandos.

  • Drizzle. Es una colección de librerías para frontend que te facilita la
    creación de aplicaciones.

Comandos necesarios para esta clase:

  • mkdir (para crear una carpeta desde la terminal).
  • cd (para moverte dentro y fuera de las carpetas desde la terminal).
  • ganache-cli (para iniciar la consola de ganache)
  • truffle console --network development (para iniciar la console de truffle).
  • web3.eth.getBlock(0) (para probar con el bloque 0 que está andando todo bien).
  • compile (para compilar desde la consola de truffle).
    migrate (para deployar desde la consola de truffle).
  • const instance = await HelloBlockchain.deployed() y
    instance.sayHi.call() (para invocar a la función sayHi desde la terminal de truffle).

Por fin, después de tantos intentos pude descargar e instalar el ganache
yeeeeeeeei

Si nos les gusta usar NPM y prefieren usar YARN, les dejo los comandos:

#instalaciónTruffle

yarn add truffle

#instalaciónGanache

yarn add ganache-cli

#Version

truffle version

En ubuntu, si te aparece este error:

Error: Could not find a compiler version matching 0.8.9. Please ensure you are specifying a valid version, constraint or build in the truffle config. Run `truffle compile --list` to see available versions.

Luego de hacer truffle init, debes revisar con ls -l que todos los archivos tengan permisos rwx, seguidamente debes ejecutar este comando adicional:

sudo truffle compile

Y despues:

truffle console --network development

Una vez hecho deberia funcionar correctamente.

Lo hemos logrado!!!

Muy buen curso y wow con el profe!!!

Para los que tienen consola zsh o estan en Linux y usan Bash y tienen un problema como:
zsh: command not found: truffle
tienen que revisar este blog de Stackoverflow para solucionarlo!

Después de muchas horas de descarga, por fin pude hacer todo. Gracias, internet de Venezuela, jajaja.

Recomiendo estar muy atentos al espaciado del editor, y del estado de nuestros archivos al momento de conectarnos a develop de esta forma evitaremos errores de typo.

Si te aparece el siguiente error: “ganache-cli” no se reconoce como un comando interno o externo,programa o archivo por lotes ejecutable.
Prueba instalando lo siguiente:

npm install ganache --global 

Después de instalarlo ya te debería reconocer ganache-cli como comando.
Puedes checar mas detalles si tienes el mismo error en el siguiente sitio web: https://trfl.io/g7

termine correctamente la prueba, sin embargo se debe actualizar lo siguiente, ya que tuve algunos inconvenientes.

  1. Instalacion de ganache, este es el nuevo comando
npm install ganache --global
  1. interactuar con la red development desde truffle, en el comando se debe usar 2 guiones y no uno.
    de lo contrario no pasas al modo truffle(developmet)>
truffle console --network development
  1. al usar el comando migrate, genera error de parametros invalidos por que no encuentra el archivo de contrato, se debe quitar ./ asi lo deje y funciona
var helloBlockchain = artifacts.require("HelloBlockchain");

module.exports = function(deployer) {
    deployer.deploy(helloBlockchain);
};

Tuve problemas al instalar en macOS Monterey pero los solucione siguiendo los siguientes pasos:

  • Instalar Xcode command tool
  • instalar Python
  • instalar sha3 package

Si tienen error al hacer migrate, lo resolví con:

sudo truffle console --network development

no corre con cmc en windows

que genial clase, un flujo base para iniciar a hacer algunas pruebas con esta herramienta.

Tenia problemas en esta classe y creo que podria ser tu problema tambien. si no te corre como debe el ganache, pued que sea debido a que el comando de instalacion cambio.
AQUI LO DEJO POR SI ALGUIEN LO NECESITA:

npm install [email protected] --global

ALGUNOS ERRORES
en el minuto 18:39 el primer error del profe fue porque no escribir el guion largo en “network” (se hace con alt+0151)
luego si no les conecta el development es porque tienen que ir a guardar los dos archivos que crearon en Visual estudio usando control + S o manualmente en save en cada uno.

Excelente clase, estuve leyendo sobre https://hardhat.org/ que permite hacer lo mismo que Truffle y Ganache, pero usando VSCODE. Implemente la practica sobre Ubunto siguiendo los pasos del profe, ahora ver como implemento HARDHAT y que se me hace mas cómodo.

Siento que todo es un poco abstracto en este punto pero supongo que se debe a que es solo el prework

Presento varios problemas en mi PC
primero no me corre la aplicación de ganache en el desktop
intente utilizar la terminal y tampoco me funciona me aparece este mensaje

tal vez alguno tenga problemas con el instalador de ganache en la pagina oficial,
les recomiendo descargar el .exe desde el repositorio en git

https://github.com/trufflesuite/ganache-ui/releases/tag/v2.5.4

Tuve problemas instalando ganache en Ubuntu, me sirvió hacer lo siguiente:

The simplest way to install Ganache on the Ubuntu is to download the Ganache from the below given Link

Link : https://www.trufflesuite.com/ganache

then change your directory to the file where you have downloaded

EG: cd/Downloads

then copy the file name of the downloaded file and then make the file executable using chmod terminal command by typing the below command

terminal :

chmod 777 Ganache-2.1.0.AppImage

and then this other command

./Ganache-2.1.0.AppImage

wait for few minutes until the popup comes and then click ok and the Gananche is installed.

Estoy muy emocionado, he aprendido hacer mi primer smart contract.
Se que no es nada para mucho pero es el primer paso hacerme un hueco en la industria de la teconologia.
Es mi apuesta de este 2022

El comando funciona con dos guiones:

truffle console --network development

Si alguien tiene problemas con UnhandledRejections después de escribir el comando migrate, deben agregar sudo a truffle console —network development: sudo truffle console —network development

alguno sabe porque me sale eso? No puedo acceder a los datos de la carpeta…

Interesting!

Si es que a alguien le dio un problema al momento de ejecutar

truffle --version

siendo el error parecido al siguiente:

truffle : No se puede cargar el archivo C:\Users\julio\AppData\Roaming\npm\truffle.ps1 porque la ejecución de scripts
está deshabilitada en este sistema. Para obtener más información, consulta el tema about_Execution_Policies en
https:/go.microsoft.com/fwlink/?LinkID=135170.
En línea: 1 Carácter: 1
truffle --version
CategoryInfo : SecurityError: ( ) [ ], PSSecurityException
FullyQualifiedErrorId : UnauthorizedAccess

A mi me funciono ejecutar como administrador el siguiente comando:

Set-ExecutionPolicy Unrestricted

Lo cual lo encontre en stackoverflow aqui

si alguno esta usando linux para abrir ganache en linux deben entrar a propiedades de “ganache-2.5.4-linux-x86_64 (1).AppImage” y en permisos en activan la ejecucion y asi les abre por que al entrar a la pag y descargar el archivo lo descarga como una appImage

Al momento de usar > truffle console —network development
me da este error, intento ingresando el network_id pero nada. Si alguien tiene una solución me vendría muy bien. Muchas gracias.

A los que les da error en el minuto 18 pueden usar

truffle console -n development

Entorno de desarrollo para desarrollar aplicaciones de blockchain.

  • Truffle
  • Ganache
  • Drizzle

Truffle

Tuve un pequeño problema haciendo el

npm update -g

npm install truffle -g

node.js - ENOTFOUND when running npm install - Stack Overflow

I’d remove the C:\Users\Guillermo.npmrc file

Ganache

npm install -g ganache-cli

ganache-cli --version

Drizzle

Este no hace falta instalarlo de forma global.

npm install  --save @drizzle/store 

OJO.

Si tienes el error del compilador revisa el código de tu contrato, me faltaba un ; y eso me daba error del compilador, por alguna razón no se cachan bien los errores (o las descripciones) pero eso resolvió el problema. Espero le sirva a alguien.

Se siente un superpoder al ver el “Hello blockchain!” en la consola. 💚

Es super divertido que tratando de hacer el migrations, truffle suite exploto y no pude hacerlo.

Pero fui a Hardhat con los pocos conocimientos y siguiendo la documentacion y si pude hacer un Hello World, sencillo…

Es casi lo mismo no? xd

Hola, por si a alguien le da problema al compilar, como a mi que solo se quedaba compilando y ya no hacia nada, me funciono cambiar la version de solc por la “0.8.10”, en el archivo de truffle-config.js

Al minuto 8:38 cuando corremos el ganache-cli me aparecía este error. Tenia descargada la version de Node 17.0.1 el cual lo generaba. Instale la version 16.13.0 descargando desde la pagina de Node de nuevo y se soluciono

Si no se conecta a ganache-cli por el puerto tienen que descomentar estas lineas del archivo truffle-config.js

networks: {
    // Useful for testing. The `development` name is special - truffle uses it by default
    // if it's defined here and no other network is specified at the command line.
    // You should run a client (like ganache-cli, geth or parity) in a separate terminal
    // tab if you use this network and you must also set the `host`, `port` and `network_id`
    // options below to some value.
    //
    development: {
    host: "127.0.0.1",     // Localhost (default: none)
    port: 8545,            // Standard Ethereum port (default: none)
    network_id: "*",       // Any network (default: none)
    }

que facil es que crear un proyecto con truffle

ganache me permite crear espacio de trabajo

Truffle me permite correr mis smart contract en equipo y necesita npm para la instalacion del tool

Una curiosidad es que al bloque 0 creado en la blockchain se le conoce como “Bloque génesis”

Mandar a llamar a la funcion: instance.sayHi.call()

Interactuar con la función sayHi y crear una const: const instance = await HelloBlockchain.deployed()

Para desplegarlo se utiliza el comando: migrate

Copilar que no tengamos errores y para hacerlo se agrega: compile

Para comprobar y para ver los datos del bloque genesis o bloque 0: web3.eth.getBlock(0)

CONECTARSE A LA RED DEVELOPMENT: truffle console --network development

para instalar la console cli de Ganache: npm install -g ganache-cli

Para comprobar la version del CLI de ganache: ganache-cli --version

Para inializar una blockchain Local debes usar la siguiente instrucción: ganache-cli

Crear un nuevo Proyecto de Truffle: truffle init

Recomiendo altamente estas instrucciones para la instalación del truffle. Personalmente demoré 3 días tratando de instalarlo sin éxito. Al final solo desinstalando todo y siguiendo paso a paso esta guía lo logré:
“acloudfan . com / windows10-install”