Decentraland CLI
CLI tool for parcel management.
Requirements
NodeJS Installation
MacOS/Linux:
You need to have NodeJS (version 8.. and above) installed on your system to use the CLI. You can use official NodeJS installer, but on MacOS/Linux we recommend to use NVM for managing your NodeJS installation. Please follow the installation instructions.
Windows:
We recommend using official NodeJS installer - download the latest LTS version here (we only support version 8.. and above).
CLI installation
If you have NodeJS installed, run this command from terminal:
$ npm install -g decentraland
This should install CLI tool and make it available globally. Please proceed to usage documentation.
Documentation
Usage
- Initialize new Decentraland project from working directory:
$ dcl init
- Start local development server and serve your a-minus scene:
$ dcl start
First, you need to have IPFS installed locally. Download it here.
Note: You need to have IPFS daemon running for this to work!
$ dcl upload
- Link Ethereum to the current scene and pin scene to Decentraland IPFS node:
$ dcl link
- Upload scene to IPFS, update IPNS and link Ethereum to the current scene in one go:
$ dcl push
Updating
If you encounter a message Ethereum linker app is outdated! Please run dcl upgrade!
, you need to update the Ethereum linker inside your Decentraland project:
cd your-dcl-project
dcl upgrade
To update the CLI tool:
$ npm update -g decentraland
Building
- Clone the repo:
git clone https://github.com/decentraland/cli.git
- Go into the CLI directory:
cd cli
- Run
npm install
- Link the CLI with:
npm link
dcl
command should now be available.
For CLI tool development, run npm start
in your terminal. The CLI will use the mainnet address for the LANDProxy contract by default. If you want to change it, you can add a .env
file on the root folder, with a LAND_REGISTRY_CONTRACT_ADDRESS
var. It'll use dotenv to fetch the value. You can check the current contract addresses here.
For the Decentraland IPFS node, we are getting the url from here. If you want to set a different url set the IPFS_GATEWAY
var in the .env
file.
You can run CLI commands in development mode like this: npm start -- init
You can do incremental compilations by running npm run watch
, but you will need to run npm run build
at least once before to build the linker-app
, and if you make changes to the linker you will need to re-run npm run build
.