Lighthouse – WordPress Performance Plugin3.5.4
SpeedFactor is now part of Lighthouse!

Track your website performance over time and keep track of how it’s doing and get tips on what to improve — no coding required.
Unlimited automated page speed monitoring & tracking.

🔥 Featured

🚀 Quick Links

Featured JavaScript Articles

Canvas JS: Big Ball of Particles

For a while now, I had this animated, constantly exploding ball of particles on my Remake Web Design website. Built using JavaScript and Canvas, it was a nice addition (read eye-candy) to…

JavaScript Drag & Drop

Here’s a nice list of plain JavaScript dragging and dropping solutions. They are minimal, as they serve as proof of concept, and they can be easily extended. Solution #1: JavaScript Card Sorting…

JavaScript Character Counter for Text Areas

A while ago, I had to implement a character counter for a business listing directory. The description field was supposed to hold about 400 characters. More than that would look like spam.…

Carbon: Basic Syntax Highlighting with Zero Overhead Using JavaScript

If you have ever used PrismJS or CodeMirror or any other syntax highlighter solution, you’ll know it adds lots of dependencies bases on what language support you need. If you need HTML,…

How I Created My Homepage JavaScript Post Carousel

My homepage now features a JavaScript section of 4 featured posts. Notice the official JavaScript yellow colour ? Here’s how I did it. Note that this is mostly a WordPress feature, so…

? How to Expire localStorage Items and Replace Cookies

I don’t use ? cookies anymore, I think they are too… rigid. I use localStorage items. By default, they don’t expire and they are saved as a key/value pair. Here’s how to…

tail.select takeover and update

I have been using the tail.select library on 200+ WordPress websites for more than 2 years. That number is growing, as the product is a WordPress plugin for real estate agents. It’s…

tail.select

HTML Select Fields as beautiful as never before tail.select is back: Create beautiful, functional and extensive (Multi) Select Fields with pure, vanilla JavaScript. Version 0.5.21, Vanilla JS, Plain JS, ES6, Modern Browsers,…

How I added a neat effect in 30 lines using IntersectionObserver

This is something I’ve always wanted to add to my theme, but I was afraid of the impact on the Core Web Vitals. As you scroll down, specific elements fade and slide…

How to Get and Set Query Parameters From URL

Here’s two ways to get (and set) query parameters from URL. I’ll add some real life examples in order to understand their usage. Method #1 The URLSearchParams interface defines utility methods to work with…

️‍Featured Plugin

Active Analytics WordPress Plugin

Active Analytics (WordPress 5+, PHP 7+, Automatic Updates)

WordPress Plugin

€29,99 €19,99

More Free & Premium WordPress Plugins

Professional, high-quality plugins for WordPress, WooCommerce, Analytics, Site Speed and more. Page speed optimization plugins, SEO plugins, image gallery plugins, eCards, Lighthouse and more.

Popular Articles

Ciprian on Thursday, October 7, 2021 — 102 Views

How to create a Jetpack Site Stats Aggregator

I believe that Jetpack Site Stats doesn’t need an introduction anymore. It provides basic but good insights on your website…

Ciprian on Thursday, October 7, 2021 — 65 Views

Lighthouse Update and What’s Next

It’s been a while since the latest Lighthouse update, and this time we had to release another version due to…

Ciprian on Wednesday, October 6, 2021 — 108 Views

Canvas JS: Big Ball of Particles

For a while now, I had this animated, constantly exploding ball of particles on my Remake Web Design website. Built…

Ciprian on Monday, October 4, 2021 — 117 Views

How to Add a Block Pattern to a WordPress Theme

Here is a hands-on code snippet on how to add a block pattern (or more) to a WordPress theme. The…

Ciprian on Friday, June 4, 2021 — 1,032 Views

Using Resource Hints to Optimize WordPress Performance

Resource hints provide a way to optimize the performance of your web page on the client side. As the name…

Ciprian on Thursday, May 20, 2021 — 1,424 Views

CSS Rounded Corners Gradient Border

I had a visually heavy project recently and I had to create a gradient border for certain elements. In my…

