Giter Site home page Giter Site logo

joyride's Introduction

JoyRIDE

JavaScript Robot IDE

Installation

Install Node.js. Install the dependencies for this app by running:

npm install

Development

  • Configure the environment

      export ROSBRIDGE_URI:='ws://192.168.99.100:9090'
      export PORT=8080
    
  • Start the development web server

      npm start
    
  • Navigate a web browser to http://localhost:8080/

Deployment

Run npm run build, then copy the contents of the public/ directory to your web server.

Make sure to start rosbridge:

roslaunch rosbridge_server rosbridge_websocket.launch

Usage

To command a JoyRIDE layer, send a ROS message of type std_msgs/String to /joyride/foreground or /joyride/background with the command as JSON. For example, to show your logo:

rostopic pub -1 /joyride/foreground std_msgs/String "'{"type": "img", "value": "http://example.com/logo.png"}'"

Supported command types

  • none (or any falsy value): Displays a transparent layer.

  • color: Displays value as a solid color. Supports any CSS "background" format, such as {"type":"color", "value":"rgba(200,0,0,0.5)"}

  • text: Displays value in brand appropriate font, centered onscreen.

    TODO: support styles, headings

  • img: Displays value as the url to an image, scaled to be contained onscreen. Supports transparency.

  • video: Displays topic as a ROS video feed. Supports JPEG format.

  • page: Displays value as an iframe, with interaction enabled if interactive is set to true. (TBD)

  • select: Displays text as a question and options as buttons to press. Sends the response as a String message to /joyride/answer.

  • prompt: Asks text as a question and presents a keyboard to enter an answer. Sends the response as a String message to /joyride/answer.

  • ros3d: Show ROS visualization (TBD)

  • anything else: displays command onscreen as JSON to aid debugging

joyride's People

Contributors

jjclark1982 avatar

Stargazers

Xun avatar  avatar

Watchers

 avatar James Cloos avatar Benjamin Johnston avatar Le Kang avatar Xun avatar  avatar Nima Ramezani Taghiabadi 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.