I have been trying to get critical to work on my Mac but kept getting the following error when my webpack configuration hit the point where it was trying to configure the Critical CSS.
Error: Chromium revision is not downloaded. Run "npm install" or "yarn install" at Launcher.launch (/Users/john/Sites/craft-w-webpack/node_modules/puppeteer/lib/Launcher.js:119:15) I tried fixing this by following the instructions,
npm install, but the error continued to happen. The path to getting this fixed had… + read on
Whenever I update to new versions of PHP in my local installation, I need to reinstall Imagick. Since I look up these steps every time, I’m documenting them here so future me can remember this. ## Is Imagick really not installed? First you might have it installed on your machine. Does this return a version number?
convert -version If so, you have it installed but it might not be wired up for… + read on
In one terminal window I did this:
echo $(brew --prefix MariaDB) That gave me the path to my MariaDB of:
/usr/local/opt/mariadb Then I ran this in that same window:
/usr/local/opt/mariadb/mysqld_safe That started MariaDB successfully. Then I opened a 2nd terminal window.
sudo $(brew --prefix mariadb)/bin/mysqladmin -u root password I followed the prompts to reset the password to ”, i.e. blank. Then I killed the MariaDB current running by… + read on
I’ve had a Synology for many years, and the interface has changed over time, obscuring useful information for installed apps. One of my favorite apps to run on it is Plex. In the Synology interface, it used to be easy to open Plex. The URL was shown in the “Package Center” when looking up the app. Below is a screenshot of how the interface used to look. This is not a screenshot I created… + read on
I’ve used Laravel Forge for quite a while in my workflow. It’s a convenient way to set up servers, quickly add security certificates, and deploy sites. I’ve got a number of my own sites and client sites using it and I’ve been very pleased with it. ## The Laravel Forge deployment process The piece of the process I’ve been thinking about recently is the deployment method I’m using in Forge. The deployment method built… + read on
I write and maintain a Yeoman generator called “Build A Banner”, aka BAB. As you might guess from the title, the generator helps in developing animated display ad banners. It creates a directory with customized HTML, JS and CSS starter files, builds a small development server with live-reloading, and has workflows for optimizing and delivering banners… + read on
I was recently updating my site and decided to use Michael Rog’s Wordsmith plugin for some text manipulation. His Wordsmith plugin included some features that I liked that my own custom plugin, a simple port of Hacksaw, didn’t include. I had created this plugin when Craft 3 was early in development, a time when there were many fewer plugins available and no plugin store at all. Installing plugins through Craft 3’s Plugin Store makes… + read on
If you use the command line and you’re lazy, this is for you. I’ve picked up a lot of tips in customzing my command line over the course of many years. Most of them I abandon after the “new” wears off, but a few stick around. Specifically, I have some aliases that I find useful enough that they’re part of the set up process when I get a new Mac. (Yes, these are Mac… + read on
Like many of my posts here, this is another note to myself to help me when I have questions about getting things done. I recently finished Pic Puller for Craft 3, available in finer Craft 3 plugin stores everywhere. But the point of this post is how it actually got there. The conversion of the plugin from its Craft 2‑compatible version to Craft 3 was the first step of the process. Andrew Welch’s Pluginfactory.io… + read on
When I have a new project that requires some Amazon S3 storage, I try to do the “right thing” for security by creating a new user and a new bucket entirely. I don’t want to share any credentials across projects. That means after I have created my S3 bucket I neeed to assign a user with the appropriate permissions. For me, that typically means I want this new user to have full access to… + read on