Ciprian on Thursday, May 20, 2021 — 1,244 Views

JavaScript Drag & Drop

Here’s a nice list of plain JavaScript dragging and dropping solutions. They are minimal, as they serve as proof of…

Ciprian on Wednesday, May 19, 2021 — 1,304 Views

“Times New Roman” Enhanced CSS Font Stack

“Times New Roman” as a Classic Web Font Option With Historical Ligatures A ligature is a special character that combines…

Ciprian on Wednesday, May 19, 2021 — 1,859 Views

How to Create Double Off-canvas Menus With CSS Only

This feature has been part of a website project for many year. The left side off-canvas menu was mobile only,…

Ciprian on Monday, May 17, 2021 — 964 Views

JavaScript Character Counter for Text Areas

A while ago, I had to implement a character counter for a business listing directory. The description field was supposed…

Ciprian on Saturday, May 15, 2021 — 1,186 Views

The Ultimate YouTube Video Embed Setup

I’m sure you’ve seen this hundreds of times and there’s countless methods of embedding a YouTube video with the least…

Ciprian on Friday, May 14, 2021 — 1,096 Views

WordPress External Featured Image via cURL

Here’s the long title for this code snippet — How to set up an external image as a WordPress featured…

Ciprian on Thursday, May 13, 2021 — 1,028 Views

Start an Ecommerce Store in 2021 Guide

If you have ever considered opening an eCommerce store, now is a great time to take action. In 2020, shoppers…

Ciprian on Tuesday, May 11, 2021 — 1,048 Views

Carbon: Basic Syntax Highlighting with Zero Overhead Using JavaScript

If you have ever used PrismJS or CodeMirror or any other syntax highlighter solution, you’ll know it adds lots of…

Ciprian on Monday, May 10, 2021 — 1,743 Views

Gravity Forms Repeater Plugin

If there is one feature missing from Gravity Forms, that is a field repeater section. A way to set a…

Ciprian on Monday, May 10, 2021 — 847 Views

SpeedFactor Update: Less is More

The past few weeks have brought some long awaited updates to SpeedFactor. As I am focusing on tracking speed, some…

Ciprian on Tuesday, April 27, 2021 — 1,218 Views

How to Create a Fixed Teaser Block in WordPress

This tutorial will show you how to create a collapsible fixed popup. It can contain subscriptions forms, contact forms, calls…

Ciprian on Tuesday, April 27, 2021 — 1,009 Views

How I Created My Homepage JavaScript Post Carousel

My homepage now features a JavaScript section of 4 featured posts. Notice the official JavaScript yellow colour ? Here’s how…

Ciprian on Monday, April 26, 2021 — 1,199 Views

? How to Expire localStorage Items and Replace Cookies

I don’t use ? cookies anymore, I think they are too… rigid. I use localStorage items. By default, they don’t…

Ciprian on Monday, April 26, 2021 — 1,496 Views

How to Create Smaller Buttons for the Block Editor (Gutenberg)

One of the shortcomings of the WordPress default button blocks is the size variation. There is none. Sometimes the buttons…

Ciprian on Wednesday, April 21, 2021 — 1,083 Views

WordPress or Amazon? The Hard Choice for Beginner Sellers

When you are starting your own eCommerce business, there are many choices to make, and each one can determine your…

Ciprian on Tuesday, April 20, 2021 — 1,029 Views

Web Insights – Your JS/CSS/UI/UX Digest #18

Our regular Web Insights are back!This is where we summarize last week’s (or last month’s) useful resources for web developers.…

Ciprian on Tuesday, April 20, 2021 — 805 Views

How to Improve Your Mobile Core Web Vitals: Quick Tip

Do you really need those fancy fonts on mobile devices? No? There’s your answer! This applies to any WordPress theme,…

Ciprian on Monday, April 19, 2021 — 1,030 Views

On/Off Toggle Replacement for WordPress Checkboxes

When it comes to WordPress settings and admin panels, I’ve always been a fan of minimalism and default/native styling. I…

Privacy Policy