IPFS is a distributed system for storing and accessing files, websites, applications, and data. IPFS is a peer-to-peer (p2p) storage network. Content is accessible through peers located anywhere in the world, that might relay information, store it, or do both. IPFS knows how to find what you ask for using its content address rather than its location.
IPFS Documentation: >IPFS<
Ganache CLI Readme for command-line documentation: >Ganache CLI<
npm install -g ganache-cli or yarn global add ganache-cli
Truffle is a development environment, testing framework and asset pipeline for blockchains using the Ethereum Virtual Machine (EVM). It is based on Ethereum Blockchain and is designed to facilitate the smooth and seamless development of DApps. With Truffle, you can compile and deploy Smart Contracts, inject them into web apps, and also develop front-end for DApps. Today, Truffle is one of the most widely used IDEs for Ethereum Blockchain.
Truffle documentation: Truffle
npm install -g truffle
NodeJS v8.9.4 or later