It's been some time since I started thinking about which structure should be given to the web2py-based CMS.
So far, I came out with some experiments and tons of "brainstorming-level" documentation of how I thing stuff should be made. So, here it is some stuff: Project homepage: http://w2cms.com/ Source code on GitHub: https://github.com/rshk/web2cms/ Documentation: http://w2cms.com/doc/_build/html/ The project status is not even considerable an "alpha", what I did is more experiment-level, but I started defining a structure as I think it should be. A quick overview of planned features: * Different kind of contents (page, article, ...), referred as "node", managed by the same code, but with different fields/views/behavior. This is very similar to drupal content management, for who is familiar with it. * User-defined fields associated to content types. Unlike drupal, configuration should be placed (also?) in configuration files, to keep "structure" and "content" well separated * The main layout is composed of different regions, in which some "blocks", containing either static or dynamic content may be placed. * Comments and stuff, as components (with ajax loading, etc.) * Categories/tags/.. managed by assigning "tags" to stuff (not only to content, possibly to users or other entities). Tags are categorized in vocabularies that define the tag behavior / limitations, and can be organized in trees. * Relationships. A lot of stuff can be defined by defining "relationships" between entities, such as "parent" for a tree organization, "like" for a facebook-like liking of things, "vote" with a '3' value to implement a fivestar content rating, etc. * Everything is translatable. I see how in other software, such as Drupal, translation of content can become a pain if it's not directly supported by the core, so I created a way to handle translations of pretty much everything with "parallel" ``t9n_*`` tables. * Per-domain configuration selection. the database connection URI and other settings may be defined per-domain (autodiscovery? through environment vars? ...?), in order to manage several websites on one web2py installation. Feel free to clone and test the CMS, everything should work out of the box using SQLite; just keep in mind that there is very few to see at the moment (content creation, listing and display are the only things working as I write). Any feedback / suggestion / proposal is greatly appreciated! -- Samuele ~redShadow~ Santi ---------------------------------------------------------------- redshadow[at]hackzine.org - redshadowhack[at]gmail.com Blog: http://hackzine.org GPG Key signature: 050D 3E9F 6E0B 44CE C008 D1FC 166C 3C7E EB26 4933 ---------------------------------------------------------------- /me recommends: Squadra Informatica - http://www.squadrainformatica.com ---------------------------------------------------------------- - Proud ThinkPad T-Series owner - Registered Linux-User: #440008 * GENTOO User since 1199142000 (2008-01-01) * former DEBIAN SID user ---------------------------------------------------------------- "Software is like sex: it's better when it's free!" -- Linus Torvalds
signature.asc
Description: This is a digitally signed message part

