Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

asgardex

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

asgardex

WALLET AND EXCHANGE CLIENT FOR THORCHAIN

  • 0.0.5
  • unpublished
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source


Test Electron build

ASGARDEX uses following libraries, frameworks and more:

(in alphabetical order)

  • Ant Design
  • Create React App
  • ESLint
  • Electron
  • fp-ts
  • Jest
  • Observable Hooks
  • Prettier
  • ReactJS
  • Styled Components
  • Testcafe
  • THORChain Byzantine Module
  • RxJS
  • Typescript
  • and others ...

Install

It's recommended to use a Node version as same as Electron is running with (currently: Electron v9.1.2 / Node 12.14.1)

git clone https://github.com/thorchain/asgardex-electron.git asgardex
cd asgardex
yarn

Environment variables

While environment variables are not required (defaults are set), you can configure them. Create an .env file by copying all content of .env.sample and change these for your needs.

Development

yarn prebuild
yarn dev

In case Node@12 might run into memory issues locally set --max-old-space-size as follow:

export NODE_OPTIONS="--max-old-space-size=4096"

How to auto-unlock a locked wallet while hot-reloading the app (for development only, disabled in production build)

Use REACT_APP_WALLET_PASSWORD to run the app by replacing password with your own password

REACT_APP_WALLET_PASSWORD=password yarn dev

Or add to REACT_APP_WALLET_PASSWORD=password to .env file and run yarn dev

How to enable (more) chains for development

Add chains you want to have for development to REACT_APP_CHAINS_ENABLED, for example

REACT_APP_CHAINS_ENABLED=THOR,BNB,BTC,ETH,LTC

Note: String of chains have to be as same as definitions in xchain-util

Tests

unit

yarn test

e2e

Note: e2e tests are disabled temporary (see #750)

yarn test:e2e

lint

yarn lint

Note: eslint is provided by react-scripts located in ./node_modules/react-scripts/node_modules/ and don't need to be extra installed. If your editor has some issues to find eslint, you might point it to this location (see VSCode settings file as an example).

bundle analyze

visualize the bundle map using source-map-explorer

yarn analyze

Folder structure

src

src
├── index.ts # entry point for CRA
├── main # sources of Electron's main process
├── renderer # sources of Electron's renderer process (aka webapp)
└── shared # shared sources for Electron's main and renderer processes

src/main (Electron's "main" app)

src/main
├── electron.ts # entry point
├── i18n # internationalization (needed for menus)
└── menu # "native" menus

src/renderer (Electron's "renderer" app aka ReactJS webapp)

src/renderer
├── assets # static files (svg, fonts etc.)
├── components # basic components
├── contexts # React contexts to provide "global" accessible states (RxJS based)
├── helpers # helper functions
├── hooks # custom hooks
├── i18n # internationalization (translations etc.)
├── index.tsx # entry point
├── routes # routing
├── services # RxJS based IO handler and states (consumed by contexts)
├── types # TypeScript types (e.g. generated types for Midgard API)
└── views # "Container" components

Security

ASGARDEX follows security recommendation made by Electron team, such as:

Packaging

Important note for macOS users: Please follow guide of "How to package ASGARDEX on macOS" before running following command.

yarn package:electron

Keystore

By creating a new wallet or importing an existing one, ASGARDEX is saving wallet's phrase encrypted in keystore.json on your machine in Electron's appData folder at following location:

Windows

# ASGARDEX installed from *.exe
%APPDATA%/ASGARDEX/storage/keystore.json
# ASGARDEX built and run locally
%APPDATA%/Electron/storage/keystore.json

macOS

# ASGARDEX installed from *.dmg
~/Library/Application Support/ASGARDEX/storage/keystore.json
# ASGARDEX built and run locally
~/Library/Application Support/Electron/storage/keystore.json

Linux

# ASGARDEX installed from *.deb
~/.config/ASGARDEX/storage/keystore.json
# ASGARDEX built and run locally
~/.config/Electron/storage/keystore.json

keystore.json can be removed in ASGARDEX by clicking "Remove wallet" in Wallet -> Settings or by removing it manually.

Releasing

See RELEASE.md

Docs

See the docs and guides here

Contributing

Please see the Contributing Guidelines here (coming soon).

Bug Reports

Please see the Bug Report Process here (coming soon).

License

MIT THORChain

Keywords

FAQs

Package last updated on 25 Feb 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc