Changes for page Google-Blockly-Editor
Last modified by Vincent Massol on 2024/02/26 17:57
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Tags
-
... ... @@ -1,0 +1,1 @@ 1 +gsoc - Content
-
... ... @@ -1,35 +1,27 @@ 1 1 ==== **USE CASES** ==== 2 2 3 -====== **__Mainuse case:__**======3 +====== ====== 4 4 5 - 6 -* The user enters his credentials. 7 -* If authenticated, he is redirected to the dashboard. 8 -* The user navigates to the page he wishes to edit. 9 -* He selects the edit option and if he's an advanced user, he sees the Blockly editor and selects it 5 +* Add a Blockly editor to the list of available editors (Wiki, WYSIWYG, etc) so that users can edit a page using the Blockly editor 6 +* Ability to define the Blockly editor as the default editor in the Admin and in the user’s profile 10 10 * The Blockly editor contains various blocks for performing common XWiki scripting actions 11 -* The user selects the appropriate blocks which show up as code on the side div 12 -* Once the user is done with the scripting, he clicks on the save and continue button 13 -* He is then redirected and is able to view his changes. 8 +* Ability to generate any scripting language output when saving the page, and starting with Velocity. 9 +* Ability to convert scripts writing in any scripting language into a visual Blockly view, starting with Velocity. This needs to be explored and if this is not possible then it means saving the Blockly data into a XObject of the pages and offering a custom Edit Sheet to use that when editing the page with the Blockly Editor. 10 +* Provide several Blocks by default that allow to do things in XWiki. Review common actions that need to be done in scripting and offer blocks for them. For example: Ability to write XWQL queries to return a list of pages and ability to execute actions on them: replace content, copy, rename, delete. Send email. Etc 11 +* Add ability for developers to create/edit new Blockly Blocks inside wiki pages. All the provided blocks by default should be using this strategy so they can be modified. 14 14 15 15 ((( 16 -====== **__Alternative use cases:__** ====== 17 - 18 - 19 -* If the user is unable to authentinicate, the user is shown an error message saying invalid credentials 20 -* 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. 21 - 22 22 ((( 23 - 24 - 25 25 ==== **ARCHITECTURE** ==== 26 26 27 -* The Blockly editor: This is the topmost layer, andcontains custom made blocks for the most commonly used scripting actions28 -* The co nverter: Thisis the middle layer, andconverts the blocks to code,whichgets displayedin thediv29 -* The interpreter: Thisis the lowermostlayerandnterpretstheconvertedcode,thisissimilartothesourceeditor17 +* The Blockly editor: This contains custom made blocks for the most commonly used scripting actions 18 +* The compiler: This converts the blocks to code for various programming languages, starting with Velocity 19 +* The decompiler: This converts code to the Blockly blocks while editing scripts. This needs to be evaluated and it needs to be decided whether it would be out of scope of our project 30 30 21 +((( 31 31 32 32 ))) 24 +))) 33 33 34 34 ((( 35 35 ==== **PROS/CONS** ====