Creating a Project

To use most Truffle commands, you need to run them against an existing Truffle project. So the first step is to create a Truffle project.

You can create a bare project template, but for those just getting started, you can use Truffle Boxes, which are example applications and project templates. We'll use the MetaCoin box, which creates a token that can be transferred between accounts:

  1. Create a new directory for your Truffle project:

    mkdir MetaCoin
    cd MetaCoin
  2. Download ("unbox") the MetaCoin box:

    truffle unbox metacoin

    Note: You can use the truffle unbox <box-name> command to download any of the other Truffle Boxes.

    Note: To create a bare Truffle project with no smart contracts included, use truffle init.

    Note: You can use an optional --force to initialize the project in the current directory regardless of its state (e.g. even if it contains other files or directories). This applies to both the `init` and `unbox` commands. Be careful, this will potentially overwrite files that exist in the directory.

Once this operation is completed, you'll now have a project structure with the following items: