About NucleusCMS

Nucleus is a Content Management System (CMS): a powerful set of PHP scripts that allow you to maintain one or more weblogs or online journals.

Nucleus is intended for the people that want full control and 'tweakability' over their sites. If you're just looking for a very simple way to put up a site, or don't know any HTML, you might want to use a 'simpler' service such as Blogger.

With Nucleus, you can set up one or more weblogs. If you want to, you can even show the contents of multiple weblogs on the same page. Each blog has its own team of authors. Some authors will only have posting rights, others will be allowed to change settings for the blog as well. Within a weblog, you can set up one or more categories. Each item you add in your weblog will be put in one of these categories. Nucleus provides a built-in Commenting System, so there's no need for external commentingtools. A karma-voting system is also provided.

More About (to be merged)

With Nucleus, you can set up one or more weblogs. If you want to, you can even show the contents of multiple weblogs on the same page. Each blog has its own team of authors. Some authors will only have posting rights, others will be allowed to change settings for the blog as well. Within a weblog, you can set up one or more categories. Each item you add in your weblog will be put in one of these categories. Nucleus provides a built-in Commenting System, so there's no need for external commentingtools. A karma-voting system is also provided.

The way your Nucleus site looks is fully tweakable through skins and templates, and multiple CSS files. Next to that, the language used by the Nucleus admin area can easily be changed through language-files. Additional features can be programmed in so called plugins and installed on Nucleus. This allows you to have the features you want, without having the Nucleus core to become bloated. The Nucleus plugin interface offers plugin authors lots of flexibility. Archives for your weblogs are automatically managed by Nucleus, and a search function is provided to look up old items. Nucleus also features highlighting search terms, both in articles, and in comments!

Syndication feeds are provided (as skins). Nucleus provides RSS and Atom feeds. Extra feed types (your favorite RSS flavor) can be added easily. Want to include an image in an item? Open the media popup, choose a file to upload and off you go! No need to open an FTP program and upload the file manually. Some nasty people screwing up your comments? Ban their IP address or IP range or nickname from further comments/votes. With a simple click you can create a backup version of the database contents.

Bert's Review

My search for a dynamic website publishing system began on July of 2001. The websites that I was developing and maintaining at the time were being generated by Netobjects and uploaded to a host computer. Though maintenance of my personal site was trivial, the maintenance of client sites, when all they wanted at times was a word changed, was exhausting.

I decided to dust off an old Pentium 200mhz PC and throw a copy of Redhat on it. The combination of Linux, Apache, Mysql and PHP made it simple to drop in package, after package. Back in 2001, there wasn't the amount of content management systems that there are today, but it was still a daunting task.

Instead of deciding on a system and using it for any length of time, I was researching, downloading, installing and testing. To make matters worse, these systems were in a constant state of flux, the process had to be repeated on an ongoing basis. In open source land, the choices are big bang like.

Today, I run Nucleus, the dynamic site creation tool that I have stuck with the longest. It's simplistic approach won me over and I have yet to find anything that can lure me away. Software should get out of the way and let you do your work, Nucleus is transparent.

Criteria

Some of the high end systems I tested, with all the bells and whistles, were great for a business with server racks, but they were too much for my poor machine. So the litmus test was the speed the system rendered it's pages, doubly so in the administration area. My rationale was that if it ran fine on a Pentium 200, then it would run fine on any personal or hosted machine.

The system also needed to be easily molded to fit the intended purpose of the site. Could it be configured for a community, informational or corporate site without having to tweak the code? In other words, how flexible was the template system and the available list of options. Was it easy to understand, could anyone do it and could all this be accessed from the admin screens.

Which brings me to the administration screens, KISS is my motto. Any admin screen that veered from the LAMP principle or added complexity was eliminated from contention. This included such items as java, heavy image usage, unreadable fonts, mouse over menus and most importantly: requires Internet Explorer.

Coming from a programming background, the quality and size of the code base was important to me. Who knows, I might have the need to modify or enhance the code, either for myself or for a client. So I would pick a small enhancement to make and see how easy it was to find the desired file and effect the change.

As an open source advocate, the community support was very important to me. How were the community forums, how helpful and involved were the members of the community. How accessible were the developers and were they receptive to bug reports and enhancements. If I posted a question and got a RTFM answer in the forums or if the developers had a 'do not disturb' sign hanging up, I would move on.

Nucleus CMS v3.0 Core

