Rholang Package Manager
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
exampleProject
.gitignore
README.md
StaysOnChain.rho
exportTemplate.rho
importTemplate.rho
package-lock.json
package.json
regex.js
rhopm.js

README.md

Rholang Package Manager

This project is in its very early stages of development. It strives to facilitate a modular package ecosystem for rholang programmers.

Through import and export syntax embedded in rholang comments, programmers signal the package manager what dependencies are required, and where to find those dependencies. The package manager dynamically calculates the dependency graph and deploys all dependencies in as few blocks as possible.

Example

It is probably easiest to see how rhopm works by checking out the example project or watching me demonstrate it.

Syntax

To export a name (likely a contract) use one of these syntaxes

  • // export+{name} for a write-only bundle of name
  • // export-{fourth} for a read-only bundle of name
  • // export0{fourth} for a no-read-write bundle of name
  • // export{fourth} for a read-write bundle of name

To import a name use this syntax

  • // import{./file.rho}[name] to import name from file.rho

Usage

  • Start an RNode running casper. I recommend freshr. npm install -g freshr
  • Clone this repo git clone https://github.com/JoshOrndorff/rhopm
  • Write a project using the syntax above
  • Deploy your project with node <path to rhopm.js> --package <path to project>

Missing Features

Author and License

Written by Joshy Orndorff

Apache 2.0 License