Rebuilding DarrylNorris.com Using Drupal 8

Feb 9, 2016 · 741 words · 4 minute read php development theming

I have been experimenting with Drupal 8 for about a year and half trying to be ready to use it in my projects. Currently Drupal 8 is interesting stage where some Drupal 7 project have been doing a straight port, some of them are been re-architecture and some project have die. For this reason I have decide to try it out some of those new contrib projects with Drupal 8 version on a production site www.darryl.ai.

There few things that I took consider before I started working on rebuilding my website. I wanted to have my website with a decent front page load time under 2 seconds. I did not wanted to do a migration because my website is very small so I thought it will be better to rebuild the entire website instead of migrating. Also, I wanted to make it into a blog, because my previous website I had lot other things plan for the website and I never did; as results, I ended up with some a lot unnecessary contrib modules. Finally, my website should SEO friendly.

What theme ? Casper Before I even started the process of porting my website I decide to build a theme that looks the same as the Ghost Default theme Casper but for Drupal 8. Because this theme is very good looking, lightweight and it was build for a blog, which meet all my requirements for my website.

List of contrib modules that I use:

Bigpipe is a new module only available in Drupal 8 that help improve your website performance. Sends pages in a way that allows browsers to show them much faster. First sends the cacheable parts of the page, then the dynamic/uncacheable parts.

Composer Manager this module is kinda popular; however, I think this project is going to take a huge role now that Drupal is moving to the composer world. This module is going be talking the role of Libraries API but for PHP libraries. I think the most important feature is that allows you to combine your contrib composer.json with your root composer.json, which very neat to handle dependency from the root level instead of on every single contrib project.

Contact Storage is a module that allows you to store data from the contact module in Drupal 8.

Form Placeholder is a module for site builder it allows you to replace your label with HTML placeholder.

Google Analytics is a module that allows you to connected Drupal website with Google Analytics. It seem to be working as well as the Drupal 7 version.

Honeypot is one of the first Drupal 8 module to be ready for Drupal 8 stable releases. Honeypot is a very mature project been around since 2011 and it have a Drupal 7 version. This module helps to prevent spam.

Metatag is a module that allows you to to add and configure metatag in Drupal 8. This project seem to be working the same as in Drupal 7.

Pathauto, one of the most important Drupal modules and in my opinion a module that should be part of Drupal core. This module allows you to generate URL programmatically with aliases.

Redirect ships now with Global Redirect module, which was the main reason why I add this project into my website. However, Redirect module allows you add redirect inside of your Drupal website.

Smart Trim is a very basic module that allows you to trim in a more intelligent way that Drupal core does it. I mainly use it for trip my views content.

I did not include the dependency modules like ctools and token but they seem to be working fine.

My final thoughts on rebuilding a darryl.ai using Drupal 8

For site-builders building a very complex website with Drupal 8 might not be the best option. If you are building a basic website Drupal 8 might be ready for you. However, if you are developer that are willing to take some of risk and contribute back to the community by improving the project, I think Drupal 8 its be ready for you in most use case. I was able to have a blog-like website that is running using Drupal 8, without a lot effort. I have been having a lot fun writing Casper as well as doing site building with Drupal 8. Soon, I will try to do a stable release of Casper so other people can take advantage of this sexy looking theme.