menu

A Flat File CMS

I am Patrick Taylor (a retired architect from England). I've been building websites since 1998. A brief roundup of why I wrote this flat file micro CMS, first created in 2006 as le.cms and developed as la.plume from 2008. Most recent version: 10.4.

The concept

Something to make simple websites in a simple easy way. In other words: simple.

The world wide web allows individuals to write HTML documents that anyone with a web browser can read from anywhere in the world. You can write the HTML on your personal computer and upload as many pages as you like. However, it is usually more productive to use an online content management system (CMS) that produces HTML automatically - you just write the content. You can do it from any computer connected to the web. There is no need to store the documents on your personal computer because everything is on your website. There is no need to bother with HTML page structure design because it's all in the system.

la.plume Micro CMS does all this. So does WordPress, the most popular CMS in the world. The difference is that la.plume is simple. It creates simple web pages in the simplest way possible - no database, plugins, widgets, pings, feeds, or JavaScript.

You can add HTML to your web pages and change the styles that control the appearance of the website. As with WordPress, you can upload photos to include in your pages. But the essence is simplicity. The PHP coding is simple, intuitive to follow, and unlike WordPress there is no need for a MySQL database.

I made this featherweight micro CMS* mainly for my own use but as it seems to work well, anyone is welcome to use it subject to the licence as described. See the readme file. la.plume is released under the Open Software License v. 3.0 (OSL-3.0). Details: www.opensource.org/licenses/OSL-3.0.

*Semantically speaking this isn't a content management system, rather a content publishing system as is the case with most flat file 'CMSes'. But CMS is the all-ebracing term people now seem to use (CPS is no good anyway; that's the UK's Crown Prosecution Service).

Flat files

la.plume pages load in a flash. When a page is requested the server goes straight to the resource: one plain text (.txt) file containing the page content and one php file to format the HTML markup. Simplicity. Speed.

Pages typically served in 1/200th of a second (view source)

This is not a flat file database as such - records stored in a plain text file and cells separated by commas. The content is simply stored as it was written, in flat "text only" .txt documents with no structure or formatting.

The CMS character set is UTF-8. There's a test page with French, German, and Swedish characters, and other bits and pieces (valid HTML5) but see this note about using foreign characters.

Some information about character encoding »


The words simple, simply, and simplicity appear several times on this page. I have seen CMS-type systems that claim to be simple, especially ones where content is stored in flat files instead of a database, and simple they are not. I've got nothing against those systems, nor WordPress which I've used for many years and still use sometimes, but you are reliant on something over which you have little control. The scripts are complex and understandable only by their developers, regardless of whether there's a database or not.

la.plume Micro CMS is not just simple to use but simply scripted and is therefore understandable by anyone with only a basic grasp of PHP. That's an advantage in my opinion. There may be occasional server configurations on which it doesn't install but when it works, it works, and your website is not reliant on me, now or in the future. You are more self-sufficient in terms of your web presence.

There will however be future versions of la.plume Micro CMS. They will be aimed at (i) installability on the widest possible range of web server configurations and (ii) internationalisation for the widest possible range of languages.

Page last modified: October 04, 2018

Comments


What license is this developed under? Is it GPLv3 or some other license enabling commercial usage?


The Open Software License 3.0 (OSL-3.0) - link above. So yes, you can use this commercially subject to the terms of the License.


I love the CMS! Continue the work, though a sleek/responsive theme would do the trick for more users! Your CMS is the only flat-file CMS I have found that actually has a decent admin backpanel.


Thanks x1000 for this minimal and power-awesome Micro-CMS, I love it!


Hi Patrick, simple and brilliant, thank you! I just downloaded the files. I did not find a demo link so I have a few questions, if I may:

- where are the content flat files stored, in what folder?

- what about the image files, full size and thumbs, where are they stored?

- are image thumbs generated automatically with sizes I need? Can they be re-generated? Are the thumbnails cached?

Merçi et une très belle journée :-)


Hello, and thanks.

The content .txt files are in the /cms/ folder.

Images are purely the ones you upload and no extra images are generated. If you want thumbnails they need to be created and uploaded separately, which is how it should be, I think, for the system to stay clean and simple. I do not personally like auto-generated thumbnail images because they are based on the original full-size image crunched down into a small square of a set size. Plus (with the WordPress uploader for instance) a thumbnail and other sizes are auto-generated whether you want them or not, taking up disk space and other complications.

The thumbnail images in the example gallery are 150 pixels square and are cropped from the originals so that you see something meaningful. The ones on my personal home page are only 70 pixels square as they are cropped to just a face. With DIY thumbnails there is a bit more work but more control.

It is tempting to add new features but things become very complicated very quickly, defeating the object.

I hope that helps.

Patrick

Leave a comment

Get the files (ZIP)

Downloads since
September 2011:

18,195