Google-Blockly-Editor

Version 4.2 by Ecaterina Moraru (Valica) on 2018/05/04 11:36

 
 Requirements
 Idea
 
 

https://xwiki.markmail.org/search/?q=vivek+iyer

 

http://dev.xwiki.org/xwiki/bin/view/GoogleSummerOfCode/BlocklyEditor
https://developers.google.com/blockly/

Description

USE CASES

Main use case:
  • The user enters his credentials.
  • If authenticated, he is redirected to the dashboard.
  • The user navigates to the page he wishes to edit.
  • He selects the edit option and if he's an advanced user, he sees the Blockly editor and selects it
  • The Blockly editor contains various blocks for performing common XWiki scripting actions
  • The user selects the appropriate blocks which show up as code on the side div
  • Once the user is done with the scripting, he clicks on the save and continue button
  • He is then redirected and is able to view his changes.
Alternative use cases:
  • If the user is unable to authentinicate, the user is shown an error message saying invalid credentials
  • If the user is not an advanced user, he won't see the Blockly editor option and would need to go to Settings and enable Advanced User in Preferences.

ARCHITECTURE

  • The Blockly editor: This is the topmost layer, and contains custom made blocks for the most commonly used scripting actions
  • The converter: This is the middle layer, and converts the blocks to code, which gets displayed in the div
  • The interpreter: This is the lowermost layer and interprets the converted code, this is similar to the source editor

PROS/CONS

Pros:
  • Its easier to code, especially for the inexperienced users
  • Even for the experienced users, its easier since more code is achieved in less keystrokes
  • Encourages inexperienced coders to start coding too
Cons:
  • Since the blocks are tailor-made for certain common scripting actions, other actions would probably me more difficult to code and would become complicated
  • Google Blockly only supports a limited number of languages, so extending support for other programming languages would be a problem.

 

Tags: gsoc
    

Get Connected