Skip to content

Latest commit

 

History

History
90 lines (56 loc) · 3.21 KB

README.md

File metadata and controls

90 lines (56 loc) · 3.21 KB

Build Status codecov License: MIT Last commit

Kauri Wallet

The beautifully simple open-source multi-currency wallet.

Stack details

  • Node: 8.9.4
  • OS: darwin x64
  • Angular: 6.0.3
  • Electron: 2.0.2
  • Lerna: 2.11.0

Monorepo / Lerna

This repo contains a 'monorepo' (multiple packages within the same repo). To manage, we are using Lerna.

Most development should just be done as normal in their /packages/<name> directories, treated as a root.

When something needs to be run from the base directory, like an npm command in the Travis build pipeline, you can use Lerna to run the command. For example npx lerna run test --scope kauri-wallet. The --scope should target the directory name.

The reason for this decision is to streamline the development of multiple libs at the same time. During development, changes to one child-repo will automatically update across projects.

Development server

Within /packages/kauri-wallet/ run ng serve for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

Code scaffolding

Within /packages/kauri-wallet/ run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Build

Within /packages/kauri-wallet/ run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Different languages

To build or serve in another language run:

ng serve --configuration=ISOCODE
ng build --configuration=ISOCODE

Swap ISOCODE out for the language you want to build.

Language ISO Code Notes
German de
Japanese ja

Running unit tests

Within /packages/kauri-wallet/ run ng test to execute the unit tests via Karma.

Running end-to-end tests

Within /packages/kauri-wallet/ run ng e2e to execute the end-to-end tests via Protractor.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.

Electron

We support the follow platforms via Electron:

  • Windows
  • OSX
  • Linux

Compiling

For now we have three commands for building Electron applications:

  • electron-osx
  • electron-win
  • electron-linux

Notes

  • Ensure you have done a prod build so Electron builds with the latest build of the Angular app: npm run prod
  • On Linux and OSX you will need WINE in order to compile for Windows
  • You can only create a signed .DMG on OSX

Translating

See TRANSLATION.md