Files
ProfessionalWebsite/Export/projects.html
Alexander Davis 33fd3595ea
All checks were successful
Publish to Server / Deploy (push) Successful in 52s
Export of whole site.
Signed-off-by: Alexander Davis <alex@adcm.uk>
2025-12-14 13:12:06 +00:00

901 lines
81 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html data-bs-theme="auto" lang="en-gb">
<head>
<meta charset="utf-8">
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="//analytics.adcmnetworks.co.uk/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '1']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Matomo Code -->
<script src="https://kit.fontawesome.com/8970d94f9b.js" crossorigin="anonymous"></script>
<meta name="fediverse:creator" content="@MrDavisCSIT@mstdn.social">
<script src="https://cms.tahdah.me/scripts/publicbadge.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
<title>Projects</title>
<link rel="canonical" href="https://www.mrlyall.uk/projects.html">
<meta property="og:url" content="https://www.mrlyall.uk/projects.html">
<meta name="twitter:description" content="The website of Mr. A. Lyall, featuring a portfolio of work in computing education, digital projects, and curriculum resources. Explore blog posts, classroom tools, and professional insights focused on innovation, inclusion, and effective IT teaching.">
<meta name="twitter:card" content="summary">
<meta property="og:type" content="website">
<meta name="twitter:title" content="Mr Lyall">
<meta property="og:image" content="https://www.mrlyall.uk/assets/img/brand/headshot.webp">
<meta name="description" content="A collection of projects spanning computing education, web development, and media production. Each project highlights innovative approaches to digital learning, creative problem-solving, and the use of technology in educational and professional contexts.">
<script>
(function() {
// JavaScript snippet handling Dark/Light mode switching
const getStoredTheme = () => localStorage.getItem('theme');
const setStoredTheme = theme => localStorage.setItem('theme', theme);
const forcedTheme = document.documentElement.getAttribute('data-bss-forced-theme');
const getPreferredTheme = () => {
if (forcedTheme) return forcedTheme;
const storedTheme = getStoredTheme();
if (storedTheme) {
return storedTheme;
}
const pageTheme = document.documentElement.getAttribute('data-bs-theme');
if (pageTheme) {
return pageTheme;
}
return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
}
const setTheme = theme => {
if (theme === 'auto' && window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.documentElement.setAttribute('data-bs-theme', 'dark');
} else {
document.documentElement.setAttribute('data-bs-theme', theme);
}
}
setTheme(getPreferredTheme());
const showActiveTheme = (theme, focus = false) => {
const themeSwitchers = [].slice.call(document.querySelectorAll('.theme-switcher'));
if (!themeSwitchers.length) return;
document.querySelectorAll('[data-bs-theme-value]').forEach(element => {
element.classList.remove('active');
element.setAttribute('aria-pressed', 'false');
});
for (const themeSwitcher of themeSwitchers) {
const btnToActivate = themeSwitcher.querySelector('[data-bs-theme-value="' + theme + '"]');
if (btnToActivate) {
btnToActivate.classList.add('active');
btnToActivate.setAttribute('aria-pressed', 'true');
}
}
}
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', () => {
const storedTheme = getStoredTheme();
if (storedTheme !== 'light' && storedTheme !== 'dark') {
setTheme(getPreferredTheme());
}
});
window.addEventListener('DOMContentLoaded', () => {
showActiveTheme(getPreferredTheme());
document.querySelectorAll('[data-bs-theme-value]')
.forEach(toggle => {
toggle.addEventListener('click', (e) => {
e.preventDefault();
const theme = toggle.getAttribute('data-bs-theme-value');
setStoredTheme(theme);
setTheme(theme);
showActiveTheme(theme);
})
})
});
})();
</script>
<link rel="icon" type="image/png" sizes="4860x4860" href="assets/img/brand/adcm_logo_accent.webp?h=62dbf084286026c4b6de08d0203df501">
<link rel="icon" type="image/png" sizes="4860x4860" href="assets/img/brand/adcm_logo_white.webp?h=7cd31e9469bb0f9d3a4e704b3c0b1445" media="(prefers-color-scheme: dark)">
<link rel="icon" type="image/png" sizes="4860x4860" href="assets/img/brand/adcm_logo_accent.webp?h=62dbf084286026c4b6de08d0203df501">
<link rel="icon" type="image/png" sizes="4860x4860" href="assets/img/brand/adcm_logo_white.webp?h=7cd31e9469bb0f9d3a4e704b3c0b1445" media="(prefers-color-scheme: dark)">
<link rel="icon" type="image/png" sizes="4860x4860" href="assets/img/brand/adcm_logo_accent.webp?h=62dbf084286026c4b6de08d0203df501">
<link rel="icon" type="image/png" sizes="4860x4860" href="assets/img/brand/adcm_logo_accent.webp?h=62dbf084286026c4b6de08d0203df501">
<link rel="icon" type="image/png" sizes="4860x4860" href="assets/img/brand/adcm_logo_accent.webp?h=62dbf084286026c4b6de08d0203df501">
<link rel="stylesheet" href="assets/bootstrap/css/bootstrap.min.css?h=c9d969cca6f72ca8d4dfd457f2e8eff8">
<link rel="stylesheet" href="assets/css/Lato.css?h=4cf0101c9fb4e71821a619e3490ba3db">
<link rel="stylesheet" href="assets/css/bss-overrides.css?h=15b91a8988c8fc6448a8989802a159de">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css">
<link rel="stylesheet" href="assets/css/styles.css?h=7c67e1bb3df4cb41abaceaf312f03dfa">
<link rel="stylesheet" href="assets/css/pikaday.min.css?h=a9ab8ca627aa6e8f64b730ca9c2c781d">
<link rel="stylesheet" href="assets/css/CookieConsentComponent.css?h=39af3305e95f4d2a8883e97d7e0cdb14">
<link rel="stylesheet" href="assets/css/animations.compiled.css?h=49917e33fe831aa33e24fb1e8124fdd9">
<link rel="stylesheet" href="assets/css/Carousel---Slider-With-Animation.css?h=63f5768f05d2ae91446ac010bcd4844a">
</head>
<body>
<nav class="navbar navbar-expand-md fixed-top portfolio-navbar gradient navbar-dark">
<div class="container-fluid"><a class="navbar-brand logo" href="../../"><img alt="Stylised white microchip icon on a black background, designed as a modern tech-themed logo for ADCM" src="assets/img/brand/adcm_logo_white.webp?h=7cd31e9469bb0f9d3a4e704b3c0b1445" width="50" height="50" class="mobile-padding-left"></a><button data-bs-toggle="collapse" class="navbar-toggler" data-bs-target="#navbarNav" style="margin-right: 0.5em;"><span class="visually-hidden">Toggle navigation</span><span class="navbar-toggler-icon"></span></button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto">
<li class="nav-item mobile-padding-left"><a class="nav-link" href="../../">Home</a></li>
<li class="nav-item mobile-padding-left"><a class="nav-link" href="../../about">About</a></li>
<li class="nav-item mobile-padding-left"><a class="nav-link" href="../../projects">My Work</a></li>
<li class="nav-item mobile-padding-left"><a class="nav-link" href="../../my-work/showreel">Showreel</a></li>
<li class="nav-item mobile-padding-left"><a class="nav-link" href="../../blog">Blog</a></li>
</ul>
</div>
</div>
</nav>
<main class="page">
<section class="blog-block project portfolio-block">
<div class="container center-everything">
<!-- Start: portfolio heading -->
<div class="heading page-heading">
<h1>Projects</h1>
<ul class="nav nav-tabs d-flex justify-content-center" data-bss-type="tag-nav" data-bss-sync-url="true">
<li class="nav-item" data-bss-type="tag-loop-item" data-bss-href="" data-bss-filter="blog" data-bss-filter-param="tag" data-bss-filter-value="" data-bss-tag=""><a class="nav-link active" href="" data-bss-state-node="">All Projects</a></li>
<li class="nav-item" data-bss-type="tag-loop-item" data-bss-href="" data-bss-filter="blog" data-bss-filter-param="tag" data-bss-filter-value="web-design" data-bss-tag="web-design"><a class="nav-link" data-bss-state-node="">Web Design</a></li>
<li class="nav-item" data-bss-type="tag-loop-item" data-bss-href="" data-bss-filter="blog" data-bss-filter-param="tag" data-bss-filter-value="projects-for-education" data-bss-tag="projects-for-education"><a class="nav-link" href="" data-bss-state-node="">Projects for Education</a></li>
<li class="nav-item" data-bss-type="tag-loop-item" data-bss-href="" data-bss-filter="blog" data-bss-filter-param="tag" data-bss-filter-value="extracurricular-projects" data-bss-tag="extracurricular-projects"><a class="nav-link" href="" data-bss-state-node="">Extracurricular Projects</a></li>
</ul>
</div><!-- End: portfolio heading -->
<div data-bss-type="blog-loop" data-bss-filters="[&quot;tag&quot;]" data-bss-empty-filter-actions="[{&quot;filter&quot;:&quot;tag&quot;,&quot;value&quot;:&quot;show-all&quot;}]" data-bss-perpage="6" data-bss-page-param="pg" data-bss-scroll-on-change="true" style="display: none !important;">
<div class="row row-cols-1 row-cols-sm-2 row-cols-md-2 row-cols-lg-3" data-bss-type="blog-loop-base">
<div class="col post-tag-web-design loop-item" data-bss-type="blog-loop-item">
<div class="card"><a href="my-work/web-design/birmingham-city-university-christian-union.html"><img alt="Screenshot of the BCU Christian Union website homepage showing a group photo of students and the CU banner." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/web_design/bcucu/bcucupreview.webp?h=0c3a26febc398753c8c1cea6d046322f"></a>
<div class="card-body card-resize"><a href="my-work/web-design/birmingham-city-university-christian-union.html">
<h4 class="text-center text-body d-flex justify-content-center">Birmingham City University Christian Union</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-web-design" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Web Design</span></span></span></div>
<p class="text-start card-text excerpts">Responsive WordPress site for BCUCU with event listings, embeds, and admin access to update content.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/web-design/birmingham-city-university-christian-union.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-web-design loop-item" data-bss-type="blog-loop-item">
<div class="card"><a href="my-work/web-design/birmingham-city-university-discover.html"><img alt="Screenshot of the BCU Dis.Cover homepage showing a blue layout with event widgets and a large yellow and blue accessibility logo." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/web_design/bcu_dis.cover/bcudiscoverpreview.webp?h=a9c8f8deb4fac6c2b1e65e11c6dce8c5"></a>
<div class="card-body card-resize"><a href="my-work/web-design/birmingham-city-university-discover.html">
<h4 class="text-center text-body d-flex justify-content-center">Birmingham City University Dis.Cover</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-web-design" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Web Design</span></span></span></div>
<p class="text-start card-text excerpts">Responsive WordPress site for BCU Dis.Cover with events, admin panel, and Facebook plus Maps embeds.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/web-design/birmingham-city-university-discover.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-web-design loop-item" data-bss-type="blog-loop-item">
<div class="card"><a href="my-work/web-design/birmingham-city-university-mental-health-awareness.html"><img alt="Screenshot of the BCU Mental Health Awareness site homepage with a green mug and notebook background and white header text." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/web_design/bcumha/bcumhapreview.webp?h=59e6f298a7cf791663e3280b7638cc14"></a>
<div class="card-body card-resize"><a href="my-work/web-design/birmingham-city-university-mental-health-awareness.html">
<h4 class="text-center text-body d-flex justify-content-center">Birmingham City University Mental Health Awareness</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-web-design" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Web Design</span></span></span></div>
<p class="text-start card-text excerpts">Responsive WordPress site for BCU Mental Health Awareness with events, media, updates, and info hub.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/web-design/birmingham-city-university-mental-health-awareness.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-projects-for-education loop-item" data-bss-type="blog-loop-item">
<div class="card"><a href="my-work/projects-for-education/bitbox.html"><img alt="Square logo with the text &quot;Bit:Box&quot; and a pixelated lightbulb icon." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/for_education/bit_box/bit_box_logo.webp?h=36b5ef1a4c9f880d65df48518293999f"></a>
<div class="card-body card-resize"><a href="my-work/projects-for-education/bitbox.html">
<h4 class="text-center text-body d-flex justify-content-center">Bit:Box</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-projects-for-education" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Projects for Education</span></span></span></div>
<p class="text-start card-text excerpts">Educational device, app, and website using switches and lights to visually demonstrate binary logic.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/projects-for-education/bitbox.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-extracurricular-projects loop-item" data-bss-type="blog-loop-item">
<div class="card"><a href="my-work/extracurricular-projects/citation-needed.html"><img alt="Screenshot of login screen with fields for email and password." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/extracurricular/citation_needed/login_screen.webp?h=3626905284037118af731fe2573ac5f4"></a>
<div class="card-body card-resize"><a href="my-work/extracurricular-projects/citation-needed.html">
<h4 class="text-center text-body d-flex justify-content-center">Citation Needed</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-extracurricular-projects" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Extracurricular Projects</span></span></span></div>
<p class="text-start card-text excerpts">Creates BCU Harvard web citations; built to replace RefME, Cite This For Me, and other broken tools.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/extracurricular-projects/citation-needed.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-projects-for-education loop-item" data-bss-type="blog-loop-item">
<div class="card"><a href="my-work/projects-for-education/csbox.html"><img alt="A stylised cube logo with the letters &quot;CS&quot; on the left face and &quot;BX&quot; on the right face. The cube is surrounded by vibrant icons and patterns referencing computer science, including binary digits (e.g. 111101, 10101), hexadecimal numbers, colour pencils, and graphical representations of data." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/for_education/cs_box/csbox_logo.webp?h=487f527cf87df0dba11b6f4d4993a80d"></a>
<div class="card-body card-resize"><a href="my-work/projects-for-education/csbox.html">
<h4 class="text-center text-body d-flex justify-content-center">CS:Box</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-projects-for-education" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Projects for Education</span></span></span></div>
<p class="text-start card-text excerpts">Interactive educational tool expanding Bit:Box to include additional UK Computing Curriculum topics.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/projects-for-education/csbox.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-extracurricular-projects loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/extracurricular-projects/exam-buff-or-exam-bluff.html"><img alt="Large red capital letter &quot;F&quot; inside a red circle on a transparent background." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/extracurricular/exam_buff_or_exam_bluff/exam_buff_or_exam_bluff_app_logo.webp?h=c5996308f0abaf2970a7fd4e8e1cdcbf"></a>
<div class="card-body card-resize"><a href="my-work/extracurricular-projects/exam-buff-or-exam-bluff.html">
<h4 class="text-center text-body d-flex justify-content-center">Exam Buff or Exam Bluff</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-extracurricular-projects" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Extracurricular Projects</span></span></span></div>
<p class="text-start card-text excerpts">Fast-paced CS quiz game for GCSE+ that tests code and theory using logic, speed, skill, and bluffing</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/extracurricular-projects/exam-buff-or-exam-bluff.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-web-design loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/web-design/frizzle-tv.html"><img alt="Banner section of the Frizzle homepage showing four diverse women representing different hair types and product categories: Natural Hair, Wig &amp; Weave, Relaxed Hair, and Mixed-Race Hair." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/web_design/frizzle/frizzlepreview.webp?h=fe3aa289bd751d93101e7ac02bbe22a3"></a>
<div class="card-body card-resize"><a href="my-work/web-design/frizzle-tv.html">
<h4 class="text-center text-body d-flex justify-content-center">Frizzle TV</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-web-design" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Web Design</span></span></span></div>
<p class="text-start card-text excerpts">Frizzle.TV promo content and mockups created using Premiere Pro, After Effects, and Photoshop tools.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/web-design/frizzle-tv.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-extracurricular-projects loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/extracurricular-projects/i-am-aware.html"><img alt="A collage of newspaper-style clippings with words like “Anxiety,” “Panic Attacks,” and “Depression,” with the phrase “I Am Aware” boldly overlaid in white text in the center of the image, framed by a thin white border." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/extracurricular/iamaware.webp?h=a3dcdbacf64839eb9dcfd0f9190b41fb"></a>
<div class="card-body card-resize"><a href="my-work/extracurricular-projects/i-am-aware.html">
<h4 class="text-center text-body d-flex justify-content-center">I Am Aware</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-extracurricular-projects" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Extracurricular Projects</span></span></span></div>
<p class="text-start card-text excerpts">BCU campaign exploring mental health resources and real stories of depression, anxiety, and bipolar.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/extracurricular-projects/i-am-aware.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-web-design loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/web-design/mottashaw-consulting.html"><img alt="Website preview of Mottashaw Consulting homepage with navigation links and hero section showing lightbulb background and company introduction." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/web_design/mottashaw/mottashaw-preview.webp?h=c4ff31817c96c7661dbd3bf735b19fa9"></a>
<div class="card-body card-resize"><a href="my-work/web-design/mottashaw-consulting.html">
<h4 class="text-center text-body d-flex justify-content-center">Mottashaw Consulting</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-web-design" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Web Design</span></span></span></div>
<p class="text-start card-text excerpts">Mottashaw Consulting brochure site with Smart Forms, contact tools, and clearly structured services.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/web-design/mottashaw-consulting.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-projects-for-education loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/projects-for-education/my-mind.html"><img alt="Polygonal-style graphic of a human brain in shades of pink and red on a purple background." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/for_education/my_mind/my_mind_logo.webp?h=4e299b8017d1483b6dfb87ea14d502aa"></a>
<div class="card-body card-resize"><a href="my-work/projects-for-education/my-mind.html">
<h4 class="text-center text-body d-flex justify-content-center">My Mind</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-projects-for-education" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Projects for Education</span></span></span></div>
<p class="text-start card-text excerpts">App simplifying BCU mental health support, linking students to counsellors, emergency calls, forums.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/projects-for-education/my-mind.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-projects-for-education loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/projects-for-education/nature-findings.html"><img alt="Interface of the Nature Findings app showing options to add new findings, edit a life list, and access a knowledge base search, with a pale blue background and stylised headings." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/for_education/nature_findings/naturefindingspreview.webp?h=a1d20406f8862370fbf569a75cf95af9"></a>
<div class="card-body card-resize"><a href="my-work/projects-for-education/nature-findings.html">
<h4 class="text-center text-body d-flex justify-content-center">Nature Findings</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-projects-for-education" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Projects for Education</span></span></span></div>
<p class="text-start card-text excerpts">Windows app to record bird sightings during walks. Submitted as a final year computing project task.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/projects-for-education/nature-findings.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-web-design loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/web-design/peter-bell-music.html"><img alt="Screenshot of Peter Bells homepage displaying a quote about diversity in creative practice and a navigation menu including Compositions, Performances, Open Union, Avant-Bard, About, Catalogue, and Contact." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/web_design/peter_bell%20music/peter_bell_music.webp?h=bf4c8cb4c7d1ff76ef9bec3bf29df3ae"></a>
<div class="card-body card-resize"><a href="my-work/web-design/peter-bell-music.html">
<h4 class="text-center text-body d-flex justify-content-center">Peter Bell Music</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-web-design" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Web Design</span></span></span></div>
<p class="text-start card-text excerpts">Responsive site for Peter Bell Music featuring embeds, music portfolio, and future e-commerce tools.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/web-design/peter-bell-music.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-extracurricular-projects loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/extracurricular-projects/societyplus.html"><img alt="A cropped screenshot of the Society+ Mental Health Awareness site at Birmingham City University. Shows the society logo, &quot;Society Name&quot; and &quot;Society description&quot; on a blue gradient background. A navigation bar with links for Home, Login, and Sign Up is visible at the top right. The layout highlights the societys brand and structure." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/extracurricular/society+/societypluspreview.webp?h=c5bf765f66449f21ca88f0206db68bd5"></a>
<div class="card-body card-resize"><a href="my-work/extracurricular-projects/societyplus.html">
<h4 class="text-center text-body d-flex justify-content-center">Society+</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-extracurricular-projects" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Extracurricular Projects</span></span></span></div>
<p class="text-start card-text excerpts">Platform for societies to manage sign-ups, send texts, and update info using PHP, SQL, and Nexmo API</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/extracurricular-projects/societyplus.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-extracurricular-projects loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/extracurricular-projects/sortai.html"><img alt="Terminal-style logo for Sort.AI. A green monospaced font reads [$~] sort on a black background, resembling a command-line interface." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/extracurricular/sort.ai/sort.ai_logo.webp?h=a198ffe5f200f284ee778dd6f7b1d741"></a>
<div class="card-body card-resize"><a href="my-work/extracurricular-projects/sortai.html">
<h4 class="text-center text-body d-flex justify-content-center">Sort.AI</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-extracurricular-projects" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Extracurricular Projects</span></span></span></div>
<p class="text-start card-text excerpts">AI file sorter using Google NLP in C#. Auto-categorises any file. Awarded 3rd place at BullHacks 1.0</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/extracurricular-projects/sortai.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-web-design loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/web-design/st-thomas-church-keresley.html"><img alt="Homepage of St Thomas Church in Keresley, showing a banner image of a lit altar with candles and stained glass, and the title 'Worship &amp; Prayer'." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/web_design/keresley_church/keresleychurch.webp?h=452ec6d8bd02d324537f2dd100764d76"></a>
<div class="card-body card-resize"><a href="my-work/web-design/st-thomas-church-keresley.html">
<h4 class="text-center text-body d-flex justify-content-center">St Thomas' Church Keresley</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-web-design" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Web Design</span></span></span></div>
<p class="text-start card-text excerpts">Site for St Thomas Church with parish news, historic archives, and searchable burial record access.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/web-design/st-thomas-church-keresley.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-projects-for-education loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/projects-for-education/task-master-ios.html"><img alt="Square cropped version of the Task Master logo, showing the checkbox with the tick and the “Task Master” label on a bright green background." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/for_education/taskmaster_for%20ios/taskmasteriospreview.webp?h=b62eff0bef2a6734f8e4ac9ad05f103c"></a>
<div class="card-body card-resize"><a href="my-work/projects-for-education/task-master-ios.html">
<h4 class="text-center text-body d-flex justify-content-center">Task Master for iOS</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-projects-for-education" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Projects for Education</span></span></span></div>
<p class="text-start card-text excerpts">iOS app based on BrumHack 5.0 entry. Helps businesses manage, assign, and track their project tasks.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/projects-for-education/task-master-ios.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-extracurricular-projects loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/extracurricular-projects/task-master-web.html"><img alt="Preview image of the Task Master project homepage. It includes the same blue background and the main message “Welcome to BCU Hacks Task Master We Have No Idea What Were Doing!” without form fields." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/extracurricular/task_master/taskmasterpreview.webp?h=bece3f4d6e67029790c7b300d5db3393"></a>
<div class="card-body card-resize"><a href="my-work/extracurricular-projects/task-master-web.html">
<h4 class="text-center text-body d-flex justify-content-center">Task Master for Web</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-extracurricular-projects" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Extracurricular Projects</span></span></span></div>
<p class="text-start card-text excerpts">Business task manager with secure login, file upload area, MySQL. Awarded 3rd place at BrumHack 5.0.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/extracurricular-projects/task-master-web.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
<div class="col post-tag-extracurricular-projects loop-item" data-bss-type="blog-loop-item" style="display: none !important;">
<div class="card"><a href="my-work/extracurricular-projects/the-computers-identity.html"><img alt="A cropped preview of “The Computers Identity” language selection webpage, showing a column of language buttons including English, Binary, Octal, ASCII, Hexadecimal, and Leet on a white background, with a blurred brown/grey gradient on the right." class="card-img-top rainbow-border card-img-size" src="assets/img/projects/extracurricular/the_computers_identity/identitypreview.webp?h=8f3c2d53aaf46cff69c58a66abbe76f5"></a>
<div class="card-body card-resize"><a href="my-work/extracurricular-projects/the-computers-identity.html">
<h4 class="text-center text-body d-flex justify-content-center">The Computer's Identity</h4>
</a>
<div class="d-flex flex-wrap gap-1 mb-3 tags" data-bss-type="tag-loop"><span class="tag-extracurricular-projects" data-bss-type="tag-loop-item"><span class="badge bg-primary"><span>Extracurricular Projects</span></span></span></div>
<p class="text-start card-text excerpts">Interactive poem entry for BCU Christian Union art competition displayed in binary format &amp; QR code.</p><a class="d-flex justify-content-end card-link blog-link" href="my-work/extracurricular-projects/the-computers-identity.html"><u class="coloured-underline">&gt; Read more</u></a>
</div>
</div>
</div>
</div>
<nav class="d-flex justify-content-center mt-3" data-bss-type="blog-loop-pagination">
<ul class="pagination">
<li class="page-item disabled" data-type="prev" data-page="1"><a class="page-link" aria-label="Previous" href="#"><span aria-hidden="true">«</span></a></li>
<li class="page-item active" data-type="regular" data-page="1"><a class="page-link" href="#">1</a></li>
<li class="page-item" data-type="regular" data-page="2"><a class="page-link" href="#">2</a></li>
<li class="page-item" data-type="regular" data-page="3"><a class="page-link" href="#">3</a></li>
<li class="page-item" data-type="regular" data-page="4"><a class="page-link" href="#">4</a></li>
<li class="page-item" data-type="next" data-page="2"><a class="page-link" aria-label="Next" href="#"><span aria-hidden="true">»</span></a></li>
</ul>
</nav>
</div>
</div>
</section>
</main><!-- Start: Footer Multi Column -->
<footer class="text-body bg-body" id="Light-Footer">
<div class="container py-4 py-lg-5 center-everything">
<div class="row justify-content-center">
<!-- Start: Accreditations -->
<div class="col-sm-3 col-md-6 text-center text-lg-start d-none d-sm-none d-md-none d-lg-flex flex-column">
<h3 class="fs-6 text-center text-body accreditations-title">Accreditations</h3>
<div class="swiper text-body w-100" id="light-swiper" data-bss-swiper="{&quot;direction&quot;:&quot;horizontal&quot;,&quot;loop&quot;:true,&quot;autoplay&quot;:{&quot;pauseOnMouseEnter&quot;:true},&quot;autoHeight&quot;:true,&quot;effect&quot;:&quot;fade&quot;,&quot;fadeEffect&quot;:{&quot;crossFade&quot;:true}}">
<div class="swiper-wrapper">
<!-- Start: Mountain Training -->
<div class="swiper-slide d-flex justify-content-center center-everything">
<div class="tahdah-badge" data-candidateid="1466454"></div>
</div><!-- End: Mountain Training -->
<!-- Start: Canva Essentials -->
<div class="swiper-slide"><a href="https://www.canva.com/design-school/courses/canva-essentials" target="_blank"><img class="img-fluid w-100 accreditation" width="692" height="692" src="assets/img/accreditations/canva-essentials-badge.webp?h=bc157efb7620e733f43b4b00981978ea"></a></div><!-- End: Canva Essentials -->
<!-- Start: Canva Essentials for Mobile -->
<div class="swiper-slide"><a href="https://www.canva.com/design-school/courses/canva-essentials-mobile" target="_blank"><img class="img-fluid w-100 accreditation" width="692" height="692" src="assets/img/accreditations/canva-essentials-for-mobile-badge.webp?h=93513f8f560a2e346c12aeb9fb0c18ec"></a></div><!-- End: Canva Essentials for Mobile -->
<!-- Start: Canva Graphic Design Essentials -->
<div class="swiper-slide"><a href="https://www.canva.com/design-school/courses/graphic-design-essentials" target="_blank"><img class="img-fluid w-100 accreditation" width="692" height="692" src="assets/img/accreditations/graphic-design-essentials-badge.webp?h=f5406331e45433f0d8bd6b929f9d113b"></a></div><!-- End: Canva Graphic Design Essentials -->
<!-- Start: Marketing with Canva -->
<div class="swiper-slide"><a href="https://www.canva.com/design-school/courses/marketing-with-canva" target="_blank"><img class="img-fluid w-100 accreditation" width="1080" height="1080" src="assets/img/accreditations/mr-a-davis-marketing-with-canva-badge.webp?h=f0b802da597c825b7e03378130d94aca"></a></div><!-- End: Marketing with Canva -->
<!-- Start: Canva for Work -->
<div class="swiper-slide"><a href="https://www.canva.com/design-school/courses/canva-for-work" target="_blank"><img class="img-fluid w-100 accreditation" width="2160" height="2160" src="assets/img/accreditations/mr-a-davis-canva-for-work-badge.webp?h=b3617633e9d2de429288704f75b304f4"></a></div><!-- End: Canva for Work -->
<!-- Start: Canva Teacher Essentials -->
<div class="swiper-slide"><a href="https://www.canva.com/design-school/courses/teacher-essentials" target="_blank"><img class="img-fluid w-100 accreditation" width="692" height="692" src="assets/img/accreditations/teacher-essentials-badge.webp?h=d2d6f962e0b1bbebc68f987d6f156028"></a></div><!-- End: Canva Teacher Essentials -->
<!-- Start: Canva AI in the Classroom -->
<div class="swiper-slide"><a href="https://www.canva.com/design-school/courses/ai-in-the-classroom" target="_blank"><img class="img-fluid w-100 accreditation" width="1080" height="1080" src="assets/img/accreditations/ai-in-the-classroom-badge.webp?h=769458ef2c323729c209855a3cde7312"></a></div><!-- End: Canva AI in the Classroom -->
<!-- Start: Adobe Creative Educator Level 1 -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/3a49b473-4af9-4c5a-ab38-1c754f181c6e/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Adobe Creative Educator Level 1&quot;" width="600" height="600" src="assets/img/accreditations/3_hours_adobe_creative_educator_level_1.webp?h=45de0c4e8984e885b1153e344e794beb"></a></div><!-- End: Adobe Creative Educator Level 1 -->
<!-- Start: Minecraft Education -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/53745c80-7d0a-4428-906a-839e905c139c/public_url" target="_blank"><img class="img-fluid w-100 accreditation" width="600" height="600" src="assets/img/accreditations/minecraft-education-ambassador.webp?h=5c614dffa9ab6d6fd77cd805b8397ffd"></a></div><!-- End: Minecraft Education -->
<!-- Start: MCE -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/9c9dd6cd-2703-4539-adc9-366069cbc3a9/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; MCE: Microsoft Certified Educator&quot;" width="352" height="352" src="assets/img/accreditations/mce_microsoft_certified_educator.webp?h=3e67f154a356cd1ef15c31b0fb42c0c4"></a></div><!-- End: MCE -->
<!-- Start: MIEE 2023-2024 -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/b5ac17a1-0914-496f-9d85-9608966259ee/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Microsoft Innovative Educator Expert 2023-2024&quot;" width="600" height="600" src="assets/img/accreditations/microsoft_innovative_educator_expert_2023_2024.webp?h=ee882aefba64b3e5b8ea9554eeea3847"></a></div><!-- End: MIEE 2023-2024 -->
<!-- Start: MIEE 2024-2025 -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/ad92a7cb-3e4f-46e2-8e73-99dffd0eb69e/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Microsoft Innovative Educator Expert 2024-2025&quot;" width="600" height="600" src="assets/img/accreditations/microsoft_innovative_educator_expert_2024_2025.webp?h=a0b5cb2a639caf0351a977146375667e"></a></div><!-- End: MIEE 2024-2025 -->
<!-- Start: Pearson OSA Expert -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/44756f05-e727-41c8-a352-a656c033c9f0/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Onscreen Assessment Expert GCSE Computer Science&quot;" width="800" height="800" src="assets/img/accreditations/pearson_onscreen_assessment_expert.webp?h=d4e00ea5bfad5a66c619238d7cbdd8db"></a></div><!-- End: Pearson OSA Expert -->
<!-- Start: STEM 21-22 -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/52121ef6-0760-4870-91cc-1cb20001238b/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Establishing a STEM club - from creation to careers 2021/2022&quot;" width="1200" height="1200" src="assets/img/accreditations/establishing_a_stem_club_from_creation_to_careers_2021_2022.webp?h=7f96a591bd4fb09f86da96af8a8a41ef"></a></div><!-- End: STEM 21-22 -->
<!-- Start: NCCE Secondary 21-22 -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/60d50339-2dda-4991-90b5-7ff087975746/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Secondary Computer Science - Professional Development 2021-2022&quot;" width="1200" height="1200" src="assets/img/accreditations/secondary_computer_science_professional_development_2021_2022.webp?h=813dd91393f904969bc3bf184007c8c2"></a></div><!-- End: NCCE Secondary 21-22 -->
<!-- Start: NCCE Secondary 23-24 -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/e74f9011-4006-4570-824a-f483fdcb5b26/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Secondary Computing - Professional Development 2023-2024&quot;" width="600" height="600" src="assets/img/accreditations/secondary_computing_professional_development_2023_2.webp?h=77ebf2880eb7d342016b83e098d92d23"></a></div><!-- End: NCCE Secondary 23-24 -->
<!-- Start: NCCE GCSE Computer Science 19-20 -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/c73720d2-8208-4e2b-a1e5-c473961834d9/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; GCSE Computer Science: Professional Development 2019-2020&quot;" width="1200" height="1200" src="assets/img/accreditations/gcse_computer_science_professional_development_2019_2020.webp?h=fef2cee3326aeff9e2f65e86cf5e4fee"></a></div><!-- End: NCCE GCSE Computer Science 19-20 -->
<!-- Start: NCCE GCSE Computer Science 23-24 -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/c486279a-8e97-4779-90c1-56f09622e782/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; GCSE Computer Science - Professional Development 2022-2023&quot;" width="2000" height="2000" src="assets/img/accreditations/gcse_computer_science_professional_development_2022_2023.webp?h=0a54c55717b61c0a0b4ed80582d7bfae"></a></div><!-- End: NCCE GCSE Computer Science 23-24 -->
<!-- Start: NCCE GCSE Computer Science 23-24 -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/e76ed57f-2270-47f5-8e7e-4136baa261f3/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; GCSE Computer Science - Professional Development 2023-2024&quot;" width="600" height="600" src="assets/img/accreditations/gcse_computer_science_professional_development_2023.webp?h=71b8c59772af539946fb49a210b05758"></a></div><!-- End: NCCE GCSE Computer Science 23-24 -->
<!-- Start: NCCE A Level Computer Science 23-24 -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/418cfb22-3e37-4b24-b527-652b1ab6ea76/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; A-Level Computer Science - Professional Development 2023-2024&quot;" width="600" height="600" src="assets/img/accreditations/a_level_computer_science_professional_development.webp?h=a9cc6f73abdf82ab49e5f8a8695cb557"></a></div><!-- End: NCCE A Level Computer Science 23-24 -->
<!-- Start: MOS Master -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/0e46d6b8-1a1b-4d16-a5d5-3b95661fb290/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Microsoft Office Specialist: Master 2013&quot;" width="352" height="352" src="assets/img/accreditations/microsoft_office_specialist_master_2013.webp?h=70d957a5307d38f46b84b6462439afbc"></a></div><!-- End: MOS Master -->
<!-- Start: MOS Word Expert -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/287d0ca4-bea1-4e18-b9e7-21f6a5d5d571/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Microsoft Office Specialist: Word 2013 Expert&quot;" width="352" height="352" src="assets/img/accreditations/microsoft_office_specialist_word_2013_expert.webp?h=5bd4ec8c82587201172a8b8e460ff4e6"></a></div><!-- End: MOS Word Expert -->
<!-- Start: MOS Word -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/f1831f0e-776b-49aa-8a8d-05817d4b1410/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Microsoft Office Specialist: Word 2013&quot;" width="352" height="352" src="assets/img/accreditations/microsoft_office_specialist_word_2013.webp?h=2b90c5590b7b50f1891a9116fa38ac36"></a></div><!-- End: MOS Word -->
<!-- Start: MOS Excel -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/2ab55353-3267-46cc-b3f4-3099af54d869/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Microsoft Office Specialist: Excel 2013&quot;" width="352" height="352" src="assets/img/accreditations/microsoft_office_specialist_excel_2013.webp?h=f016925633d0a52b862259a05b396b6a"></a></div><!-- End: MOS Excel -->
<!-- Start: MOS PowerPoint -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/11162aa2-331a-4ec4-a612-665f3bc59cb1/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Microsoft Office Specialist: PowerPoint 2013&quot;" width="352" height="352" src="assets/img/accreditations/microsoft_office_specialist_powerpoint_2013.webp?h=26de9623c491661347998549e10d4353"></a></div><!-- End: MOS PowerPoint -->
<!-- Start: MOS OneNote -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/cd328b1d-27b6-4410-be70-0792a99b72ea/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; Microsoft Office Specialist: OneNote 2013&quot;" width="352" height="352" src="assets/img/accreditations/microsoft_office_specialist_onenote_2013.webp?h=2ffe41c2a6e37d602469f8158ef13d79"></a></div><!-- End: MOS OneNote -->
<!-- Start: MTA Security -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/da3b3b4c-cec4-4537-bb5b-486ce9ee6ee7/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; MTA: Security Fundamentals - Certified 2016&quot;" width="352" height="352" src="assets/img/accreditations/mta_security_fundamentals_certified_2016.webp?h=0df619419a5b6d0eb694dc9363870b20"></a></div><!-- End: MTA Security -->
<!-- Start: MTA Networking -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/23194bfe-30e4-4f8e-b9ec-338d060136dd/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; MTA: Networking Fundamentals - Certified 2016&quot;" width="352" height="352" src="assets/img/accreditations/mta_networking_fundamentals_certified_2016.webp?h=cdc4618c5e86d11aa304cae14c3942bc"></a></div><!-- End: MTA Networking -->
<!-- Start: MTA Windows OS -->
<div class="swiper-slide"><a href="https://www.credly.com/badges/f0f27d87-424b-49e8-a444-95086d640e66/public_url" target="_blank"><img class="img-fluid w-100 accreditation" alt="Accreditation badge for: &quot; MTA: Windows Operating System Fundamentals - Certified 2016&quot;" width="352" height="352" src="assets/img/accreditations/mta_windows_operating_system_fundamentals_certified_2016.webp?h=44a6360480ef67ced301c697d31f9fa5"></a></div><!-- End: MTA Windows OS -->
</div>
</div>
<div class="swiper-nav-standalone d-flex justify-content-center accreditations-navigation" data-bss-swiper-target="#light-swiper">
<div class="swiper-button-prev"><button class="btn btn-primary btn-sm" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" fill="currentColor" viewBox="0 0 16 16" class="bi bi-arrow-left">
<path fill-rule="evenodd" d="M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8"></path>
</svg></button></div>
<div class="swiper-button-next"><button class="btn btn-primary btn-sm" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" fill="currentColor" viewBox="0 0 16 16" class="bi bi-arrow-right">
<path fill-rule="evenodd" d="M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8"></path>
</svg></button></div>
</div>
</div><!-- End: Accreditations -->
<!-- Start: Spacer -->
<div class="col-md-3 text-center text-lg-start d-flex flex-column"><a class="d-flex w-100 justify-content-center center-everything" href="https://client.brixly.uk/aff.php?aff=837" target="_blank"><img class="img-fluid object-fit-contain w-50" src="https://brixly.uk/wp-content/uploads/2022/06/Artboard-32.jpg"></a></div><!-- End: Spacer -->
<div class="col-md-3 text-center text-lg-start d-flex flex-column align-items-center order-first align-items-lg-start order-lg-last">
<div class="fw-bold d-flex align-items-center mb-2"><img alt="Stylised orange microchip icon on a black background, designed as a modern tech-themed logo for ADCM" src="assets/img/brand/adcm_logo_accent.webp?h=62dbf084286026c4b6de08d0203df501" width="50" height="50" class="footer-logo"><span>Mr A Lyall</span></div>
<p>IT professional and Head of Computing in the West Midlands</p>
</div>
</div>
<hr>
<div class="d-flex justify-content-between align-items-center pt-3">
<p class="mb-0 footer-copyright">Copyright © 2025 ADCM Networks</p>
<ul class="list-inline mb-0">
<!-- Start: Mastodon -->
<li class="list-inline-item"><a rel="me" href="https://mstdn.social/@MrDavisCSIT"><svg class="text-body" xmlns="http://www.w3.org/2000/svg" viewBox="-32 0 512 512" width="1em" height="1em" fill="currentColor">
<!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc. -->
<path d="M433 179.11c0-97.2-63.71-125.7-63.71-125.7-62.52-28.7-228.56-28.4-290.48 0 0 0-63.72 28.5-63.72 125.7 0 115.7-6.6 259.4 105.63 289.1 40.51 10.7 75.32 13 103.33 11.4 50.81-2.8 79.32-18.1 79.32-18.1l-1.7-36.9s-36.31 11.4-77.12 10.1c-40.41-1.4-83-4.4-89.63-54a102.54 102.54 0 0 1-.9-13.9c85.63 20.9 158.65 9.1 178.75 6.7 56.12-6.7 105-41.3 111.23-72.9 9.8-49.8 9-121.5 9-121.5zm-75.12 125.2h-46.63v-114.2c0-49.7-64-51.6-64 6.9v62.5h-46.33V197c0-58.5-64-56.6-64-6.9v114.2H90.19c0-122.1-5.2-147.9 18.41-175 25.9-28.9 79.82-30.8 103.83 6.1l11.6 19.5 11.6-19.5c24.11-37.1 78.12-34.8 103.83-6.1 23.71 27.3 18.4 53 18.4 175z"></path>
</svg></a></li><!-- End: Mastodon -->
<!-- Start: Bluesky -->
<li class="list-inline-item"><a href="https://bsky.app/profile/adcmnetworks.co.uk"><i class="fa-brands fa-square-bluesky"></i></a></li><!-- End: Bluesky -->
<!-- Start: LinkedIn -->
<li class="list-inline-item"><a href="https://www.linkedin.com/in/MrDavisCSIT/"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" fill="currentColor" viewBox="0 0 16 16" class="bi bi-linkedin text-body">
<path d="M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854V1.146zm4.943 12.248V6.169H2.542v7.225h2.401m-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248-.822 0-1.359.54-1.359 1.248 0 .694.521 1.248 1.327 1.248h.016zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016a5.54 5.54 0 0 1 .016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225h2.4"></path>
</svg></a></li><!-- End: LinkedIn -->
<!-- Start: GitHub -->
<li class="list-inline-item"><a href="https://github.com/MrDavisCSIT"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" fill="currentColor" viewBox="0 0 16 16" class="bi bi-github text-body">
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8"></path>
</svg></a></li><!-- End: GitHub -->
<!-- Start: Reddit -->
<li class="list-inline-item"><a href="https://www.reddit.com/user/AlexanderEDavis95/"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" fill="currentColor" viewBox="0 0 16 16" class="bi bi-reddit text-body">
<path d="M6.167 8a.831.831 0 0 0-.83.83c0 .459.372.84.83.831a.831.831 0 0 0 0-1.661m1.843 3.647c.315 0 1.403-.038 1.976-.611a.232.232 0 0 0 0-.306.213.213 0 0 0-.306 0c-.353.363-1.126.487-1.67.487-.545 0-1.308-.124-1.671-.487a.213.213 0 0 0-.306 0 .213.213 0 0 0 0 .306c.564.563 1.652.61 1.977.61zm.992-2.807c0 .458.373.83.831.83.458 0 .83-.381.83-.83a.831.831 0 0 0-1.66 0z"></path>
<path d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-3.828-1.165c-.315 0-.602.124-.812.325-.801-.573-1.9-.945-3.121-.993l.534-2.501 1.738.372a.83.83 0 1 0 .83-.869.83.83 0 0 0-.744.468l-1.938-.41a.203.203 0 0 0-.153.028.186.186 0 0 0-.086.134l-.592 2.788c-1.24.038-2.358.41-3.17.992-.21-.2-.496-.324-.81-.324a1.163 1.163 0 0 0-.478 2.224c-.02.115-.029.23-.029.353 0 1.795 2.091 3.256 4.669 3.256 2.577 0 4.668-1.451 4.668-3.256 0-.114-.01-.238-.029-.353.401-.181.688-.592.688-1.069 0-.65-.525-1.165-1.165-1.165z"></path>
</svg></a></li><!-- End: Reddit -->
<!-- Start: YouTube -->
<li class="list-inline-item"><a href="https://www.youtube.com/channel/UCgDhiQMLbTemv2varDiW2rA"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" fill="currentColor" viewBox="0 0 16 16" class="bi bi-youtube text-body">
<path d="M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.007 2.007 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.007 2.007 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31.4 31.4 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.007 2.007 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A99.788 99.788 0 0 1 7.858 2h.193zM6.4 5.209v4.818l4.157-2.408z"></path>
</svg></a></li><!-- End: YouTube -->
</ul>
</div>
</div>
</footer><!-- End: Footer Multi Column -->
<script>
(function() {
let collections = document.querySelectorAll('[data-bss-type="blog-loop"]');
let tagNavs = document.querySelectorAll('[data-bss-type="tag-nav"]');
let tagLoops = document.querySelectorAll('[data-bss-type="tag-loop"]');
let authorLoops = document.querySelectorAll('[data-bss-type="author-loop"]');
let authorNavs = document.querySelectorAll('[data-bss-type="author-nav"]');
window.addEventListener("popstate", (e) => {
for (let collection of collections) {
updateCollection(collection);
}
for (let tagNav of tagNavs) {
updateTagNav(tagNav);
}
for (let authorNav of authorNavs) {
updateAuthorNav(authorNav);
}
});
for (let collection of collections) {
updateCollection(collection);
if (!canPaginateCollection(collection)) continue;
let pagination = collection.querySelector('[data-bss-type="blog-loop-pagination"]');
pagination.addEventListener('click', function(e) {
let paginationItem = e.target.closest('.page-item');
if (!paginationItem) return;
e.preventDefault();
if (paginationItem.classList.contains('disabled') || paginationItem.classList.contains('active')) return;
let collection = paginationItem.closest('[data-bss-type="blog-loop"]');
if (!collection) return;
let page = parseInt(paginationItem.dataset.page);
if (!page) return;
let pageParam = getPageParameter(collection);
if (pageParam) {
const url = new URL(window.location);
url.searchParams.set(pageParam, page);
history.pushState({
[pageParam]: page
}, document.title, url);
for (let c of collections) {
let param = getPageParameter(c);
if (param !== pageParam) continue;
updateCollection(c);
}
} else {
updateCollection(collection, page);
}
});
}
for (let tagNav of tagNavs) {
updateTagNav(tagNav);
tagNav.addEventListener('click', onTagClick);
}
for (let tagLoop of tagLoops) {
tagLoop.addEventListener('click', onTagClick);
}
for (let authorLoop of authorLoops) {
authorLoop.addEventListener('click', onAuthorClick);
}
for (let authorNav of authorNavs) {
updateAuthorNav(authorNav);
}
function onTagClick(e) {
onBlogFilterClick(e);
for (let nav of tagNavs) {
updateTagNav(nav);
}
}
function onAuthorClick(e) {
onBlogFilterClick(e);
for (let authorNav of authorNavs) {
updateAuthorNav(authorNav);
}
}
function onBlogFilterClick(e) {
const item = e.target.closest('[data-bss-filter="blog"]');
if (!item || !item.dataset.hasOwnProperty('bssHref') || !item.dataset.hasOwnProperty('bssFilterParam')) return;
const stateNode = item.dataset.hasOwnProperty('bssStateNode') ? item : item.querySelector('[data-bss-state-node]');
if (stateNode && (stateNode.classList.contains('disabled') || stateNode.classList.contains('active'))) {
e.preventDefault();
return;
}
const link = item.dataset.bssHref;
if (!linksToCurrentPage(link)) return;
e.preventDefault();
const url = new URL(window.location);
const filterParam = item.dataset.bssFilterParam;
const filterValue = item.dataset.bssFilterValue || '';
const collectionsToUpdate = [];
const newQueryParams = {
[filterParam]: filterValue
};
for (let c of collections) {
if (!canFilterCollection(c)) continue;
collectionsToUpdate.push(c);
let pageParam = getPageParameter(c);
let page = url.searchParams.get(pageParam);
if (page === null || page == 1) continue;
newQueryParams[pageParam] = 1;
}
for (let param in newQueryParams) {
if (newQueryParams[param]) {
url.searchParams.set(param, newQueryParams[param]);
} else {
url.searchParams.delete(param);
}
}
history.pushState(newQueryParams, document.title, url);
for (let c of collectionsToUpdate) {
updateCollection(c);
}
}
function getCollectionFilters(collection) {
let filters = [];
try {
const parsed = JSON.parse(collection.dataset.bssFilters);
if (Array.isArray(parsed)) {
filters = parsed;
}
} catch (e) {}
return filters;
}
function getCollectionEmptyFilterAction(collection, filter = '') {
let emptyFilterActions = [];
try {
const parsed = JSON.parse(collection.dataset.bssEmptyFilterActions);
if (Array.isArray(parsed)) {
emptyFilterActions = parsed;
}
} catch (e) {}
const action = emptyFilterActions.find(action => action.filter === filter);
return action ? action.value : '';
}
function canFilterCollection(collection) {
return !!getCollectionFilters(collection).length;
}
function canFilterCollectionByTag(collection) {
return getCollectionFilters(collection).includes('tag');
}
function canFilterCollectionByAuthor(collection) {
return getCollectionFilters(collection).includes('author');
}
function shouldShowAllItemsForEmptyFilter(collection, filter = '') {
return getCollectionEmptyFilterAction(collection, filter) === 'show-all';
}
function canPaginateCollection(collection) {
return !!getCollectionPagination(collection);
}
function getCollectionPagination(collection) {
return collection.querySelector('[data-bss-type="blog-loop-pagination"]');
}
function getPageParameter(collection) {
return collection.dataset.bssPageParam;
}
function linksToCurrentPage(path = '') {
let currentURL, url;
try {
currentURL = new URL(window.location);
url = new URL(path, window.location.href);
} catch (e) {
console.error(e);
}
return currentURL.origin === url.origin && currentURL.pathname === url.pathname;
}
function updateCollection(collection, page, activeTag = '', activeAuthor = '') {
const url = new URL(window.location.href);
if (canPaginateCollection(collection)) {
if (!page) {
let pageParam = getPageParameter(collection);
page = (pageParam ? url.searchParams.get(pageParam) : 1) || 1;
}
}
if (canFilterCollectionByTag(collection) && !activeTag) {
let tagParam = 'tag';
activeTag = url.searchParams.get(tagParam) || '';
}
if (canFilterCollectionByAuthor(collection) && !activeAuthor) {
let authorParam = 'author';
activeAuthor = url.searchParams.get(authorParam) || '';
}
renderCollectionPage(collection, page, activeTag, activeAuthor);
}
function renderCollectionPage(collection, page = 1, activeTag = '', activeAuthor = '') {
page = Math.max(parseInt(page, 10), 1);
collection.style.removeProperty('display');
let loopBase = collection.querySelector('[data-bss-type="blog-loop-base"]');
loopBase && loopBase.style.removeProperty('display');
let emptyState = collection.querySelector('[data-bss-type="empty-state"]');
emptyState && emptyState.style.setProperty('display', 'none', 'important');
let listItems = [].slice.call(collection.querySelectorAll('[data-bss-type="blog-loop-item"]'));
listItems.forEach(item => item.style.setProperty('display', 'none', 'important'));
if (canFilterCollectionByTag(collection)) {
listItems = listItems.filter(item => activeTag ? item.classList.contains('post-tag-' + activeTag) : shouldShowAllItemsForEmptyFilter(collection, 'tag'));
}
if (canFilterCollectionByAuthor(collection)) {
listItems = listItems.filter(item => activeAuthor ? item.classList.contains('post-author-' + activeAuthor) : shouldShowAllItemsForEmptyFilter(collection, 'author'));
}
let perPage = collection.dataset.bssPerpage || listItems.length;
let visibleListItems = listItems.slice((page - 1) * perPage, page * perPage);
visibleListItems.forEach(item => item.style.removeProperty('display'));
let isEmpty = !visibleListItems.length;
if (isEmpty) {
loopBase && loopBase.style.setProperty('display', 'none', 'important');
emptyState && emptyState.style.removeProperty('display');
}
let itemCount = listItems.length;
let pageCount = Math.max(Math.ceil(itemCount / perPage), 1);
updateCollectionPagination(collection, page, pageCount, isEmpty);
if (collection.dataset.bssScrollOnChange) {
scrollToCollectionTop(collection);
}
}
function updateCollectionPagination(collection, page, pageCount, isEmpty) {
let pagination = getCollectionPagination(collection);
if (!pagination) return;
let paginationItems = [].slice.call(pagination.querySelectorAll('.page-item'));
if (pageCount === 1 || isEmpty) {
pagination.style.setProperty('display', 'none', 'important');
} else {
pagination.style.removeProperty('display');
}
let previousBtnDisabled = page - 1 <= 0;
let previousPage = previousBtnDisabled ? 1 : page - 1;
let nextBtnDisabled = page + 1 > pageCount;
let nextPage = nextBtnDisabled ? pageCount : page + 1;
for (let i = 0; i < paginationItems.length; i++) {
let paginationItem = paginationItems[i];
paginationItem.classList.remove('active', 'disabled');
if (paginationItem.dataset.type === 'prev') {
paginationItem.dataset.page = previousPage;
if (previousBtnDisabled) {
paginationItem.classList.add('disabled');
}
} else if (paginationItem.dataset.type === 'next') {
paginationItem.dataset.page = nextPage;
if (nextBtnDisabled) {
paginationItem.classList.add('disabled');
}
} else {
if (paginationItem.dataset.page > pageCount) {
paginationItem.style.setProperty('display', 'none', 'important');
} else {
paginationItem.style.removeProperty('display');
}
if (paginationItem.dataset.page == page) {
paginationItem.classList.add('active');
}
}
}
}
function scrollToCollectionTop(collection) {
const rect = collection.getBoundingClientRect();
const viewHeight = Math.max(document.documentElement.clientHeight, window.innerHeight);
const threshold = 100;
if (rect.top >= 0 && viewHeight - rect.top > threshold) return;
setTimeout(() => {
collection.scrollIntoView({
behavior: "smooth",
block: "start",
inline: "start"
});
}, 0);
}
function updateTagNav(tagNav) {
const url = new URL(window.location.href);
let tagParam = 'tag';
let tag = url.searchParams.get(tagParam) || '';
renderTagNav(tagNav, tag);
}
function renderTagNav(tagNav, activeTag = '') {
if (!tagNav.dataset.bssSyncUrl) return;
let navItems = [].slice.call(tagNav.querySelectorAll('[data-bss-type="tag-loop-item"]'));
navItems.forEach(item => {
const activeClassNode = item.dataset.hasOwnProperty('bssStateNode') ? item : item.querySelector('[data-bss-state-node]');
if (!activeClassNode) return;
activeClassNode.classList.remove('active');
const link = item.dataset.bssHref;
if (!linksToCurrentPage(link) || activeClassNode.classList.contains('disabled')) return;
if (item.dataset.bssTag === activeTag) {
activeClassNode.classList.add('active');
}
});
}
function updateAuthorNav(authorNav) {
const url = new URL(window.location.href);
let authorParam = 'author';
let author = url.searchParams.get(authorParam) || '';
renderAuthorNav(authorNav, author);
}
function renderAuthorNav(authorNav, activeAuthor = '') {
if (!canFilterCollectionByAuthor(authorNav)) return;
authorNav.style.removeProperty('display');
let items = [].slice.call(authorNav.querySelectorAll('[data-bss-type="author-loop-item"]'));
items.forEach(item => item.classList.contains('author-' + activeAuthor) ? item.style.removeProperty('display') : item.style.setProperty('display', 'none', 'important'));
}
})();
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.6/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js"></script>
<script src="assets/js/bs-init.js?h=7c6b4c49b8ac0f383799ccb3d5def770"></script>
<script src="assets/js/Carousel---Slider-With-Animation-slider_with_animation.js?h=948f8788fd189b5cc9df01ff4fce4152"></script>
<script src="assets/js/CookieConsentComponent-cookieconsent.js?h=83fbb3192473604d72b00a854c6de4fd"></script>
<script src="https://kit.fontawesome.com/8970d94f9b.js"></script>
<script src="assets/js/pikaday.min.js?h=039feef26d52ebc5f1260a47208bfa38"></script>
<script src="assets/js/text-carousel.js?h=992f402828c7806b1f3bb7f29232e972"></script>
<script src="assets/js/theme.js?h=aeddb9c3ce5d77b8278c91c07acf30ad"></script>
</body>
</html>