So I am an engineer and we are working on basic robotic kit (arduino, motors and stuff) for kids, we are based in Karachi, Pakistan and this is where our target market is.
We want to provide a software along with the kit - the software needs to be like scratch but scratch is geared more towards learning on computer, we want the software to be centered around a hardware robot.
We have looked at several implementations of Scratch, from
- MiroBot (mirobot.io) - uses SNAP, scratch like software
- mBot (mblock.cc/mbot) - they also made the ScratchBot (app.makeblock.cc/program/scratch/) - not opensource, based on scratch flash
- Mind+ (www.mindplus.cc/index.html) - opensource, looking at it
We also looked at Node/Flow based Programming, however we are mainly electronics engineers and although we can do Desktop applications we need to know what this sort of applications are called and is there any framework or tools or libraries we can use to make SNAP-able blocks and allow a rich colorful programming environment to kids - We want to keep it open source but want to make it ourselves so we have a complete grasp on things. Modifying/Hacking scratch source files is not an option for us as it is based on Flex/Flash and we dont want to use Flex.
Any help or pointers or advice or opinions are welcome in this regard as to from where we should start and how.
What we want for now is a basic software with Arduino language implemented as BLOCKS and which connects seamlessly with the hardware (COM PORT communication/detection) without requiring the kid to find the right COM port and connect and stuff.
Google's Blockly, open source on GitHub, is the foundation of numerous block-based programming apps for robotics kits (including mBot's and the BlocklyDuino boisvert mentioned). The platform it well supported with plenty of documentation and examples, an active community, and continuing development. It is also the foundation of the upcoming Scratch 3.0.