MAIS AMOR POR FAVOR

New Rodney Lab Site Live

New Rodney Lab Website is now Live

New Rodney Lab Site Live

SHARE:

✨ Introducing the new Rodney Lab Site

The new Rodney Lab site is now live. It is built around the three core user experience (UX) needs of being accessible, fast and secure. Starting out with those needs in mind, the Gatsby Static Site generator seemed a solid choice. Principally known for creating lightning fast websites, Gatsby also helps build in accessibility . As an example it can handle page announcements by default β€” no doubt much appreciated by users using screen readers to access the site. The site scores exceedingly well by industry-standard tests for accessibility, speed and security.
Some results are shown further down the page. Gatsby offers GraphQL support which makes adding Search Engine Optimisation (SEO) to the site a breeze. Traditional meta-data as well as modern JSON-LD allowing rich Google search results for the site are included. SEO, security, speed and accessibility all help create a great User Experience, which, at the end of the day is the most important metric of all. In the next paragraphs we take a look in a little more detail at the site features.

πŸ€— Accessibility features

Accessibility is a priority for us. We include a number of features from keyboard navigation using semantic HTML in the site code to help users browsing the site with a screen reader. Other coded-in features include all non-decorative images having alt attributes so screen readers can announce the image (this is also best-practise for pure SEO reasons). The site design is also optimised for the visually impaired, with large button and colour contrast ratio of 4.5:1 or higher on all elements so all parts of the site can be read by people with moderately low vision.

You can see a live report of the Rodney Label new site on the Web Accessibility Evaluation site .

New Rodney Lab Site: Rodney Lab new site accessibility evaluation results
Screenshot: Rodney Lab new site accessibility evaluation results

πŸ”₯ Site Speed

Waiting for a site to load can be quite annoying. On top you quickly lose visitors when your page loads slowly. Google's own research shows that the probability of a bounce (the percentage of site visitors leaving the website without staying to explore the content) increases 32% as page load time goes from one second to three seconds. On top a slow site affects SEO. Google needs to 'crawl' your site β€” visit it with a robot which follows links on your pages adding new content to the Google index. A slow loading page affects the number of pages on your site the bot is able to explore in a fixed time window. Clearly all of these factors will impact search result performance, fundamentally because they impact on user experience. All Google really want to do it get the right information in front of its users as quickly as possible, in other words provide them with a great user experience.

With speed being second on our list of must-haves, we decided to go for a statically hosted website. Statically hosted websites load quicker but are suited to applications (like this one) where there is no constant feed of real-time updates. For example a static site would not be first choice for an Instagram-like site where users are constantly adding content and interacting with it.

Statically hosted sites are faster, out-of-the-box. Gatsby has a few tricks up its sleeve to improve speed. As an example resources from other pages are prefetched so you getter a quicker response each time you click. Images can also be optimised using the brand new image API. This has inbuilt features like lazy loading and placeholder images. Lazy loading means the images on the fraction of the page you are currently looking at load initially. This means you see the images that matter quicker. This can have a massive impact on user experience for an image-heavy site. Placeholder show a low quality image while the full quality image loads, allowing users on a slower connection to interact with the page quicker.

Just how fast is the new Rodney Lab site? There are a number of benchmarking tools for speed. They offer varying results. Lighthouse is a common one it is also quite strict, for example at the time of writing a test on amazon.com returned a 78 for performance. Currently the site scores 99 for Performance, 100 for Accessibility, 100 for Best Practices and 100 for SEO. The tool is constantly evolving so this might change the relative weighting of factors changes.

New Rodney Lab Site: Rodney Lab site Lighthouse results
Screenshot: Rodney Lab site Lighthouse Results

πŸ” Security features

We host the site on the Netlify CDN for speed and security reasons. Out of the box, Netlify hosted Gatsby sites include HTTP headers to improve security. On top we have added additional headers to reduce the attack surface for bad actors, guarding against cross-site scripting (XSS) attacks . Although many sites implement CSP, it takes a lot of effort to do it well. Many sites include the 'unsafe-inline' directive which works against many of the security benefits CSP provides. Our site's high A+ score on security reflects our investment in designing safe CSP for the site.

TestResult
Mozilla Observatory A+
observatory.mozilla.org
Qualsys SSL Labs A+
ssllabs.com
SecurityHeaders.com A+
securityheaders.com

Intrinsically statically hosted sites are more secure as users hit a CDN rather than a live server.

In terms of privacy, the site also scores well. See our results from The Markup's Blacklight Privacy Inspector .

πŸ€– SEO features

Good user experience is essential for SEO. An example of the SEO and UX prioritised design of the website is the in-built blog search feature. Rather than rely on an external provider for search, which can reduce performance, we are able to offer search, keeping the site static using the js-search client-side search library . This is a lightweight implementation of Lunr JS and provides fast site search. To improve UX we added a couple of features. Firstly search results use stemming. This just means if you search for "provide", results with the words "provider" and "provides" are also returned. That's not all though. To further improve UX, when you open a search result, the window automatically scrolls to show the first search result and all search results in the text re highlighted. This is saves you having to scroll though the text manually to find what you need.

New Rodney Lab Site: Rodney Lab new site UX optimised search results
Screenshot: Rodney Lab new site UX optimised search results

πŸ™πŸ½ Feedback

The page will be open-sourced soon onto the Rodney Lab Git Hub page . In the meantime, keen to hear your thoughts on the site design and features. You can get in touch via @askRodney on Twitter and also askRodney on Telegram . Alternatively, see further ways to get in touch with Rodney Lab. If you have found this post useful and can afford even a small contribution, please consider supporting me through Buy me a Coffee.

We post regularly on accessible Gatsby website development as well as OpenBSD-centric content. Also subscribe to the newsletter to keep up-to-date with our latest projects.

Thanks for reading this post. I hope you found it valuable. Please get in touch with your feedback and suggestions for posts you would like to see. Read more about me…

Rodney from Rodney Lab

Leave a comment …

Your information will be handled in line with our Privacy Policy.