Last updated 6 September 2008.

Proposed by: silence

This was one of the suggestions made in last SoC ....

The project is about providing users the ability to create Personal Pages as done by Google Personal Pages.

With the module, the users can -

o: Select a particular theme (or just a few colors/fonts based on settings set by admin)
o: Select what content to show on the personal Page.
o: Arrange the content using Drag and Drop
o: Edit things inline with an instant feedback
o: Insert predefined modules(like blogfeeds), content(like lists, plain HTML etc)

Many other things can be added to the above list depending on the size required.

Comments are welcome!

Proposed by: silence (profile at:

Comments on this proposal

Isn't this close to what the
Wim Leers - February 16, 2007 - 08:40

Isn't this close to what the MySite module tries to accomplish?

yes it is I did not look at
silence - February 17, 2007 - 14:40

yes it is I did not look at it before. But as far as I could find, It does not have Drag and Drop + the kind of customization I am suggesting.

So the project could be an addon to the MySite module but i think it might be smaller then required.

or extend
alldirt - February 17, 2007 - 17:51

What do you want to accomplish? Do you want a personal page to be the "personal UI" for a website or do you want it to be a "personal AD"? Websites that address a subject, like, might benefit from "personal UI", some users/developpers may work more efficient as a result. Some other websites however focus more on the users, for example a website where photographers meet. In that case "personal AD's" would be more interesting. With their "personal AD", users show who they are in there own creative way.

I like (and use) the Mysite
jacauc - February 18, 2007 - 02:13

I like (and use) the Mysite module, and I think it's a great start to personalized pages. I think this SoC functionality should be implemented as an extension/update of the Mysite module as a lot of work has gone into that module to date (would be a waste to start from scratch)
I believe that Drag+Drop functionality is also in the pipeline to be implemented in Mysite.

Just my opinion :P

agentrickard - February 18, 2007 - 11:08

Drag-and-drop sorting is in development for MySite. It works on my local test machine but requires some changes to the module's layout handling features. It also needs testers using PCs (especially IE 7).

As for selecting user themes, et. al., the MySite module already supports this feature through Layout and Style plugins. Why don't you experiment with creating new Layout files and StyleSheets for MySite?

So it sounds like Drag-and-Drop is the only thing missing except for 'edit things inline with instant feedback' and I don't know what this means. is it AJAX-based renaming of content headers?

This seems like an obvious choice for collaboration rather than new module creation, since MySite supports 3 of the 5 features right now and a fourth is in development.

See also and for discussion of Drag-and-Drop.

My recommendation, selfish as it may be, is to file all the SoC features against the MySite issue queue.

Also see the documentation at and in the README.txt file of the MySite download.

Search first, ask good questions later.

Another MySite feature
agentrickard - February 18, 2007 - 11:13

Another documented but unexploited feature of MySite is the ability to create arbitrary content (like Weather predictions or daily Horoscopes) that are added to user MySite pages.

This is supported becauase MySite will accept both numeric and string identifiers, and because the Types plugin system allows each content type to define itself.

So you could have a Weather plugin that let users select from a list of weather stations and automatically populate the current forecast in a user's MySite page.

Work in this area would be very cool.

BTW, I will be at DrupalCON and the adjunct Code Sprint.

Search first, ask good questions later.

agentrickard - February 19, 2007 - 09:21

I spent some time yesterday adding d-n-d to MySite, based on work that merlinofchaos has been doing (

The two projects share a good bit of JS code, and there have been discussions on the developer list ( and following) that suggest that Interface for JQuery isn't quite the right solution.

What we could really use is a central Drag-and-Drop codebase: a module or JavaScript set that can be used as a library for any and all modules. That codebase would include a standard UI for drag-and-drop, and reusable functions that allowed content in different markup to use the UI. By that I mean support for using

      and other tags as boundaries for a draggable item.

      Search first, ask good questions later.

      Moved this to "needs work"
      webchick - February 22, 2007 - 10:20


      a) project needs to be re-scoped based on the MySite + Drag and Drop comments
      b) I'm not sure how exciting/do-able the prospect of patching someone else's contrib module, rather than writing your own, is going to be to a student.

      agentrickard - February 25, 2007 - 16:42

      Ported to MySite HEAD. See

      Testing needed!

      Search first, ask good questions later.

      Mysite extension
      alldirt - March 8, 2007 - 03:23

      I think I understand, now. MySite ("custom user homepages") has nothing to do with someting like Googles pagecreator ("" or ""). Drupal's Mysite users are not able to create a real homepage (yet?), but just a personalized view of the content, like Googles personal interface "". Right? Do you think a module like Google pagecreator should be separate from Mysite?

      I am wondering if it is possible to simulate pagecreator by
      - creating (Drupal's) custom user profile fields
      - aggregate those fields with Mysite
      - display them with "" like themes
      - make them available using


      I wonder if that is possible and how much work it would be.

      agentrickard - March 8, 2007 - 10:03

      Let me address these one at a time:

      1) MySite does not duplicate PageCreator. It duplicates (Note: MySite also supports non-node content. It does not, however, currently support placing Blocks or Views into the user's MySite page. See for the reasoning on Blocks. See for a discussion of Views.)

      2) Should PageCreator be separated from MySite. Maybe. I think the MySite architecture would support it; we'd likely create a node type that is a "mysite" page, and view those pages under the path /mysite/UID/node/NID. And we'd create a MySite content group on the user's page that showed that content.

      2a) However, there may be better options for this and we just hook to them in MySite. I don't think that profile is the right place for that, however. Creating a node type might be the best way -- unless we just wanted to aggregate existing user nodes under a custom view. Creating that node type would be fairly easy -- the question is: Custom node type (my preference) or CCK. Since CCK is not-quite core, I am hesitant to introduce that dependency. This sounds like a week of work, then testing.

      3) MySite 5.x.1.10+ supports user-configurable Theming and automatic path aliasing, which makes it a simple mod_rewrite issue to enable See the demo site (, which uses Gutenberg and the MT theme Star Crash from within a site that is themed in Garland.

      3a) It would be fairly simply to aggregate all of a user's content under the MySite presentation layer, so that blog posts etc., were presented within the user's selected theme (at mysite/UID/node/NID). Also a week of work, max.

      4) One thing that MySite lacks is a page such as (you must be signed in). The widgets themselves are supported. A cool interface for browsing and adding them is not.

      Search first, ask good questions later.

      Cool, thank you!
      alldirt - March 8, 2007 - 18:57

      Cool, thank you!

      Two weeks... for you... then 3 month would be sufficient for a student?

      Why PageCreator in Drupal. Well, creating your website on is nice, as is creating your homepage with any other easy to use “create your homepage” tool. But this does not in anyway compare to creating your homepage within a community. Say you are running a small community website for a neighborhood. It would be the greatest thing if every neighbour could create their own custom homepage. I'm sure they would go to the limit to create the coolest homepage, at least the coolest of the neighborhood. Look at what neighbours do at christmas time. They like to go to the limit with christmas lights on their houses, just for fun. I am sure “Drupalpages” could be a hit. Another example would be an elementary school or a communitiy for kids below 12 years. Creating homepages would be very educational. I could give many more examples, but I'm sure that you know what I'm talking about. Drupalpages could make Drupal stand out of the crowd in yet another field. Increased user involvement.

      I wasn't aware of: (no need to login if you don't want to save it), so I was stunned when I saw how easy it was to allow pacman, blocks or whatever game to ones homepage. Very cool. Never be bored again. You say Mysite already supports this?

      Now how do we get this proposal back into the “proposed projects” instead of “proposal ideas”, agentrickard/webchick? It is pretty clear that we are talking about a different project than Mysite, which is good for a SoC proposal, although keeping a strong relationship between the two could be smart for Drupal. We would need an enthusiastic student and a good mentor to sign on and take this proposal one step further. The goal is crystal clear, the project will be exciting and there are specific ideas about possible implementattions.

      What do you think? Who is willing to take this project?

      I strongly believe that PageCreator could become a killer application in community websites and social networking services (, since (in real life) users have the urge to be an individual between peers. Drupal has Mysite and userprofile, Myspace has its userprofile, but Pagecreator in community software could take this one step beyond.

      Please discuss.

      Some discussion
      agentrickard - March 9, 2007 - 10:37

      Again, points one at a time.

      1) 3 months for a student.... Maybe. If we're adding functionality to MySite I don't think it would take that long. I also don't think we should start from scratch, either....

      2) If we're talking about MySite development, I'd be willing to mentor / oversee. Even if not as SoC, I could use a co-maintainer. Even if we're talking about a new module, I'd still be willing to work on it.

      3) Not sure that a new node type of "DrupalPages" is the way to go. Users with proper permissions can already create blog posts, stories, pages, etc. I think the trick is simply keeping the new user pages private (or selectively accessible to users). I was discussing this with yelvington yesterday, and we're thinking of an option to let MySite users expose their current content (blogs, forum posts) under a custom view akin to /mysite/UID/page.

      Doing so would define three basic content classes for MySite: The Dashboard (the current functionality). MyPages, and MyProfile. If we go this way, we'd have to do some research to make sure the project isn't duplicating functionality already developed for other modules.

      This approach might also open up some support for the Views module, as individual users could add admin-defined Views to their MyPage collection. Users would also have customization options for MyProfile and could define which of the three elements would be viewable and which would be the default for a) the user and b) everyone else. If we wanted to get really fancy -- and this would take some work -- users would be able to define which other users could access their MySite pages (right now, there is just a public / private switch).

      4) As for I say that MySite support this now, but that's not quite true. MySite supports the creation of those types of Widgets and placing them in a user's MySite collection. What it doesn't support is a separate page that lists all the available widgets, by category. Adding that, however, isn't terribly hard.

      5) I'm not sure this is a separate project from MySite. Particularly since MySite has user-based Theme-switching and the API for adding arbitrary content. I think its a chance to extend the MySite concept and (perhaps) move it towards a Views-style popularity or (shudder) a core feature.

      Search first, ask good questions later.