About this website

This website was built using Laravel 7 and Bootstrap 4 for the presentation in about 10 hours (which includes a simple CMS backend), without any prior knowledge about this framework.

Having gained most of my knowledge using CodeIgniter 3, starting to use Laravel was somewhat different. Everything is "in the wrong place" when comparing to CI, so there was a bit of trial and error finding the files I needed. Then in some ocassions I found myself writing queries CI3 style, which of couse won't work in Laravel.

Once those initial hurdles were overcomed, the biggest advantage is, so far, the Eloquent model. It is without a doubt a time saver, and once I started getting into the framework I saw my productivity increase.

The backend has the ability to create a website structure of unlimited depth. It checks in the frontend if the whole path leading to the requested page is published / not deleted before serving it, otherwise throws a 404.

To manage the content, the user adds content blocks (at the moment there are 4 different ones: text, image, text + image and text + video). They can also be moved around to adjust the ordering using drag & drop.

In terms of layout there's a single one: one column. Going forward and as I use this project to improve my Laravel knowledge and skills, that will be the next feature I will be implementing.

Another feature that I want to implement is the ability to say that one section and its children should behave as a single page. This will allow for a page with multiple layouts.

And even the block management needs a second pass, in how data is saved. At the moment the user has to click the 'Save' button or information is lost. This is something that can be improved.

There are a few things I want to update before concluing this first phase of the CMS, namely some code repetition in generating the content blocks - while it works, it doesn’t quite look nice yet and would need a little bit more tweaking.

Source code is also available on GitHub. Feel free to peruse through the code.

This website was built using Laravel 7 and Bootstrap 4 for the presentation in about 10 hours (which includes a simple CMS backend), without any prior knowledge about this framework.

The video illustrates the usage of the back end.

You can also access the back end here. Login is demo@demo.com and password is demoqwerty

Live pages cannot be updated and changing page order is disabled. However unpublished pages can be created, edited and saved (but cannot be published). You can also download the source from GitHub and run on your local environment.