/nice-node

Run a node — just press start

Primary LanguageTypeScriptMIT LicenseMIT

Run a node at home, the easy way.

Set up an Ethereum node in no-time on every modern computer without any technical knowledge (coming soon).

For the latest information, visit https://nicenode.xyz

Downloads Github All Releases gitpoap badge Twitter Discord Crowdin

Application Window Dark

Development

Test

Install

Install git, nodejs 18+, and npm.

Clone the repo and install dependencies:

git clone https://github.com/NiceNode/nice-node.git
cd nice-node
npm install

Starting Development

Start the app in the dev environment:

npm start

A window should pop open with NiceNode and a chrome devtools inspector running.

You may need to set environment variables locally. To do so, create a .env file at the top level with:

SENTRY_DSN=fake-token
MP_PROJECT_TOKEN=fake-token
MP_PROJECT_ENV=dev
NICENODE_ENV=development

SENTRY_DSN and MP_PROJECT_TOKEN should be fake unless testing. Contact Johns, @jgresham, if you want to test new error or event reporting code.

Packaging for Production

To package apps for the local platform:

npm run package

For a specific platform & architecture:

npm run package -- --linux --arm64
npm run package -- --mac dmg --arm64

Tests

Unit tests with npm run test

End-to-end (e2e) tests

For e2e tests, we use webdriver and an electron plugin to automate testing. It requires a packaged build to complete the tests.

To run them locally, package the source first (and after making any changes to anything other than tests), then run the e2e tests with wdio

npm run package <your os and arch>
npm run wdio

Running Storybook

To run Storybook locally:

npm run storybook