Outstanding work list

Development documentation

Intro

Tech stacks

The current site built using Wordpress (MySQL, PHP, Wordpress and WordPress plugins). It relies on non-trivial javascript routines in addtion to dynamic generation of server side pages.

The new prototype is a statically generated site built using Astro.build with Tailwind.css library for style and layouts.

The current website uses Wordpress and is hosted by a small ISP. It is slow and despite best efforts has a large amount of historic source code and image bloat.

To give the size and speed some numbers:

Chrome Dev Tools Lighthouse - mobile with no network throttling:

Lighthouse report current WordPress site
Wordpress - mobile device user



Lighthouse report current WordPress site
Astro static site - mobile device user

Network calls

Lighthouse report current WordPress site
Wordpress - mobile device user
Lighthouse report current WordPress site
Astro static - mobile device user
Note the above screen shot is after adding meta tags for SEO and adding Microsoft Clarity web analytics code.



Source size existing Wordpress versus Astro

MeasureWordpressNew Astro Static Site
Content source directory size1,060 MB14 MB
Files count10,790328

Summary

Revised Astro based static site is far smaller, faster and uses a fraction of the number of network calls the existing site needs. The new site is consistently faster : 1,100-1,500 millisecond load time versus 4,500-7,500 millsecond load time for the existing Wordpress site

Downsides of Astro

  1. New(ish) whereas Wordpress is mature and well understood product
  2. Lots of support experience readily available for Wordpress
  3. Wordpress has good editors and other content creation tools available

Positives for Astro

  1. Astro is vanilla HTML and CSS - understood by all web developers
  2. Most of the Museum’s web pages are static and well suited to generation
  3. Support for Mardown authored pages

All source is hosted on GitHub with automatic builds/deployment to Cloudflare. This means everything backed up automatically and changes propogated worldwide within minutes of publishing to GitHub

Analytics

Need to know number of visitors and which pages are visited. For protype testing Microsoft Clarity implemented (rather than Google Analytics). Cannot detect any change in page load times. Still fast & responsive. Sample screen shot:

Microsoft Clarity Analytics dashboard
Microsoft Clarity Analytics dashboard - right click image and 'open image in new tab' to see detail