MojoMojo
MojoMojo is a Perl open-sourced web application that combines the features of a wiki, content management system and blog. MojoMojo builds on top of the Catalyst web framework and uses DBIx::Class as the ORM. It is an example of an MVC application. One of MojoMojo's distinguishing features is that it uses tree hierarchies to store pages, a corresponding hierarchical data model to store page content and a nested set model for fast page retrieval.
History
The project was started by Marcus Ramberg and David Naugton in 2005 and has at the moment 44 contributors[1], 47 watchers on GitHub[2] and 15 code forks. The initial release of MojoMojo occurred on August 29, 2007[3], after which it was mentioned at the French open source conference Mediterranean Day of Free Software, 2007.[4] In early January 2009, the lead author, Marcus Ramberg, gave a presentation of MojoMojo to the Oslo Perl Mongers.[5] At YAPC::North America 2009, MojoMojo was presented to an audience of 38[6]. In July 2009, MojoMojo was the only 3rd party Catalyst application having a section dedicated in the book The Definitive Guide to Catalyst.[7]
Architecture
MojoMojo has a modular architecture and makes extensive use of CPAN modules; as such, it was listed as #2 among projects with heavy CPAN dependency chains[8]. Currently, MojoMojo is the largest individual project on CPAN in terms of dependencies[9], being preceded only by meta-modules (modules that simply aggregate other modules for convenience and do not offer specific functionality).
Key Features
MojoMojo has a combination of features which make it unique among wiki software:
- hierarchical page structure, coupled with folksonomical page tagging
- live AJAX preview while editing pages
- Multiple wiki syntax choices (Markdown, Textile, POD) and pluggable syntax
- extensive permissions system
Hierarchical page structure
One of MojoMojo's distinguishing features is that it uses a tree hierarchy to store pages. By contrast, most other wikis use a flat page structure, which necessitates disambiguation pages. The difference can be visualized in the table below:
Tree hierarchy | Flat structure |
---|---|
/geography/europe/france/paris | Paris |
/geography/usa/texas/paris | Paris, Texas |
/mythology/greek/paris | Paris (mythology) |
/botany/paris | Paris (genus) |
Other features
Below are more of MojoMojo's features[10][11]:
- Built-in full text search, with external search option
- Easy RSS feeds
- Support for attachments, with photo gallery for image attachments
- Diffs, revision control and edit conflict resolution via 3-way merge
- User registration control and CAPTCHA anti-spam measures
- Localization (currently translated into Catalan, French, German, Japanese, Norwegian, Polish, Russian) and full Unicode support
References
- ↑ MojoMojo contributors
- ↑ GitHub - MojoMojo watchers
- ↑ MojoMojo Changes on CPAN
- ↑ Aperghis-Tramoni, Sébastien (2007). "Perl, langage d'aujourd'hui et de demain" (in French). Journée Méditerranéenne du Logiciel Libre 2007. pp. 21. http://maddingue.free.fr/conferences/jm2l-2007/perl-now-and-then/. Retrieved 2009-07-14.
- ↑ Ramberg, Marcus (2009-01). "Introduction MojoMojo". Oslo Perl Mongers. http://www.slideshare.net/marcusramberg/mojomojo-talk-presentation. Retrieved 2009-07-14.
- ↑ Dascalescu, Dan (2009-06-23). "MojoMojo - the Elegant Wiki, Catalyst-powered". YAPC 10 - Pittsburgh, PA. http://yapc10.org/yn2009/talk/2002. Retrieved 2009-07-14.
- ↑ Diment, Kieren; Trout, Matt S (2009). "Catalyst Cookbook". The Definitive Guide to Catalyst. Apress. pp. 278–281. ISBN 978-1430223658. http://www.amazon.com/Definitive-Guide-Catalyst-Maintainable-Applications/dp/1430223650/.
- ↑ use.perl.org - Announcing the "CPANTS Heavy 100" index
- ↑ CPAN Top 100 - Heavy 100
- ↑ Wikimatrix.org - MojoMojo features page
- ↑ MojoMojo on the c2.com wiki
External links
If you like SEOmastering Site, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...