 ____  _                  _     __  __                         
|  _ \| | __ _ _ __   ___| |_  |  \/  | ___  _ __   __ _  ___  
| |_) | |/ _` | '_ \ / _ \ __| | |\/| |/ _ \| '_ \ / _` |/ _ \ 
|  __/| | (_| | | | |  __/ |_  | |  | | (_) | | | | (_| | (_) |
|_|   |_|\__,_|_| |_|\___|\__| |_|  |_|\___/|_| |_|\__, |\___/    0.04a
                                                   |___/
    The Transparent Content Manager
                                                                       `
Planet Mongo is a free/libre content manager released under the GPL 2. 
Now there are a huge number of both proprietary and free content 
managers in existence, and many with large communities and development 
teams. Word Press, Joomla, postnuke, MediaWiki and others enjoy huge 
popularity, and sport numerous and impressive features. However, Planet 
Mongo has a rather different aim than most content managers. This means 
that Planet Mongo does not try to be a content manager for everybody, 
so to speak. This also means that Planet Mongo might not be the right 
content manager for you.

Planet Mongo has three goals: 
     * Transparency
     * Flexibility
     * Simplicity

What do I mean by "transparency", you might ask? I mean that Planet 
Mongo never will do something that cannot be easily understood, and 
easily undone by hand. Many large content managers are so complicated 
"under-the-hood", and have so many operations that are easy for 
computers to do but difficult to repeat by humans. Planet Mongo, 
however, strives to be human-readable at every step. All configuration 
can be done easily by directly modifying configuration files. All 
content created by directly creating files in the file system. No 
confusing databases, no confusing systems of IDs. In fact, as of the 
forth alpha, there are no ID numbers at all anywhere in Planet Mongo! 
Even none used internally! Everything is done using the filesystem 
and common sense.

Now Planet Mongo strives to be flexible by using a totally different 
structure than most content managers. Most content managers have a 
structure where the user creates articles using a web-management 
system, and the content manager processes them and produces final 
websites. Planet Mongo, however, more of the time behaves like a 
programming language. "Planet Mongo commands" are used in HTML 
files to produce traditional features of content managers, such 
as news, and comment pages. For example, to insert a blog-style 
news section, a Planet Mongo admin needs only to use the 
"news : main" command, as such:
      <!--[[ news : main ]]-->
This news main command can be inserted in ANY content file OR even 
in your theme, so you can have any number of blogs anywhere on your 
site. For example, you could have a "cool links" side bar on your 
theme in addition to your usual blog. Or you could use it on a band 
site to display a calender for live events. Everything in Planet 
Mongo is made with this philosophy: if it can't be done flexibly, 
it shouldn't be done. That same philosophy could explain why 
Planet Mongo has so little done in general. But I digress.

On top of that, Planet Mongo supports the use of PHP anywhere. You 
can put unhampered PHP in your theme, in a content file, even in a 
blog post. Making a new module is a simple as putting a PHP file in 
the "modules" directory. Of course, any such freedom that might 
present a security issue can be disabled.

Just in case you think you might be understanding how Planet Mongo 
is different, I decided to draw up a few snazzy ascii-art diagrams 
to hopelessly confuse the matter, since diagrams are especially 
useful for such things:
  _______________________
 / Traditional structure \_______________________________________________
|      _________      ____________                                       |
|     | Content |    | Generated  |                                      |
|     | Manager |--->|  Content   |---> Website visitor                  |
|     |_________|    |____________|                                      |
|         |                                                              |
|    (read data)  ________________      ___________                      |
|         |      | User Supplied  |    | Web based |        Website      |
|          '---->|    Content     |<---| Back end  |<--- Administrator   |
|                |________________|    |___________|                     |
|________________________________________________________________________|

  ________________________
 / Planet Mongo structure \______________________________________________
|              ______________                                            |
|             | Planet Mongo |                                           |
|         .-->|   Command    |---.                                       |
|         |   |______________|   |                                       |
|         |    ______________    |                                       |
|         |   | Planet Mongo |   |                                       |
|         |-->|   Command    |---|                                       |
|         |   |______________|   |                                       |
|         |    ______________    |                                       |
|         |   | Planet Mongo |   |                                       |
|         |-->|   Command    |---|                                       |
|         |   |______________|   |                                       |
|         |                      |                                       |
|        _|_____________         |    ____________                       |
|       | User Supplied |        '-->| Generated  |     Website          |
|    .->|    Content    |----------->|  Content   |---> Visitor          |
|    |  |_______________|            |____________|                      |
|    |          ______________________                                   |
|    |         | Text editor directly |                                  |
|    '---------| editing file system  |<--- Website administator         |
|              |______________________|                                  |
|________________________________________________________________________|

Now if you're looking at those totally inane diagrams and come to the 
conclusion that Planet Mongo looks way more complicated, then you're 
wrong. The diagrams lie. Planet Mongo is actually way simpler, and 
(incidentally) completely lacking of features, but diagrams tend to 
make things more confusing, so that's probably what happened.

Which brings us to the third goal of Planet Mongo: simplicity. What 
ticked me off about other Content Managers and made me make my own 
was how unreliable they were. I was using postnuke if I recall, and 
suddenly, somehow something broke such that the web-administration 
was, for the most part, broken. I was then forced to use phpMyAdmin 
to make all changes to my installation manually. While I probably 
could have diagnosed and fixed the problem, I thought, "Why fix 
something that's just going to break again?". Thus was born the 
first (alpha) version of Planet Mongo.

So, as I was saying, simplicity is an important design aspect of 
Planet Mongo. Planet Mongo...
     * does not use MySQL (or any other such database)
     * does not require PHP5
     * does not use session data (thus could be considered stateless)
     * does not use buffers or caching
     * does not require disk-write access (only used for comments and 
         optional web-based backend)
     * does not require cookies (only used for optional 
         authentication and user system)
     * does not require JavaScript
     * is not packaged with any images
Also, without the need for a web-based administration or even 
disk-write permission, Planet Mongo can be quite secure. Backing up 
is also a breeze: its just as simple as copying the directory. Also,  
the fact that it comes packaged by default with absolutely no images 
and with few themes means for a small download size and little "extra 
baggage".