Multiple weblogs: Designed in from the start. Makes it possible to have varied content or presences. Multiple authors: Seperate rights to weblogs. Administration area can be tailored to author's duties. Categories: Seperate list per weblog. Items can be moved between categories and weblogs. Commenting system: Comment posting for community or project weblogs. Can be turned on/off per weblog or item. Search friendly urls: Mydomain.com/blog/2, /item/23, /archive/2/2004-05, etc. Makes it easy for search engines and users to find your pages. Skins/Templates: Customizable within the administration screen. Each weblog can have it's own skin, great for hosting a friend's blog. Archives/Search: Archives by month per weblog. Search with highlighting of search words. Search can be turned on/off per weblog. RSS/Atom syndication: RSS 0.91, 1.0, 2.0 and Atom 0.3 feeds, customizable per site, per weblog or per category. XML-RPC interface: Blogger and metaWeblog API, tools like w.Bloggar and MozBlog can be used. File/Image upload: Easily include an image in your post as an inline or hyper-linked popup. Permitted file formats and size controlled via admin settings. Multilingual: Languages currently supported are: Chinese, Czech, English, Finnish, French, German, Italian, Japanese, Korean, Latvian, Nederlands, Persian, Portuguese, Russian, Slovak, and Spanish. Backup/Restore: Backup and restore of the MySql database. Backup of skins/templates to an xml file for archival and sharing.

Nucleus CMS v3.0 Plugins

Nucleus has a rich set of core hooks for plugin authors, the community is constantly expanding and enhancing the repository. From this sample list of available plugins, you can see the rich abstraction layer of the code base.

* NP_BlogWithOffset - display blog with item offset per page. * NP_Calendar - calendar with links to days you've posted. * NP_Chat - minichat / shoutbox plugin. * NP_CommentControl - comment control against trolls and spammers. * NP_CommentEditLink - edit all comments directly from your blog. * NP_CommentPreview - preview comments before being posted. * NP_CSS - CSS Style Switcher. * NP_EditControls - htmlArea - WYSIWYG editor for Nucleus CMS. * NP_FancierURL - URLs like /item/this-is-a-title instead of /?itemid=123. * NP_FancyText - phpBB like formatting, threaded discussion for comments. * NP_GZip - GZip your website to save bandtwith. * NP_LatestComments - shows last 5 comments made. * NP_LatestDisc - shows last 5 discussions in 5 different articles. * NP_LatestItems - shows last 5 articles posted. * NP_Log - simple visitor log for your blog. * NP_MailToAFriend - email an article. * NP_MostPopular - shows most commented posts. * NP_MostViewed - shows most viewed posts. * NP_Newsfeed - blogroll, works for your own blog too! * NP_OffsetArticles - links to next/previous 10 articles, titles, latest commets. * NP_OffsetEntriesLink - jump to next/previous set of articles. * NP_PageLinkList - go to page 1,2,3, etc. * NP_Poll - run polls with multiple questions. * NP_Print - print your article. * NP_Random - display a random quote. * NP_Referrer - track who is linking to your website. * NP_Related - show local and google search results, related to your article. * NP_RSSBlog - RSS feed of last 20 comments made. * NP_RSSItem - RSS feed of current item. * NP_SearchHighlight - search highlighting for google visitors. * NP_TrackBack - trackback for your articles. * NP_Viewed - article views counter. * NP_Weather - shows weather forecast for next 3 days + current weather. * NP_WIE - who is online plugin. * NP_XMLTools - RSS feed of complete articles, or only extracts.

“Don't ask what your system can do for you, ask what you can do with your system”

Content management systems in the field today are ever expanding, enhancing and forking. Reminds me of that Star Trek episode with the Furbies. The choices are overwhelming and each CMS has it's own way of defining the genre. What my 3 year search taught me was that no one system can scratch every itch, it's impossible, we all think and view differently. In my case, I found what I needed, a core system with the basics that could be molded to my likes and expanded for my wants.

Nucleus, over time evolved to fit my criteria:

* Fast page rendering and very light on system resources. * Multi-weblogs and skins/templates enable the creation of varied sites. * Administration area is legible, light and responsive. * Code base is small, object oriented and logical to follow. * Community and developers are friendly, accessible and vibrant.

No software is without faults or blemishes, improvements and bug fixes are the order of the day. In the case of open source software, it's the community participation that helps determine whether a system keeps expanding or expires into a black hole.

Features

A short summary of the most important features is given below:

  • Runs on your own server
  • One or more weblogs, even on the single Nucleus installation
  • Plugin-interface to add extra functionality
  • Comments
  • Archives
  • Categories
  • Search
  • Multiple authors
  • Future items
  • Drafts
  • Extensive administration area
  • Media library and file upload
  • Fully customizable skins and templates
  • Skin import/export
  • Banlist against commenting system abuse
  • RSS syndication
  • Easy installation
  • Easy backups
  • XML-RPC interface (implementing the Blogger API and metaWeblog API)
  • XHTML-ready
  • Tools to import Blogger and GreyMatter blogs

Requirements in order to run Nucleus

If you don't know if you fit the requirements, ask your system administrator

  • PHP (version 4.0.6 or higher)
  • Access to a MySQL database (version 3.23.38 or higher)
  • Some HTML and CSS knowledge, to edit skins and templates
 
nucleopedia/nucleus.txt · Last modified: 2007/05/24 11:05 by danielck