ic-mops
v1.12.0
Published
Mops is a package manager for the Motoko programming language.
Readme
Mops
Mops is a package manager for the Motoko programming language.
Setup
1. Check system requirements
2. Install CLI tool
curl -fsSL cli.mops.one/install.sh | shor
npm i -g ic-mopsInstall Packages
1. Configure dfx.json
Add mops as a packtool to your dfx.json
{
"defaults": {
"build": {
"packtool": "mops sources"
}
}
}2. Initialize
Run this command in the root directory of your project (where is dfx.json placed)
mops init3. Install Motoko Packages
Use mops add <package_name> to install a specific package and save it to mops.toml
mops add baseYou can also add packages from GitHub like this
mops add https://github.com/dfinity/motoko-baseFor 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.1You can also add local packages like this (put source files inside src directory)
mops add ./sharedUse mops install to install all packages specified in mops.toml
mops install4. Import Package
Now you can import installed packages in your Motoko code
import PackageName "mo:<package_name>";for example
import Itertools "mo:itertools/Iter";Publish a Package
1. Import Identity
Create new identity to publish packages
dfx identity new mopsImport identity into mops
mops user import -- "$(dfx identity export mops)"2. Initialize
Run this command in your package root and select type "Package"
mops initEdit description and repository fields in mops.toml file.
Write your package code in *.mo source files in the src/ directory.
Create README.md file with information on how to use your package.
3. Publish
Publish package to the mops registry!
mops publishBuilt for the Supernova Hackathon
