All Projects → robotopia-x → Robotopia

robotopia-x / Robotopia

Licence: mit
🤖 Introducing kids to coding with tiny virtual robots!

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Robotopia

Yrssf
一个分布式(p2p)云教学/云课堂/直播平台系统CMS,睿易派的开源替代品
Stars: ✭ 141 (-70.5%)
Mutual labels:  learning, teaching, school
School-Programming
Хранилище за свободно учебно съдържание по програмиране, информатика и ИТ за българските училища
Stars: ✭ 82 (-82.85%)
Mutual labels:  school, teaching, coding
Competitive Programming Resources
This repository consists of data helpful for ACM ICPC programming contest, in general competitive programming.
Stars: ✭ 199 (-58.37%)
Mutual labels:  algorithms, coding
Free Programming Resources
💎 免费的编程资源大全,持续更新!🔥 覆盖各种语言和方向(Java \ Python \ C++ \ JavaScript \ Golang \ 前端 \ 后端等)的学习路线、贴心教程、项目实战、编程书籍、面试合集、实用资源等,对程序员非常有帮助!
Stars: ✭ 225 (-52.93%)
Mutual labels:  algorithms, learning
Ebook
Organize valuable books
Stars: ✭ 477 (-0.21%)
Mutual labels:  learning, coding
Cslearning
开源项目之「计算机编程自学之路」:计算机自学指南+面试大全+资源分享+技术文章
Stars: ✭ 107 (-77.62%)
Mutual labels:  algorithms, learning
Robotics Coursework
🤖 Places where you can learn robotics (and stuff like that) online 🤖
Stars: ✭ 1,810 (+278.66%)
Mutual labels:  algorithms, learning
pw
Best websites a Programmer should visit
Stars: ✭ 27 (-94.35%)
Mutual labels:  puzzle, coding
Godot3 procgen demos
Exploring Procedural Generation algorithms in Godot
Stars: ✭ 85 (-82.22%)
Mutual labels:  algorithms, learning
Zimjs
ZIM JavaScript Canvas Framework - Code Creativity! Interactive Media For All.
Stars: ✭ 259 (-45.82%)
Mutual labels:  learning, teaching
xplain
A framework for providing interactive interpretations and explanations of statistical results
Stars: ✭ 26 (-94.56%)
Mutual labels:  learning, teaching
Oh My Git
An interactive Git learning game!
Stars: ✭ 250 (-47.7%)
Mutual labels:  learning, teaching
Letters
Письма к студентам курса
Stars: ✭ 107 (-77.62%)
Mutual labels:  algorithms, learning
Cracking The Coding Interview
Tests, Questions and Solutions from Cracking the Coding Interview
Stars: ✭ 91 (-80.96%)
Mutual labels:  algorithms, coding
Competitiveprogrammingquestionbank
This repository contains all the popular competitive programming and DSA questions with solutions.
Stars: ✭ 122 (-74.48%)
Mutual labels:  algorithms, coding
Awesome Coding Javascript
📌 持续构建个人的源码库(JavaScript 原生、常用库、数据结构、算法)
Stars: ✭ 88 (-81.59%)
Mutual labels:  algorithms, coding
Oppia
A free, online learning platform to make quality education accessible for all.
Stars: ✭ 4,361 (+812.34%)
Mutual labels:  learning, teaching
Sudoku Generator
A Sudoku puzzle generator written in C++ using modified and efficient backtracking algorithm.
Stars: ✭ 33 (-93.1%)
Mutual labels:  algorithms, puzzle
Technical Interview Guide
My learning material for technical interviews!
Stars: ✭ 76 (-84.1%)
Mutual labels:  algorithms, coding
starwarsdb
Relational Data from the Star Wars API for Learning and Teaching
Stars: ✭ 34 (-92.89%)
Mutual labels:  learning, teaching

🤖 Robotopia

built with choo v4 GitHub license

Robotopia is a browser based programming environment for kids and young adults. The goal is to introduce kids to basic programming concepts with cute little robots.

Robotopia Editor

Read the Article!

Now, play it!

In Action

in action

Features

  • [x] Graphical programming environment
    • [x] Blockly code editor
    • [x] Game preview
  • [x] Tutorials to introduce programming basics
    • [x] Commands
    • [x] Conditions
    • [x] Loops
    • [x] Events
    • [x] Basic arithmetic logic
  • [x] Competitive mode
    • [x] Client editor to create bots
    • [x] Presenter to present robot competition on a central monitor
    • [x] p2p connection between clients and presenter
    • [x] 1v1 mode
  • [x] Programmable robots
    • [x] Movement
    • [x] Pathfinding
    • [x] Collecting Resources
    • [x] Place markers
    • [x] React to events
  • [x] Robot script runtime
    • [x] Scriptable with JavaScript
    • [x] Roundbased execution of robot scripts
    • [x] Events

How you could use this

Here is a short guide to get you started if you're interested in using our tool to organize your own coding events.

What you'll need

  • Around 1,5h of time
  • A Computer with a current browser for each kid
  • A projector or big screen to display the competition
  • Tutors who can help the kids if they have questions,

Note: We had the impression, that 1 supervisor can handle ~5 kids.

Agenda

1. Tutorials

Open https://robotopia-x.github.io on each computer. The kids should start with the tutorials to learn the basics of programming. Meanwhile, the tutors can help them if they struggle with a level or have general questions. After most kids have completed the tutorials you can begin with the competition.

Open http://robotopia-x.github.io/#presenter on the computer connected to the projector and pick a room name (the kids have to enter the same room name when opening the editor)

2. Program your robots

At this point, the supervisors will, together with their assigned kids, build a competitive program.
They'll show them the basic idea behind the program and make them ready to program their own robot swarm. Upload the current code by pressing the "Upload" button on the top right corner.

Note: You'll run the first competitive game with 2 of the build programs

3. Let the robots compete

You now have to get back to the presenter on the projector. Press the "Run" button and select two players that already committed their program.
You can now press the "Start" button to start the competition.

Note: The idea on this point is, that all people in the room now look at the game running on the projector.

4. Improving the programs

When the first few competitions are finished, the kids get time to improve their programs with things they noticed while battling.
Also, the kids who couldn't build their own program by now get the time and opportunity to commit their own program and compete with the others.

Note: This part of the event can be extended as long as the kids are interested.

Installation

If you want to install Robotopia on your local environment follow these instructions.

Precondition

Project Setup

First install budo globally first:

npm install -g budo

Then clone the project from github and install:

git clone https://github.com/robotopia-x/robotopia.git
cd robotopia
npm install

In the directory of robotopia call

npm start

A local web server will be started at http://localhost:9966/.

Configuration

In the file index.js there is configured the SignalingHub server for communication in presenter mode:

  • 'hubUrl: [serverURL]': Add there your prefered server url

Related

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].