• Stars
    star
    107
  • Rank 323,587 (Top 7 %)
  • Language
    HTML
  • License
    Other
  • Created about 5 years ago
  • Updated about 1 year ago

Reviews

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

Repository Details

OpenDAX Trading user interface

Cryptocurrency Exchange Platform - Baseapp

Guide | API Docs | Consulting | Community

Component part of OpenDAX Trading Platform

OpenDAX BaseApp UI

User Interface for Trading and Wallets Management

React application to build a trading platform interface for use with OpenDAX: https://github.com/openware/opendax

You can see an example of a live application running at: https://www.openfinex.io/ If you need customization from the experts contact us: https://www.openware.com/

License

Please note, that BaseApp license only allows Non-Commercial use of this component. To purchase the Commercial license, please contact us at [email protected].

Install dependencies

$ yarn install

Run in developement mode

$ yarn start-mock

This command will also start a fake api backend for helping development. Once you happy with the result, save, build an image and run it with OpenDAX docker compose system.

Execute tests

In <rootDir>

$ yarn test

Check test coverage:

$ yarn test -- --coverage --watchAll

For more options for jest run yarn test --help.

Configuration documentation

Configuration file is located in public/config/env.js

Argument                 Description                                                
api     URLs of barong, peatio, applogic and ranger API endpoints. You can use mockserver (https://github.com/openware/mockserver) with default env.js values
minutesUntilAutoLogout               Autologout time in minutes
withCredentials               false or true if you want to include cookies as part of the request(https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials)
gaTrackerKey Google Analytics tracker key
rangerReconnectPeriod Reconnection time for the Ranger WS service in minutes
msAlertDisplayTime  Alert message display duration in milliseconds
kycSteps  List of label names for KYC process

Available Docker build args

While building a Docker image you can pass build-dependant arguments using --build-arg: docker build -t baseapp:latest --build-arg BUILD_DOMAIN="example.com" .

Argument Description
BUILD_EXPIRE Unix Timestamp of the build expiration date in seconds
BUILD_DOMAIN Domain which you'd like to use during the deployment

Build mobile app

Install dependencies using npm. Important for mobile app development.

npm install

Build frontend

yarn build

Generate a native project (ios, android)

ionic capacitor add <platform>

To build a native app you should have Xcode or Android studio on your local machine.

Build IOS app

1. Install Xcode

Xcode is the IDE for creating native iOS apps. It includes the iOS SDK and Xcode command-line tools. Xcode can be downloaded for free with an Apple account or it can be installed through the App Store. Once Xcode is installed, make sure the command-line tools are selected for use:

xcode-select --install

2. Set up a development team

All iOS apps must be code signed, even for development. Luckily, Xcode makes this easy with automatic code signing. The only prerequisite is an Apple ID.

Open Xcode and navigate to Xcode » Preferences » Accounts. Add an Apple ID if none are listed. Once logged in, a Personal Team will appear in the team list of the Apple ID.

3. Create an iOS Simulator

You can test your mobile application with a connected Iphone device to the Mac or using IOS Simulator. Open Xcode and navigate to Window » Devices and Simulators. Create an iPhone 11 simulator if one does not already exist.

4. Set configs

Open the capacitor.config.json file and modify the appId property.

Put the name of BE server:

  "server": {
    "hostname": "example.openware.work"
  }

5. Open the project in Xcode.

Launch Xcode with a prepared app:

ionic capacitor run ios

6. Check Xcode configuration In Project navigator, select the project root to open the project editor. Under the Identity section, verify that the Package ID that was set matches the Bundle Identifier.

In the same project editor, under the Signing section, ensure Automatically manage signing is enabled. Then, select a Development Team. Given a Development Team, Xcode will attempt to automatically prepare provisioning and signing.

7. Update native app with the changes

With each meaningful change, Ionic apps must be built into web assets before the change can appear on iOS simulators and devices. The web assets then must be copied into the native project:

ionic capacitor copy ios

8. Build IOS app

To receive an executable app file run 'build' command on Xcode. You need to have an Apple Developer account to be able to extract an executable file from Xcode.

Build Android app

1. Install Android studio

Android Studio is IDE, that provides the fastest tools for building apps on every type of Android device.

2. Open the capacitor.config.json file and modify the linuxAndroidStudioPath property.

Run next command

whereis android-studio

3. Build your android application

ionic capacitor add android

4. Launch android application with Android Studio

ionic capacitor run android

5. Android Studio configuration

Select connected android device or configure device simulator, which required

6. Update app with the changes

ionic capacitor copy android [options]

7. Set ANDROID_SDK_ROOT variale

Set android ask path to ANDROID_SDK_ROOT or write sdk.dir variable in android/local.properties file (it doesn't exist as a default)

8. Build android app

Build android app using Android Studio Build tab

or you can build apk file with command line

Debug build:

  ionic capacitor copy android && cd android && ./gradlew assembleDebug && cd ..

Release build:

For release build you have to create keystore path and keystore alias and run next command:

  cd android &&
  ./gradlew assembleRelease &&
  cd app/build/outputs/apk/release &&
  jarsigner -keystore YOUR_KEYSTORE_PATH -storepass YOUR_KEYSTORE_PASS app-release-unsigned.apk YOUR_KEYSTORE_ALIAS &&
  zipalign 4 app-release-unsigned.apk app-release.apk

Happy trading with OpenDAX BaseApp UI

If you have designed something beautiful with it, we would love to see it!

And if you have any comments, feedback and suggestions - we are happy to hear from you here at GitHub or at https://openware.com

Licensing

This code is open for helping private modification and performing customer demonstration, you can use it for raising capital. You cannot use it for a live platform without getting a commercial license from us.

Contact us if you'd like to purchase a commercial license.

Partners

If you would like to fork, and modify this UI to create a BaseApp theme, we would be happy to setup a partnership program and sell your work provided a revenue sharing.

Made with love from Paris and Kiev.

More Repositories

1

opendax

Open-Source Cloud-Native Digital Asset & Cryptocurrency Exchange Platform
HTML
614
star
2

barong

Barong auth server
Ruby
138
star
3

rango

High performance websocket server
Go
59
star
4

kite

Kite is a devops CLI for generating infrastructure as code
Ruby
46
star
5

peatio-core

Peatio core library, components and CLI
Ruby
19
star
6

coinhub

JavaScript
17
star
7

decimal

Go Decimal package
Go
16
star
8

postmaster

Notification Hub for openware stack
Go
14
star
9

kaigara

Devops swiss army knife
Go
12
star
10

open-finance-protocol

Open Finance Protocol
Ruby
10
star
11

hackademy

C
9
star
12

peatio-contrib

Peatio blockchains and currencies plugins
Ruby
9
star
13

pkg

Openware go packages
Go
8
star
14

irix

Go
8
star
15

images

Openware docker images
Shell
8
star
16

sonic

Sonic web framework
Go
6
star
17

nodelogic

Example Node.js application to extend the OpenDAX stack
JavaScript
5
star
18

node-auth-barong

JavaScript
3
star
19

cryptofont

React Cryptofont
HTML
3
star
20

barongz

Barongz is a Traefik plugin for authorizing traffic with barong
Go
3
star
21

open-finance

JavaScript
3
star
22

hellonode

NodeJS HelloNode example for Kubernetes
JavaScript
2
star
23

irix-ruby

Ruby
2
star
24

react-components

Openware React components
TypeScript
2
star
25

rails5session-go

Go decrypter of Rails 5 sessions.
Go
2
star
26

goci

Go
2
star
27

kafka-example

Golang client kafka benchmark
Go
2
star
28

react-barong

Barong React SignUp and SignIn component library
TypeScript
2
star
29

fluent-plugin-filter-logs

Ruby
1
star
30

ws-debug

Go
1
star
31

safebox

Go
1
star
32

versions

1
star
33

wio

WIO micro web server
Go
1
star
34

binance-cli

Go
1
star
35

yellow-org

JavaScript
1
star
36

kycaid-ruby

kycaid.com ruby library
Ruby
1
star
37

loading-page

CSS
1
star
38

create-react-dapp

Example of the decentralized application in React
JavaScript
1
star
39

pulumi-opendax

Demo deployment system with pulumi
1
star
40

barong-jwt

Tool to generate JWT
Go
1
star
41

generator-gin

a Yo generator for Gin web services
Go
1
star