This typescript repository contains all the common code used by the RIF Relay System.
This project works as a dependency and needs to be installed in order to be used.
- Node version 12.18
To start working with this project you need to first enable postinstall scripts (refer to section Enabling postinstall scripts).
Then just run npm install to install all dependencies.
You can use this dependency once you have it installed on your project. There are multiple ways to do this:
Install with:
npm i --save @rsksmart/rif-relay-commonModify your package.json file to add the following line:
"@rsksmart/rif-relay-common": "https://github.com/infuy/rif-relay-common",
Clone this repository inside your project's root folder, and modify your package.json file to add the following line:
"@rsksmart/rif-relay-common": "../rif-relay-common",
If you need to modify resources inside this repository:
- make sure that
postinstallscripts are enabled in thepackage.jsonfile. These are disabled by default due to distribution issues (which will be solved in the future), but will enable husky and other tools. - run
npm installto execute the post install hooks.
After that, make your modifications and then run npm run build to validate them.
After you are done with your changes you can publish them by creating a distributable version.
To enable postinstall scripts you need to modify the package.json file, specifically the scripts section and change this line:
"_postinstall": "scripts/postinstall",
to
"postinstall": "scripts/postinstall",
We use husky to check linters and code styles on commits, if you commit your changes and the commit fails on lint or prettier checks you can use these command to check and fix the errors before trying to commit again:
npm run lint: to check linter bugsnpm run lint:fix: to fix linter bugsnpm run prettier: to check codestyles errorsnpm run prettier:fix: to fix codestyles errors
IMPORTANT: when you publish a version postinstall scripts must be disabled. This is disabled by default, so don't push any changes to the postinstall scripts section in the package.json file.
- Run the
npm run distcommand to generate thedistfolder with the distributable version inside. - Bump the version on the
package.jsonfile (not strictly needed). - Commit and push any changes, including the version bump.
- Run
npm packto generate the tarball to be published as a release on GitHub. - Generate a new release on GitHub and upload the generated tarball.
- Run
npm loginto login to your account on npm registry. - Run
npm publishto generate the distributable version for NodeJS.
No extra steps are needed beyond generating the dist folder and merging it to master.