Wallet for ETC Mantis.
- Node.js - v12 is currently used for Mantis Wallet, tested with v12.16.2-v12.19.0.
- (optional) nvm - you can use nvm to automatically pick-up the Node version you need
- yarn - tested with 1.21.1-1.22.5
- sbt - for building Mantis client
Running the yarn command in the project directory will download the dependencies. After this action, all the script below can be run.
Builds Mantis from submodule located at mantis directory and copies it into ../mantis-dist directory
This runs yarn build-main followed by yarn electron-dev and yarn start in parallel.
yarn dev:hot runs with yarn build-main --watch for automatic reload and yarn electron-dev:hot for automatic restart on change.
Starts storybook in debug mode.
Builds the main process code to the build/main directory. It's required to be run before running electron-dev or electron
Runs the renderer in development mode, it can be accessed at http://localhost:3000.
yarn electron-dev
yarn electron-dev will open the Electron application in debug mode.
yarn electron-dev:hot will open the Electron application in debug mode with hot reload of the main process. Keep in mind, when using this mode closing the Electron window will not exit the watch mode. If you let it running in the terminal, when a change happens in the main process' code, it will fireup a new window.
yarn build-main before this action. For hot mode run it as yarn build-main --watch, so it rebuilds automatically on change. Use yarn start-main to run build-main, followed by electron-dev.
yarn start.
Launches the test runner in interactive watch mode. See the section about running tests for more information.
ℹ️ This command excludes the screenshot tests.
Launches the test runner for the storybook screenshot tests in interactive watch mode.
ℹ️ You can use the interactive mode to update the snapshots (u command) or you can run yarn storyshots:update.
yarn storybook must be running while you run this command.
Prettifies the code.
Runs all linting: prettier checks, eslint and stylelint.
Builds the app for production to the build folder.
yarn build-renderer and yarn build-main followed by yarn electron will open the production version of the Electron application.
Creates a static storybook build in the storybook-static directory.
Packages the application for Linux and Mac in dist folder.
Packages the application for Windows in dist folder.
Remember to clone the repo with autocrlf disabled in git.
If you're making a new release, don't forget to:
- Bump
versioninpackage.json - Update
compatibleDataDirVersionsinpackage.jsonto the range of acceptable backend versions (regarding data directory / database compatibility) - create release branch with name
release/<version>(1. to have a separate branch, 2. to trigger build) - prepare a new release on Github:
- tag name:
v<version> - upload builds obtained from buildkite
- add sha256 hashes for published assets
- tag name:
- merge changes made on release branch into
masteranddevelopbranches