Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Developing my very own CMS

WHY?! ... Maybe that's your first thought when reading the headline of this topic.

There's a variety of open source CMS' out there to suit everyone's needs. And I guess you're right... in fact I very much agree.

But this topic is for naive and stubborn programmers like myself who really like the idea of developing their own CMS from scratch. But where do I start and what should be my main focus points in the planning of this CMS?

Are there any good tutorials, articles, books etc. out there on developing your own CMS from scratch?

If not maybe some of you have tried to develop your own CMS... if so please share good and bad experiences.

Thanks in advance

like image 364
Henrik Bak Thomassen Avatar asked Apr 05 '09 10:04

Henrik Bak Thomassen


2 Answers

If you don't have answers to those questions already you're probably starting with the wrong project type. A CMS, even a basic one, can be a very complex beast, here's a few things that you need to take into account:

  • How will your database look
  • How flexible will you allow the user to be on page info (ie, how customisable are the properties)
  • How will people edit the page data
  • How will you view the published version of a page
  • How will you support versioning
  • What kind of sites should be the target for the CMS

The answers to these questions will help decide how the database looks, how the project(s) are broken down, how to deal with people wanting to make pages, and so on.

I'd more suggest that you start by either looking at the open source CMS projects, and get a feeling for how they have gone about it, it'll give you more of an idea when looking to produce your own. Otherwise you can quite easily get swamped by options.

Edit - Just thought I'd add, I contribute to an open source CMS (Umbraco) so I am familiar with what needs to be done for a CMS, I'm not just being negative

like image 177
Aaron Powell Avatar answered Oct 12 '22 22:10

Aaron Powell


Yes a CMS can be big, but they can start small and as a learning/fun project that's pretty good, and the real selling point is you can use it yourself. If I were to build another CMS, here's a couple of things I would/wouldn't do.

1) Don't rely 100% of Xsl to create your content - that looked like a reasonable bet in 2001, and I was wrong.

2) Don't try to write your own Javascript/Flash rich edit control - too many good ones out there already

3) Do create a CMS which does something unique - personally I'd love a CMS that would allow me to create comics strips - go for a niche

4) Do work out a good server/DB design early on.

5) Do just do it...

like image 26
MrTelly Avatar answered Oct 12 '22 22:10

MrTelly