All Projects → Rabios → dragonblocks

Rabios / dragonblocks

Licence: Unknown, Apache-2.0 licenses found Licenses found Unknown LICENSE.txt Apache-2.0 BLOCKLY_LICENSE.txt
Blockly for DragonRuby!

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to dragonblocks

backend
Python backend exposing an API to control, configure and program CoderBot.
Stars: ✭ 35 (+75%)
Mutual labels:  blockly, visual-coding
mruby-tflite
MRuby binding for TensorFlow Lite
Stars: ✭ 14 (-30%)
Mutual labels:  mruby
Plus
Otto DIY+ ("Otto DIY with steroids" + Bluetooth + APP + switch + sensors + strength +...
Stars: ✭ 100 (+400%)
Mutual labels:  blockly
Openfpgaduino
All open source file and project for OpenFPGAduino project
Stars: ✭ 137 (+585%)
Mutual labels:  blockly
Pxt
Microsoft MakeCode (PXT - Programming eXperience Toolkit)
Stars: ✭ 1,649 (+8145%)
Mutual labels:  blockly
Blockly Samples
Plugins, codelabs, and examples related to the Blockly library.
Stars: ✭ 222 (+1010%)
Mutual labels:  blockly
Blockly Games
A series blockly games which aim to teaching children programming based on Blockly Library.
Stars: ✭ 19 (-5%)
Mutual labels:  blockly
Ruby Install
Installs Ruby, JRuby, Rubinius, TruffleRuby or MRuby
Stars: ✭ 1,651 (+8155%)
Mutual labels:  mruby
mruby-esp32
mruby application template for ESP32
Stars: ✭ 81 (+305%)
Mutual labels:  mruby
Django Business Logic
Visual DSL framework for django
Stars: ✭ 134 (+570%)
Mutual labels:  blockly
Webduino Blockly
📦 The Visual Programming Editor for Webduino
Stars: ✭ 125 (+525%)
Mutual labels:  blockly
Robot blockly
A simple way to program ROS robots using blockly.
Stars: ✭ 115 (+475%)
Mutual labels:  blockly
Iobroker.javascript
Script engine for JavaScript and Blockly
Stars: ✭ 244 (+1120%)
Mutual labels:  blockly
Orchestra
One language to be RegExp's Successor. Visually readable and rich, technically safe and extended, naturally scalable, advanced, and optimized
Stars: ✭ 103 (+415%)
Mutual labels:  blockly
mruby-hiredis
mruby bindings for https://github.com/redis/hiredis
Stars: ✭ 12 (-40%)
Mutual labels:  mruby
Blockly At Rduino
[email protected] : Blockly remix for Arduino. Totally new version, enhanced one !
Stars: ✭ 96 (+380%)
Mutual labels:  blockly
Netcoreblockly
.NET Core API to Blockly - generate from WebAPI, Swagger, OData, GraphQL =>
Stars: ✭ 121 (+505%)
Mutual labels:  blockly
Blocklike
Bridging the gap between block programming and JavaScript.
Stars: ✭ 177 (+785%)
Mutual labels:  blockly
WPF-Blockly
A WPF based visual programming editor and execution engine, which support all the code syntax (including module and object oriented programming), and even you can define your own syntax.
Stars: ✭ 236 (+1080%)
Mutual labels:  blockly
Rvm
Ruby enVironment Manager (RVM)
Stars: ✭ 4,700 (+23400%)
Mutual labels:  mruby

DragonBlocks

Blockly-based environment made for DragonRuby Game Toolkit, Based on Blockly version blockly-6.20210701.0 by Google.

Usage

Buttons

  1. Export to XML: Exports the Blocks to XML file, Thus can be used later to continue coding by import.

  2. Import from XML: Loads Blocks from XML file.

  3. Export to Ruby: Exports the Blocks to Ruby file (Which you can save in the directory you want your code in).

NOTICE: Link and Run button deleted from Blockly, Also non-English languages were deleted but if you want to add your language translate the blocks then open issue/pull request for that.

Blocks

The Blocks from Blockly were kept with some improvements, Including addition of some blocks to supply them plus that DragonRuby blocks were added based on the APIs, The blocks generate mruby-Compatible code and works with DragonRuby!

Source Code and Offline Mode

Blocks have been written via JavaScript, JSON, And XML, In addition to Ruby inside the Blocks sources to generate Ruby code.

The XML source code can be barely seen in the index.html of drblocks folder, Which is the main DragonBlocks page.

Also DragonBlocks can be downloaded and used offline via "Download as ZIP" with no dependencies.

Getting Started

When you start DragonBlocks the block for function tick appears with args argument assigned to, This is by default so you can put blocks inside the function block or just delete it to write standard Ruby code.

Also a file named template_new.xml provided as small template that consists of tick function with args argument, Which is same what appears when starting DragonBlocks.

You have the standard Blockly blocks in addition to Blocks for following DragonRuby APIs:

Runtime, Audio, Kernel, Numeric, Geometry, Array, Grid, String, Layout, Easings, State, Hash, Outputs, Debug, Keyboard, Mouse, Joystick, Touch, Essentials (Require, Eval, And conversion functions)

Building

OK the way i made this is really weird, I removed all everything Node.js and Google App Engine related stuff And:

  1. Combined every source file of generators/ruby/*.js and generators/ruby.js then compressed them into ruby_compressed.js to get it working.

  2. Combined every source file of blocks/*.js then compressed them into blocks_compressed.js to get it working.

JavaScript compression done via JSCompress site.

How to Contribute?

  1. Pull Request/Issue to optimize generated Ruby/DragonRuby code.
  2. Pull Request/Issue for new Blocks.
  3. Pull Request/Issue for bug fixes.
  4. Pull Request/Issue to make the project much better and to be more-usable by Beginners.
  5. Pull Request/Issue to make naming of Blocks more simple, Or to fix the naming.

Discord

You can join the Discord channel from DragonRuby Discord Server, Then in COMMUNITY section the channel named oss-blocky XD

License

Following the license of DragonRuby's Open-Source parts, DragonBlocks licensed under MIT.

MIT License

Copyright (c) 2021 - 2022 Rabia Alhaffar

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

License of Blockly can be found in BLOCKLY_LICENSE.txt and Blockly licensed under Apache License.

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].