• This repository has been archived on 11/Jun/2024
  • Stars
    star
    103
  • Rank 333,046 (Top 7 %)
  • Language
    JavaScript
  • License
    GNU General Publi...
  • Created over 6 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

📱 Lisk graphical user interface for mobile

Logo

Lisk Mobile

Build Status Coverage Status License: GPL v3 GitHub package.json version DeepScan grade

Lisk Mobile is a cross-platform application written in React Native and primarily built for iOS and Android. It provides all the functionalities required that allow the users to send and receive LSK tokens, coupled with the ability to access the activity history of any Lisk blockchain account.

Get it from iTunes Get it on Google Play

Pre-Installation

Please install the required prerequisites to run Lisk Mobile from source.

  • Brew

    $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • Git

    $ brew install git
  • Node.js (recommended 14.9.0)

    $ brew install node
  • NVM

    $ brew install nvm

    Remember to follow Brew additional steps for enabling NVM fully. After running brew install nvm, Brew will detail this steps.

  • NPM (recommended 6.14.16)

    $ nvm install-latest-npm

    npm is shipped with Node.js. But to have a specific version installed see here.

  • Watchman

    $ brew install watchman

iOS

  • Install the latest version of Xcode to use the simulator.

Android

  • Install Android Studio, and ensure the options listed below are also checked and installed:
    • Android SDK
    • Android SDK Platform
    • Performance (Intel ® HAXM)
    • Android Virtual Device
  • Install the Android SDK. Consider these configurations:
    • compileSdkVersion: 30
    • buildToolsVersion: 30.0.2

Installation

On your terminal, go to the directory you want to install Lisk Mobile and run:

$ git clone https://github.com/LiskHQ/lisk-mobile.git
$ cd lisk-mobile
$ nvm install
$ npm ci
$ npm run link

Run

$ npm start

Run on iOS - MacOS with Intel chip

To run the app on ios, you have to install pods.

For this, just run:

$ npx pod-install
$ npm run ios

Run on iOS - MacOS with Apple chip

If your machine has the Apple Silicon chip (not Intel), you will have to run some additional steps, which we hope are going to be solved in a short term while the new chip is more widely adopted.

The process is:

  1. Locate in Terminal app in Finder.
  2. Right-click and click on Get Info
  3. Check the Open using Rosetta checkbox.
  4. Quit Terminal app and run it again
  5. Go to your app folder and run sudo gem install ffi
  6. Run npx pod-install
  7. Run npm run ios

More details can be found here.

Build on iOS

$ npm run build:ios

Build on Android

$ npm run build:android

Run on Android

To run android:

$ npm run android

Unit Tests

Single run

$ npm run test

Development

You can run the project in Xcode and use iOS simulators, or alternatively use Android simulators. There are several options to set up your Android development environment. Please read the React Native docs for more information.

There is a standalone app for debugging React Native which has a React and Redux debugger enabled by default. Please read the React Native Debugger for more information.

Possible Errors for Mac Users

Errors on lottie-ios/Lottie.modulemap

If you face this error when trying to run the app:

/Users/***/Library/Developer/Xcode/DerivedData/Lisk-***/Build/Products/Debug-iphonesimulator/lottie-ios/Lottie.modulemap

Follow these steps below which should resolve any errors:

  1. Add the following to the end of your Podfile (especially M1 users).
post_install do |installer|
  react_native_post_install(installer)
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
          config.build_settings["ONLY_ACTIVE_ARCH"] = "NO"
        end
    end
end
  1. Remove Pods folder and Podfile.lock rm -rf ios/Pods && rm -rf ios/Podfile.lock
  2. Run npx pod-install on your terminal.

Duplicate symbols for architecture x86_64

If you face this error when trying to run the app:

Products/Debug-iphonesimulator/react-native-udp/libreact-native-udp.a(GCDAsyncUdpSocket.o)
ld: 144 duplicate symbols for architecture x86_64

Follow this steps to solve it:

  1. Run npx patch-package
  2. Remove Pods folder and Podfile.lock rm -rf ios/Pods && rm -rf ios/Podfile.lock
  3. npx pod-install

Other possible errors

SDK location not found.

Create android/local.properties and add this line in the file for Mac Users:

