Updates On Xoops Engine Development As Of August 16th

August 16th, 2011
.
XOOPS is an open source CMS solution founded by Ono Kazumi, Goghs Cheng, etc. in 2001, released under GPL2 license.  The most recent major releases were XOOPS 2.0 in 2003 led by Ono Kazumi and XOOPS 2.3 in 2008 led by Taiwen Jiang.
.
Xoops Engine is the next generation of XOOPS, designed as an application development engine for web and mobile.  It is released under new BSD license and aims at building a sustainable ecosystem to benefit all contributors and user in technology and business.
.
The Xoops Engine is developed by most active and talented XOOPS core developers led by Taiwen Jiang (a.k.a. phppp), who was Project Lead and Core Dev Lead for XOOPS from 2007 to 2011, core developer from 2005 to 2007.
.
Xoops Engine development is fully encouraged by support from XOOPS founder Ono Kazumi:
“I hope that you keep on going with the development of XE, since there is no bright future ahead with X2.”
.
Xoops Engine development is hosted on http://www.xoopsengine.org since August 2011 while legacy XOOPS (e.g XOOPS 2) series is hosted on http:://www.xoops.org and maintained by XOOPS community contributors.
.
Check Xoops Engine updates on XoopsProject@Twitter (https://twitter.com/XoopsProject) and http://www.xoopsengine.org

Xoops Engine Alpha 3 Release Schedule

July 16th, 2011

We have a lot processes in X3 development since Alpha 2 release.

I would suggest following schedule for the coming month:

  • Xoops Engine Alpha 3 release: on August 13th
  • github repo structure change, github usage guide: D.J., julionc, by July 24th
  • ZF upgrade to 1.11.9, change naming conventions to respect ZF strictly: D.J., by July 24th
  • Backend product and UE design: ezsky, by July 31st
  • Backend design implementation: D.J., by August 7th
  • Debug and complete “user” module and ACL: D.J., dongbeta, by July 31st
  • Content management app: dongbeta, by August 7th
  • Theme and HTML5: voltan, kris_fr, mariane, by August 7th
  • Documentation: julionc, dongbeta, by August 13th
  • Test: marco, by August 13th

Yes, as you see, we have some people back onboard, like marco!
Anyone else have time on this Alpha 3 release loop?
We need more people on documentation, apps, themes and test.

On twitter: @XoopsProject

Enable Redis in Xoops Engine Persist Service

May 6th, 2011

Xoops Engine has a specific built-in persistent layer for system data by utilizing various cache engines at low level, including APC, memcached/memcache, etc. Now Redis becomes a very promising choice for key-value style storage.

APC has been a very favorite recommendation due to its high performance while memcached is also widely adopted for its stable and performance. However when Redis comes up with its simple but very demanded features, it is on top of our list due to its excellent performance which is comparable with memcached (antirez, sys/toilet, Tim), and the most desires feature of supporting advanced data structure in addition to strings:

  • Lists of strings
  • Sets of strings
  • Sorted sets of strings
  • Hashes

There have been some clients available for PHP, like Predis in PHP by nrk and PhpRedis in C by nicolasff. The PhpRedis extension has been installed and implemented in Xoops Engine on a ubuntu/nginx/php-fpm stack at Xoops Engine Demo. Thank Nicolas (@yowgi) for his help on serialize option via tweets.

What’s next? We might do a thorough benchmark with Redis and Xoops Engine, probably considering igbinary extension, then adopt PhpRedis into extended ZF2 libary .

XE TODO for May/June 2011

May 3rd, 2011

Along with the XE Alpha 2 release, I am going to step back from XE new development and concentrate on maintenance and the theme is:

Build development environment for developers and designers.

Some of my personal plans related to XE:

  • Tutorials for development tools
  • Introduction to Zend Framework development
  • Unit test investigation considering ZF2
  • App/module builder

Xoops Engine Experiences and Tutorials

May 3rd, 2011

It is very exciting to see two videos for Xoops Engine presented by @txmodxoops right after Xoops Engine Alpha 2 release:

* Xoops Engine Alpha 2 installation on wamp server
* Xoops Engine Alpha 2 after installation

Although txmodxoops had not so successful experiences, participating and sharing is the first step to improve our new system.

Soon after the two videos, mamba shared his two videos:
* Installing Xoops Engine Alpha 2 on WAMP server
* Installing XOOPS legacy modules in Xoops Engine

For deployment and installation on nix systems please check :
* Xoops Engine Alpha 2 deployment and permission settings
* Xoops Engine Alpha 2 installation on ubuntu/nginx stack

Please share your Xoops Engine experiences on twitter with @XoopsProject casually but quickly.
And report your issues to Github issue tracker

Xoops Engine Alpha 2 Release

May 2nd, 2011

Today we are proudly to present XOOPS community with Xoops Engine Alpha 2 release.

Since the Alpha 1 Release in January 2011, there have been many progresses in Xoops Engine development. XOOPS, or eXtensible Object Oriented Portal System, well known as a leading open source CMS and portal system, now becomes a development engine for web and mobile applications.

XoopsEngine, as the new brand of the XOOPS Project, supports open and extensible engines backboned with its multi-engine architecture. By taking advantages of PHP frameworks like Zend Framework, template engine Smarty and AJAX libraries like jQuery, the Xoops Engine brings the Project to a new generation.

Some selected features that are most wanted by community available in Xoops Engine:
* Built-in cache mechanism for high performance
* Clear M-V-C with AOP and event hook
* Extensible URL rewrite for better SEO
* App/module clone and theme inheritance for application extension
* New model mechanism for easy development with less code
* New layout/block/widget for flexible and better user experience

After Alpha1 release many developers have started to contribute to Xoops Engine development, including well know developers from other open source projects.
Some of the new progresses in Alpha 2:
* Namespace for apps and modules
* WYSIWYG editor factory with CKEditor and jQuery based ClEditor
* Security handler and resource, added XSS filter, IP protection, super global contamination, etc.
* Block and theme mechanism improvement
* Protection for config files
* First Xoops Engine themes by insraq and voltan
Special thank goes to Xoops China Team.

For more details please check:
* Xoops Engine Development: http://www.xoopsengine.org
* Follow us on twitter: http://twitter.com/XoopsProject
* Discussion: http://xoops.org/modules/newbb/index.php?cat=11

Don’t forget to download Xoops Engine Alpha 2:
* The full package
* Only the new engine
And report your issues to: https://github.com/xoops/engine/issues

Taiwen Jiang (aka phppp)
Xoops Engine Development Team
April 30th, 2011

Updates on Xoops Engine and XOOPS 2 development as of April 8th

April 9th, 2011

XOOPS development is getting more active recently.

Xoops Engine, the next generation of XOOPS system, is redesigned with brand-new architecture and development standards by adopting cutting-edge libraries like Zend Framework 2 and Smarty 3.

Following the first public press in Nov 2010 in Beijing and Alpha 1 release on January 27th, the Xoops Engine Alpha 2 is coming to us. We are very happy to see more and more contributors joining us. Some of the names might be known or not known to you: designers like insraq and voltan have made new themes for Xoops Engine, Dong Lijun leads a dev team with ezsky on kernel test and app development as well as tech docs, kilica starts working on Xoops Engine and will provide us a most-wanted app, Marcus starts on kernel review and relevant docs … The list is too long to mention here, you will see them very soon. There are some very talented developers from other well-known open source projects starting to work on Xoops Engine kernel and apps, they desire to not disclose their names at this moment but time won’t be long before they introduce themselves with their exciting apps.

The XOOPS 2.* series is being improved continuously. On April 8th 2011, XOOPS 2.5.1 Final was released following its RC on March 17. The 2.5 series has been an community based improvement over 2.3/2.4, some proof-of-concept features are also introduced for a smoothy migration to Xoops Engine.

In the coming months, we will continue the exciting activities to get Xoops Engine ready as early as possible. Meanwhile XOOPS 2.5* series is maintained for bugfixes and security improvements.

Xoops Engine Coding Standards – drafting

March 12th, 2011

As Zend Framework is the primary library for us, Xoops Engine Coding Standards are built primarily based on ZF standards.

Recently Matthew Weier O’Phinney, lead developer for ZF, is working on “Zend Framework 2 Coding Standards” drafts.

At this moment, what I propose for Xoops Engine, in terms of naming conventions:

  • for user extensions and third-party contributions, including apps, modules, plugins, themes, etc.,  use lower case for file names and case-insensitive for class names (related to autoloader, this might be changed in the future);
  • otherwise, following ZF2 coding standards as proposed by Matthew below.

Read the rest of this entry »

App/Module Development Plan for Xoops Engine

March 6th, 2011

In Immediate TODO as Feb 15th, some TODOs were listed:

  • Navigation for legacy modules [Done]
  • Admin for legacy modules [Done]
    • App admin as parent + module admin in ifrme with auto resize
    • App admin in frame + module admin in frame
    • Legacy admin navigation + module admin [In this "native" way]
  • Installer fix: open_basedir issue reported by fdeconiac [Done]
  • Clean and refactor of “block” engine [Partially]
As you can see, the progress is not bad :)
More excited, more and more developers start to work on Xoops Engine.
Theme and design for Xoops Engine:

  • insraq created a brand new design and theme for installer
  • insraq, again, created the first community generated theme, will be announced with Xoops Engine Alpha 2
  • voltan, is about to work on XE templates
