This document explains how this repo works, and how to work with it.
- Install the Deno CLI.
- Install Node.js v22+.
- And enable Corepack by
corepack enable
(makingpnpm
available).
- And enable Corepack by
- Install the Rust toolchain and
wasm-pack
.- Also make sure to install components:
rustup component add rust-src --target wasm32-unknown-unknown
.
- Also make sure to install components:
- Clone & fork this repository.
- Link Iroha repository (see below).
- Create a new branch for your changes.
- Make your changes to the repo and ensure
deno task ok
passes successfully. - Commit your changes with clear messages, preferably following Conventional Commits.
- Submit a pull request.
For this project to function, you must link Iroha repository. There are two ways to do so.
Clone Iroha repository:
deno task prep:iroha --git https://github.com/hyperledger-iroha/iroha.git --git-rev v2.0.0-rc.1.0
Symlink to a local path:
deno task prep:iroha --path /path/to/local/iroha/clone
@deno/bump-workspaces
could be of help:
deno run -A jsr:@deno/[email protected]/cli --dry-run
Guideline:
- Bump versions using the tool.
- Submit a PR with the changes of the versions and
Releases.md
. - Merge, tag the commit in format
release-2025-02-20
, and push it. - Create a release on GitHub at this tag, using the new piece of
Releases.md
as a description and date (e.g. "2025.02.20") as a title.
You can add this to .git/hooks/pre-commit
:
#!/bin/sh
deno task ok
You can cd
into a package directory (e.g. packages/core
) and run these commands in parallel (requires watchexec
and jq
tools):
watchexec -e ts deno doc --html $(cat deno.json* | deno run npm:json5 | jq -r '.exports | .[]')
deno run -A npm:vite serve docs