WYSIWYG module creator or Freemind integration

Events happening in the community are now at Drupal community events on www.drupal.org.
tamasd's picture

My Google Summer of Code proposal
My name is Tamás Demeter and I study at University of Szeged. I have 5 years of PHP, HTML and CSS experience. I want to have fun in the "boring" summer (no school, less programming :( ).

I am working as a professional Drupal site builder since the end of August (I worked in the video crew at Drupalcon Szeged). I would gladly take more participation in the community than now (right now I only hack together themes, and 10-line-long tiny custom modules with Drupal). Sometimes I submit patches, but that is all what I have done for Drupal.

I have 2 project ideas for this summer. I would gladly take one of it and write code during the whole summer.

WYSIWYG module creator

Overview

The basic idea is the following: most of the simple modules are using “components”, and connects inputs and outputs with variables. A component is a class, which has inputs, and based on that it outputs something. If we connects these components, then we have can make the business logic of the module. It will only handle basic tasks, but it will make a good job when someone have to make a very little module, which basically implements a hook, and calls 3-4 functions, and returns data.

Goal

By the end of the summer, I will make the user interface (my plan is SVG with jQuery), the interpreter and components to the core. My module will only ships components for the core, but it will supply a hook, so every module can easily register component classes.

Technical implementation plans

In the backend, I will define a very easy description script language with XML or YAML syntax, because later I can use the “script language” to generate a polyglot source file (it will be valid for my parser, and it will be a valid PHP code), which can be the “compiled” version. (but this is not for now)
From the HTML part, the frontend will be a simple textarea with the raw code. If the JavaScript is enabled, then this textarea hides, and the jquery builds the GUI with SVG and divs. To make things more clear, here is an example mockup for the UI:
Only local images are allowed.
There are 4 players in this game. The first is a string, which has no input, and there is only one output, which returns the string itself. The second player is the my_action_block, which is a defined block (blocks can be defined the same way). When called, this block takes one parameter, and returns an executable code (=function). The eq_comparable is a bit more tricky component. It takes 4 parameters: the first two are objects, which will be compared with the == operator. The third parameter is a function, which will be executed if the first two parameters are equals, the forth parameter is also a function, which will be executed if the first two parameters are not equals. The hook_form_alter component supplies 3 variables, and takes one. The evaluation starts with the hook_form_alter's return value, and it will recursively go through the graph, and returns the data (in this case it will be NULL, because the hook_form_alter is working with a reference variable).

Difficulity: Hard

Freemind Integration

Overview

I have started pimping up the freemind module for Drupal. Currently it exports and displays taxonomy vocabularies. The plan is to continue the development of this module, and implement some awesome features in the summer.

Goals

The first goal is the Views2 integration. With hierarchial terms, my module will be able to display nodes in a hierarchial format.
The second goal is vocabulary editor. It will be a freemind applet, and you can edit a hierarchial vocabulary in a freemind-style.

Implementation plans

The first part will be a views plugin. I already started writing a skeleton for that, but I haven't implemented anything yet.
The second will be a bit more tricky stuff. First, I have to write a freemind plugin to the applet, and a Drupal XML-RPC interface, to handle the requests.

Difficulity: Medium

Comments

Submit your idea NOW!

alex ua's picture

Hi there- if you want to participate in the SoC this summer you must submit this idea NOW!

According to the Summer of Code 2009 timeline the cutoff time for student submissions is 12pm (noon) PDT

It doesn't matter at this stage what shape your proposal is in, the most important thing for you to do is post your idea to the site, you can refine it, find a mentor, etc. later. If you have any questions or problems, please feel free to contact me. However, this is Google's rule, not Drupal's, so please don't ask for an extension, because we cannot give you one.

--
Alex Urevick-Ackelsberg
ZivTech: Illuminating Technology

Alex Urevick-Ackelsberg
ZivTech: Illuminating Technology

if you want to use SVG then

snufkin's picture

if you want to use SVG then maybe its a good idea to take a look at the Drawing API. It just got a new contributor who does the D6 version quite eagerly, it would be great to see a new SoC project build on an earlier one. Would you chose to build on it I would also be available to help out with the API of course.

no progress yet?

wouters_f's picture

I am also interested ( but in a drupal 7 version).

features (combined with context) detects your changes to
-> content type
-> views
->blocks

and saves this to your module.
This does a part of what you want to do.

SoC 2009

Group categories

Admin Tags

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds:

Hot content this week