Mugo Web main content.
Illustration of a cycle of code and notifications. At bottom, a block of code beside a cloud with a smily face has an arrow leading up to a computer with an envelope notification, followed by a cell phone with a text notification, leading back to the code block.

Managing automated email and text messaging with AWS SES and SNS

Building a website often comes down to choosing between “best–of-breed” services and cost-effective solutions that meet your business needs while being relatively easy to manage. Here we explore AWS services for automated text messaging and email, and compare them with other 3rd party options in the context of work done for GoLibrary. 

LEARN MORE
Universal library sign of a figure reading a book beside an accessibility sign

Looming ADA requirements mean it’s time for public libraries in the US to get serious about digital accessibility

Newly revised rules from the ADA regarding digital accessibility mean libraries in the United States have until April 26th, 2026, to ensure they are conforming to WCAG 2.1 AA standards. What does this entail, and how can a library system start making content more accessible?  

LEARN MORE
Mobile view of the Chinook Arch website, with the catalogue search highlighted

Making keyboard navigation more accessible with JavaScript ‘focus traps’

Tabbing through a web page can be a frustrating experience. The user tabs to access a menu, but with the keyboard's next tap, they’ve moved on to another page element and have to retrace their steps to access the desired content.

For users who rely on keyboard navigation, this can be a major accessibility roadblock. And for other site visitors, it’s just poor UX.

Fortunately, you can implement a fairly straightforward function in JavaScript called a “focus trap” to ensure users don’t leave the page area they’re in without intending to do so.

LEARN MORE
a gear labeled CMS surrounded by an array of cleaning tools

Cleaning up unused CSS and JS files from WordPress pages

WordPress can be a great option for easy website development, but because of the rapid evolution of the CMS, it can lead to inefficient code and slow loading pages. We'll show you how to clean up unused CSS and JS from pages to improve site-wide performance. 

LEARN MORE
illustration of a reCAPTCHA screen, withe question marks in place of text, and robots obscuring the photos for identification.

Making Google reCAPTCHA v2 play nice with browser form validation

CAPTCHA is an essential need on online forms, but to be blunt, the UX sucks. Without the implementation tips (helpfully detailed below), Google’s otherwise reliable reCAPTCHA service implemented “as-is” doesn’t actually provide any browser validation. The user will have to wait for it to make a time-consuming round trip to the server. It’s a problem for anyone and becomes compounded for users with accessibility needs.

LEARN MORE
a woman in a wheelchair using a computer superimposed over different digital windows

Creating accessible links to help users discover your site’s content treasures

Links are among a website's most valuable components. They connect (that’s what the word “link” means, after all) different pages and resources, helping site visitors find the content they are looking for. Well-planned and formatted links are like a detailed, intuitive treasure map that sends visitors to the right destination.

Links are also critical for making your website accessible to visitors with visual or other impairments. A link that lacks important information can prevent some visitors from accessing all the treasures a website holds. Or even worse, it can send users to completely undesirable content and discourage them from exploring all your site has to offer.

In this post, I’ll discuss how to present links in various contexts, clearly explaining how they can create and inform powerful relationships between different pages and assets.

LEARN MORE
Stylized representation of a server connected to the web, beside an overflowing piggy bank

AWS EC2 is cost-effective – with a little planning and smart management

Amazon Web Services (AWS) EC2 has the reputation of being a pricey option for cloud-based hosting and compute resources. Certainly, that was our initial impression here at Mugo Web years ago when we began standardizing our hosting and site management business on a single cloud platform.

However, we quickly discovered that AWS is actually quite affordable. In fact, our monthly costs for a virtual machine using 8GB of RAM, at 100% usage, is predictably lower with AWS than with other virtualized or traditional data centers. That’s without aggressively tuning our resource usage, which is often the focus of how to optimize AWS pricing.

In this post, I’ll show you how AWS can be a cost-effective option for professionally managed websites. I’ll also take a quick look at some of the additional savings tactics you can employ to get more value from your decision to run on AWS.

LEARN MORE
a gold key inside a gear, surrounded by circuitry

Convenience + security: best practices for AWS access key management

In this blog post I am going to talk about several security best practices, particularly for configuring AWS Access Keys. Some of these practices are based on a project that we inherited which was compromised by hackers. Best practices are often learned from mistakes; and when the mistakes are someone else's, so much the better!

LEARN MORE