How to install packages

Requirements

1. Install CLI tool

npm i -g ic-mops
This command will install cli tool mops

2. Configure dfx.json

Add mops as a packtool to your dfx.json

...
"defaults": {
  "build": {
    "packtool": "mops sources"
  }
},
...

3. Initialize

Run this command in the root directory of your project (where is dfx.json placed)
If there are Vessel config files, mops will migrate packages from vessel.dhall to mops.toml

mops init

4. Install Motoko Packages

Use mops add <package_name> to install a specific package and save it to mops.toml

mops add base
You can also add packages from GitHub like this

mops add https://github.com/dfinity/motoko-base
For GitHub-packages you can specify branch, tag, or commit hash by adding #<branch/tag/hash>

mops add https://github.com/dfinity/motoko-base#moc-0.9.1
You can also add local packages like this (put source files inside src directory)

mops add ./shared

Use mops install to install all packages specified in mops.toml

mops install

5. Import Package

Now you can import installed packages in your Motoko code

import PackageName "mo:<package_name>";
for example

import Itertools "mo:itertools/Iter";