sdk.dir=/Users/username/Library/Android/sdk

OR

Set the environmental PATH to your sdk installation location.

Using Commercial Fonts

Since some of the fonts used in the production version are commercial, this repository only contains open source fonts and uses Open Sans as a replacement for the commercial ones.

If you have licensed copies of Basier Circle and Gilroy, you can add them to fonts folder with the naming convention stated in styleGuide/fonts.js file and make sure all the fonts are linked.

$ react-native link ./src/assets/fonts

iMessage Extension

Please check out iMessage extension docs for more information.

Contributing

Please see CONTRIBUTING.md for more information.

Contributors

See contributors section.

License

Copyright © 2016-2023 Lisk Foundation

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

More Repositories

1

lisk-sdk

🔩 Lisk software development kit
TypeScript
2,721
star
2

lisk-elements

⚙️ Library for sending Lisk transactions from the client or server
TypeScript
250
star
3

lisk-nano

🖥 Minimal Lisk graphical user interface for desktop
JavaScript
159
star
4

lisk-commander

🐱 A command line interface for Lisk
TypeScript
142
star
5

lisk-explorer

📦 Lisk blockchain explorer
JavaScript
121
star
6

lips

📘 Lisk improvement proposals
66
star
7

lisk-build

🏗️ Lisk binary package building tool
Shell
55
star
8

lisk-dapps-sdk

:octocat: Prototype SDK for the Lisk blockchain application platform
JavaScript
43
star
9

lisk-template

📄 Template repository for Lisk projects
JavaScript
39
star
10

lisk-sdk-examples

🔩 Example proof of concept blockchain applications built using the Lisk software development kit
JavaScript
36
star
11

lisk-service

⚙️ API based service provider to Lisk user interfaces
JavaScript
32
star
12

lisk-legacy-docs

📘 Lisk documentation repository
CSS
30
star
13

lisk-ui

🖥️ Lisk user-interface submodule
HTML
24
star
14

lisk-docker

📦 Lisk docker-compose examples
22
star
15

wamp-socket-cluster

🔌 Wrapper for both WAMPClient and WAMPServer
JavaScript
14
star
16

lisk-faucet

🚰 Lisk faucet
JavaScript
13
star
17

lisk-website

🌐 Old Lisk website
CSS
12
star
18

lisk-node

:octocat: Specialized version of Node.js for running Lisk dapps
JavaScript
10
star
19

lisk-migrator

🚀 Lisk mainnet migration tool
TypeScript
6
star
20

lisk-scripts

📜 Scripts used to install and manage Lisk
Shell
6
star
21

lisk-cli

:octocat: Command line interface for bootstrapping and managing Lisk blockchain applications
JavaScript
5
star
22

lisk-tokens-dapp

:octocat: Lisk tokens dapp
JavaScript
4
star
23

lisk-newrelic

📟 NewRelic instrumentation for Lisk Core
JavaScript
4
star
24

eslint-config-lisk-base

:octocat: The base ESLint config for use in Lisk projects
JavaScript
3
star
25

lisk-sandbox

:octocat: Specialized Node.js module for running sandboxed Lisk dapps
JavaScript
2
star
26

lisk-db

📘 A database access implementation according to the Lisk protocol
Rust
2
star
27

lisk-messaging-dapp

:octocat: Lisk messaging dapp
JavaScript
2
star
28

lisk-modular

📟 A blueprint for the new Lisk Core application architecture
JavaScript
2
star
29

lisk-dex-core

💎 Lisk DEX blockchain application
TypeScript
1
star
30

lisk-dex-specs

📘 Lisk DEX blockchain specifications
1
star
31

mocha-bdd

:octocat: Helper functions for practising BDD with Mocha
JavaScript
1
star
32

lisk-jenkins

:octocat: Shared libraries for Jenkins files
Groovy
1
star
33

lisk-reddit-dapp

:octocat: Lisk reddit dapp
JavaScript
1
star
34

amstockcharts

:octocat: Javascript Stock Chart v3
JavaScript
1
star
35

app-registry

🗂️ Lisk blockchain application registry
JavaScript
1
star
36

lisk-core

💎 Lisk blockchain client
TypeScript
1
star