How much custom CSS do you use when theming in Drupal? The answer for most people is A LOT. And as the website/app evolves, there is leftover CSS that doesn't apply to anything. Plus, any newcomer to your app is inundated with 1,000-10,000+ lines of CSS. Very hard to maintain.
Learn more in my video or continue reading.
Here are the top reasons why Uikit is the best Drupal theme.
- The Uikit framework provides virtually all of the building blocks/components of a website
- The Uikit framework is very lightweight
- The Uikit Drupal theme strongly integrates with the Uikit framework
- It has a subtheme generator
- It is actively maintained
- There are very few bugs
The Makeup of the Best Drupal Theme
The keys to selecting the best Drupal theme are as follows (in no specific order):
- Maintainability - As time goes on, you don't want to pull out your hair. An investment in maintainability reduces future time commitment.
- Scalability - You're trying to grow, right? Ensure your Drupal theme can grow with you.
- Flexibility/Capability - Projects evolve in unpredictable ways. Can your Drupal theme respond to those changes?
- Performance - Speed is the #4 most critical ranking factor. Don't piss off your visitors (or Google).
The Best Drupal Theme is Highly Maintainable
Uikit is a breeze to maintain, which is primarily due to the power of built in HTML classes.
It's been a long and ongoing discussion in front-end web development on the proper balance between HTML and CSS. Some will say design belongs in CSS so don't clutter your HTML with a bunch of classes (e.g., ".margin-right").
If you go down the CSS route, there are design paradigms such as BEM (block, element, modifier) and many more.
I've done them all.
The most maintainable it gets is using a front-end framework and HTML classes that translate to one-off styles (such as margin or padding).
I now stay away from setting a custom class on the container (e.g., "my-project-banner") and attaching CSS to is such as "padding: 50px;".
I'd much rather attach "uk-padding" class to the container and write no CSS.
As my app evolves, I'll remove HTML sections, and there will be no leftover CSS. That's a huge benefit.
Maintainability at its finest.
The Best Drupal Theme is Scalable
With every new section you develop, do you want to be adding a bunch of the corresponding CSS to design out that section? This is especially mundane when you're repeating a lot of the same CSS, like padding or margin.
Uikit framework has almost 100% of the classes you need to design out your sections - no need to repeat yourself.
The time savings significantly add up. Not having to leave your HTML and write CSS will help you scale.
The Best Drupal Theme is Capable
One of the primary reasons I say Uikit theme is the best Drupal theme is how capable it is. Take a look at the documentation. If you use this theme, you'll spend a lot of time there. Specifically, look at all of the premade components and classes on the left column.
I built my Drupal app with thousands of pages, multiple content types, taxonomy terms, users, and custom one-off pages. Through this all, I used less than 200 lines of CSS which is including my comments and linebreaks.
The app has many unique designs and is not cookie cutter or basic by any means.
And the best part? All of this is very lightweight.
The Best Drupal Theme is Performant
The Uikit Drupal theme is nicely integrated with the Uikit framework. It doesn't add much besides what is necessary to integrate the two systems.
Uikit is very lightweight.
My pages load under a second and pass all of Google's PageSpeed metrics such as LCP and CLS.
One of the features that helped get me there is Uikit's image lazy loader. It's super easy to use, lightweight, and effective.
You Won't Be Disappointed
The Uikit theme is hands down the best Drupal theme. Try it. You'll save time, scale, and achieve superior results.