Giter VIP home page Giter VIP logo

apps.mirobot.io's Introduction

Mirobot Apps

Note: Mirobot is no longer supported - however, you can use these apps by visiting http://mirobot.github.io/apps.mirobot.io

This is the repository for Mirobot apps, whick is hosted here. New apps are welcome, see below for how to get started.

Contributing

Mirobot apps is a Jekyll project which means it's quite straightforward to add apps as you create them. Here's how to get started:

  1. Fork the repository into your own GitHub account (just click the fork button at the top of the page)

  2. Check out the repository from your account to your local computer

  3. Optionally create a branch to work on your new app in (git checkout -b )

  4. Add an app html file into the _apps directory like the others. It's easiest to just copy the point and click app as that's relatively simple

  5. Create a directory in the assets/apps directory that mathces the name you gave your app - this can contain all of your assets like css and javascript files. At a minimum it should contain a 250px x 250px jpeg image called icon.jpg which will be used in the index listing.

  6. Everything is static so you'll only be able to use Javascript but since that's what Mirobot uses to communicate that should be enough. There are two automatically included Javascript libraries which make your life easier. mirobot.js handles all communication with Mirobot and mirobot-app.js which sets up the connection and autoconfigures it based on the address in the URL. The way to set up your app is like this:

    // This is your app ready to receive a mirobot object once it is set up var t = new Turtle(document.getElementById('turtle')); // MirobotApp sets up the connection to mirobot and hands you an object once it's done var app = new MirobotApp(function(mirobot){ t.setMirobot(mirobot); });

  7. Ideally, users should be able to use your app without a mirobot connection to get a feel for what it does so try not to wait until it has connected to do all of the setup. See the other examples.

  8. Once you're happy with your app, push it to your repository and submit a pull request to get it included.

  9. Thanks for contributing to the Mirobot community!

apps.mirobot.io's People

Contributors

bjpirt avatar jmacentee avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

apps.mirobot.io's Issues

point-click: Issue with grid display

The label "100mm grid" suggests there should be a grid show.
However, the grid appears only if I click "Reset" while the pointer is in motion.
Upon subsequent click on Reset the grid disappears.

Chromium Version 39.0.2171.65 Built on Ubuntu 14.04, running on LinuxMint 17 (64-bit)

UI issue on ipad/safari

  • cant Chance variables and Numbers or Selections (fortward, backward)
  • Do not run the loop Feature

> char in filename stopping jeykll from running

The list->sentence.png and sentence->list.png in assets/apps/snap/help caused an rb_sysopen error when running jekyll serve on Windows. I removed the > from the filenames and it worked fine.

Reconnect sometimes fails

Hi Ben,

I've noticed a couple of odd behaviours with the client side WebSocket connection:

  1. robot_state isn't reset if the connection was lost then regained: self.ws is up to date, but robot_state is behind, meaning self.ws.send() works as expected, but self.send_msg doesn't
  2. send_msg isn't handling the case when the connection isn't open, relying fully on it's connected state which might become out of date

Steps to reproduce issue:

  1. Disconnect from WiFi
  2. send a command/message (so the reconnect timer kicks in)
  3. Reconnect and wait for the version message
  4. Try to call a command on a Mirobot instance: expected behaviour is the message should be sent as ws is reconnected, current behaviour is the message is not send (although manually sending the same command via ws works)

I've got a suggested fix I'll send shortly for review.

Thank you,
George

Blocky: Simulation not working without Mirobot connected

"Simulate" button in Blocky does nothing if Mirobot was not connected since loading the page.
JS console shows:
turtle.js:293 Uncaught TypeError: Cannot read property 'stop' of undefined

The problem is probably that Turtle.mirobot is not defined until Mirobot is connected, you should test this before using Turtle.mirobot.stop();

I run Chromium Version 39.0.2171.65 Built on Ubuntu 14.04, running on LinuxMint 17 (64-bit).
After connecting Mirobot the simulation works.

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.