Apps and modules for Xoops Engine, some basic apps have been picked up by some developers:
  • Content (About us)
  • Links (Partners)
  • Slideshow
  • News
  • Ask
  • Contact
  • Product
  • Downloads
While I am working on some areas that I think important, or I am good at:
  • User/Profile module
  • SSO/OAuth (or OpenID?)
  • WYSIWYG editor gateway
  • Integration of editors: jQuery ClEditor; CKeditor with CKFinder
  • Investigation and learning HTML5 for mobile applications powered by Xoops Engine
  • Media resource manager
  • Xoops Cloud: download, online service

We are looking forward to more people joining Xoops Engine development …

Naming Conventions for Abstract and Interface

March 6th, 2011

In Zend Framework 1.*, naming conventions for abstracts and interfaces were not defined quite clearly. Suffix was generally used for abstracts like Zend_[Component]_Abstract, while both suffix and prefix were ever used for interfaces like Zend_[Component]_Interface, Zend_[Component]_[Component]Interface, Zend_[Component]_I[Component]. In ZF2, prefix is used for Abstract as Zend\[Component]\Abstract[Component].

Since Xoops Engine has been developed upon Zend Framework 1.* libraries but ZF2 style including namespaces and autoloaders have been implemented in Xoops Engine, it is time to for us to formulate Abstract/Interface conventions.

After some brief research and talking with @weierophinney on twitter, Abstract naming convention will follow ZF2 style, i.e. Xoops\Zend\[Component]\Abstract[Component]. As for interfaces, @weierophinney suggests nouns w/o suffix/prefix; I just feel it not consistent with Abstract, but we will follow the rule any way.