Synopsis: Content Management System cum MVC Framework

CONTENT MANAGEMENT SYSTEM cum MVC FRAMEWORK

Introduction

Businesses develop websites (in-house or by outsourcing) to keep up with the I.T. trend. And obviously, the requirements for all such websites coincide with eachother. They need a specific number of pages, galleries. slideshows, a blog etc. And exceptionaly some might need extra few features. So one of the most preferred solution used by developers in such scenarios is the use of some popular CMS, such as WordPress, Joomla etc. All of these frameworks have a huge codebase and adding new features or themes to the same is, altogether a new book to study and a new programming language to learn, for a developer.

In case of advanced development, using a developmental framework to ease & empower better & efficient development is the first choice of all developers. In the meantime, junior developers are made to develop websites, that are fairly developed using various Content Management Systems.

Problem

Developing a web-application in a Content Management System is very easy as everything is available at the point of a single click, however, code-level customisations become difficult. Creating new templates (themes) for a given CMS is a bit complicated, as the developer has to follow the syntax & paradigm as set by the CMS. Creating new modules (in order to add features) is again a cumbersome task, due to the same problem as with templates. Customisations, on the other hand, are fairly easy in a framework, but the developer has to understand the framework well and then develop the features to manage the content from scratch. Furthermore, considering the current scenario, the codebase of nearly all of the available frameworks is so huge that the developer is left with no other solution than to accept the framework as it is and study the API provided by the same. Furthermore, being huge in size, features irrelevant to a given project reside in such frameworks, thus leading to wastage of associated resources on servers.

Proposed Solution

A concise MVC (Model-View-Controller) based framework, which provides a Content Management System out of the box. The proposed framework is meant to be as concise as possible, so that a developer having working knowledge of a given programming language can alter & improvise the framework as per the associated requirements. Creating a new theme should be as easy as creating a new ‘view’.

Features

  • Model – View – Controller (MVC) Architecture for development.
  • Content Management System:
    • User Authentication & Authorisation:
      • User Registration & Login
      • User Management
      • Roles & Permissions
    • Pages: Create, Edit, Delete, View, Index.
    • Blogs: Create, Edit, Delete, View, Index.
    • Menus: Create, Edit, Delete, View, Index.
    • Category: Create, Edit, Delete, View, Index.
    • Gallery: Create, Edit, Delete, View, Index, Assign to Page.
  • Templating Engine to create views.

Benefits
MVC Architecture: Currently the most popular paradigm of developing enterprise application. In our framework, it’ll help to empower the developer with basic tools to learn & start developing in that shift, so as to make it easier for him/her while understanding a bigger MVC framework.

CMS: Keeping the tasks closer to the ground, we provide the most common features of a CMS inbuilt, with added features.

Templating Engine: Creating a new template or adapting some other theme for our project should be the task of ease & simplicity. A templating engine will enable the developer to convert the variables & methods available in core to be used in views, thus making it easier to develop new templates for the system.

Prospect Audience

Junior / Senior Web Developers, developing websites for small to medium sized firms / organisations.