Code Monkey home page Code Monkey logo

bxbot-ui's Introduction

BX-bot UI

Node.js CI

Note: This project is very much work in progress and not safe for production.

What is BX-bot UI?

BX-bot UI is an Angular app (and learning journey!) for administering BX-bot.

Although being developed as a 'real-world' app, the code tries to showcase different features of Angular and TypeScript. It's not meant to be an Angular 101 tutorial - the Angular Documentation does a far better job!

Installation Guide

The Docker way

If you want to just play around with the UI, Docker is the way to go.

  1. Install Docker on the machine you want to run the app.
  2. Fetch the BX-bot image from Docker Hub: docker pull gazbert/bxbot-ui:0.0.1
  3. Run the Docker container: docker run --name bxbot-ui-0.0.1 -it --rm -p 4200:4200 gazbert/bxbot-ui:0.0.1
  4. Open a browser and go to: http://localhost:4200
  5. You can stop the container using CTRL-c

The current Docker image is not a release, but rather a rolling development version of the UI...

The manual way

You'll need node.js installed to build and run the app - it's being developed on 12.22.x.

  1. Install the Angular CLI globally: sudo npm install -g @angular/cli
  2. Clone this repo locally.
  3. Change directory to the root of the project.
  4. Run npm install to install the dependencies - you'll only need to do this once, unless the versions are updated in the package.json
  5. To start the app: npm start
  6. Open a browser and go to: http://localhost:4200
  7. To stop the app, CTRL-c from the command line.

Build Guide

Follow the instructions in the The manual way section if you've not already done so.

The project uses Angular CLI commands to build, test, and run the app.

Building the App

  1. Run npm run build to compile the application into the dist output directory.

Jasmine Unit Tests

The app has behaviour-driven unit tests written using the excellent Jasmine framework.

  1. To run the tests once: npm run test:once
  2. To continuously run the tests in the background using Karma: npm test - Karma will monitor code changes and trigger re-running of the tests.
  3. To stop Karma, CTRL-c from the command line.

Protractor End-to-End Tests

The app has e2e tests written using Protractor.

  1. To run the tests once: npm run e2e. It's usually best not to have the app running at the same time.

TSLint

The build has a TSLint script that checks for code readability, maintainability, and functionality errors. The tslint.json file contains the linting rules.

  1. To run the linter: npm run lint

Configuration

The app uses Angular's In Memory Web API as a replacement backend for development and local testing. The API config configuration options are set in app.module.ts.

The application config is in JSON format and lives in the in-memory-data.service.ts file.

Contributing

Issues and new features are managed using the project Issue Tracker - submit bugs here.

You are welcome to take on new features or fix bugs! See here for how to get involved.

Coming Soon

  • Integration with BX-bot.
  • A new 'Runtime' screen tab for displaying the bot's status, stopping/restarting, and viewing/downloading the latest log file.

Credits

This app started life as the Angular 4 QuickStart app and was later migrated to use the Angular CLI. It took (a lot of) inspiration from the following:

bxbot-ui's People

Contributors

gazbert avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bxbot-ui's Issues

General cleanup of code - sweep #1

First sweep at fixing TODOs and cleaning stuff up - there will be more!

  • Trading Strategies
  • Markets
  • Email Alerts
  • Exchange Details
  • Dashboard
  • Shared
  • Exchange Adapter
  • Model - Exchange Adapter
  • Model - Exchanges
  • Model - Email Alerts
  • Model - Markets
  • Model - Trading Strategies
  • Testing utils
  • e2e tests

Condition

Hey gazbert! I have been using your bxbot a bit now (Still planning on giving you a couple exchange adapters :) ). Just want to know the status of this project (or if you needed any assistance)

Best,
Joshua

General cleanup of code - sweep #2

Second sweep at sorting out FIXMEs/TODOs in code:

  • Trading Strategies
  • Markets
  • Email Alerts
  • Exchange Details
  • Dashboard
  • Shared
  • Exchange Adapter
  • Model - Exchange Adapter
  • Model - Exchanges
  • Model - Email Alerts
  • Model - Markets
  • Model - Trading Strategies
  • Testing utils
  • e2e tests

IL8N Support

Add French and Welsh support to start with... then look forward to PRs for other languages :-)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.