Code Monkey home page Code Monkey logo

demo-app's Introduction

Onepanel Demo Application

You can find the full project (Jupyter notebooks, distributed jobs, NodeRed flows, etc..) that is forkable on Onepanel here: https://c.onepanel.io/onepanel-demo/projects/mobile-demo/overview

This app showcases a full pipeline, right from data captute using remote devices and uploading to Onepanel datasets using API's hosted at Onepanel workspaces, using these data to annotate using CVAT at Onepanel at training model , deploying these models using API's and how to consume them using remote / mobile devices.

This application is targeted to run on android and ios devices.

Currently, the application host the following features,

  1. On-device object detection using SSD models trained on Onepanel.
  2. On-device object classification using models trained on Onepanel.
  3. Record & Upload video dataset to train model running in upstream server hosted on Onepanel workspaces.
  4. Configurable API endpoints to classify, detect and upload dataset. These API endpoints are hosted in Onepanel workspaces.
  5. Supports multiple model types to run inference realtime on device. (currently not configurable)

App Structure

App Flow Diagram

Getting Started

This application is a React Native Project and the base of the application is built from the create-react-native-app cli tool.

Prerequisites

The application expects the following tools installed to build the application.

#1. NodeJS
You can download the binaries for NodeJs from here.

For more comprehesive guide on installation for your OS refer the link Windows / Mac

#2. Yarn
The project uses yarn for node package management over npm.
You can download the binaries for yarn from here

Select the Operating System and Version to find the comprehensive instruction on how to setup yarn for your system.

#2. CocoaPods (only required for building iOS app)
CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects, its required for IOS deployment.

Refer here on how to install CocoaPods

#4. React Native CLI
You need to have the react native environment setup for running or building this project.

For more information on how to setup you environment for react-native head over here
Make sure to see instruction for React Native CLI Quickstart and not for Expo CLI Quickstart

NOTE:
For compiling apps for android and ios react native requires you to have Android Studio (or Android SDK) and Xcode installed on your system

Installing

Now that we have our environment ready, we need to install our application dependencies.

Firstly, Change your directory to the root of the cloned repository, and run

yarn install

to install all the node dependencies for this application.

Wait until the dependencies are finished installing.

Thats it !

Deployment

Now, Its time for deployment.

Android

Deploying to a simulator

  1. Open Android Studio to create and run an android simulator
  2. Run this command react-native run-android

Deploying to an android physical device,

  1. Connect the physical android device via USB cable and make sure USB debugging is enabled (You can find more information here on how to enable USB debugging here)

  2. Run this command react-native run-android

Don't diconnect the USB cable while the app is getting installed, and wait for the build files to be download to your after installation.

Now, you should see the application running on your android device.

IOS ( currently builds failing )

Deploying to a simulator
Follow the guide here to run deploy it on a simulator.

Deploying to an IOS physical device,
Follow the guide here to run the ios application on your device.

Built With

  • React Native - A framework for building native apps using React
  • NativeBase Native Environment to build Native Apps
  • Yarn - Dependency Management NodeJs
  • Gradle - Dependency Management Android
  • CocoaPods Dependency Management for IOS

Download

Download the Android App

Contributing

Versioning

Authors

See also the list of contributors who participated in this project.

License

Acknowledgments

demo-app's People

Contributors

nadirlaskar avatar joinalahmed avatar dsdon10 avatar

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.