<!DOCTYPE html>
<!--
Design by:
——————————
GODO FREDO
✉ https://godofredo.ninja
✎ @GodoFredoNinja
✈ Lima - Perú
-->
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>Fit a Cat Flap in a UPVC Door Panel</title>
<meta name="HandheldFriendly" content="True" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<script>
if (localStorage.theme === 'dark' || (!('theme' in localStorage) && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
document.querySelector('html').classList.add('dark');
} else {
document.querySelector('html').classList.remove('dark');
}
</script>
<link rel="preload" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=PT+Serif:ital,wght@0,400;0,700;1,400&display=swap" as="style" onload="this.onload=null;this.rel='stylesheet'"/>
<noscript><link rel="preconnect" href="https://fonts.gstatic.com"><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=PT+Serif:ital,wght@0,400;0,700;1,400&display=swap" rel="stylesheet"></noscript>
<link rel="stylesheet" type="text/css" href="/assets/styles/main.css?v=b694e0fcb3"/>
<meta name="referrer" content="no-referrer-when-downgrade" />
<meta property="og:site_name" content="Hub Stack" />
<meta property="og:type" content="article" />
<meta property="og:title" content="Fit a Cat Flap in a UPVC Door Panel" />
<meta property="og:description" content="It is possible to put the cat flap inside a upvc door panel or double glazing glass sealed unit, although the best option is to have a new glass pane with an already-made hole. Follow the instructions provided with the kit. Make sure that the shape you have drawn (be" />
<meta property="og:url" content="https://hubstack.net/fit-a-cat-flap-in-a-upvc-door-panel-1723577407/" />
<meta property="og:image" content="https://source.unsplash.com/random/800x600" />
<meta property="article:published_time" content="2024-08-13T19:30:23.000Z" />
<meta property="article:modified_time" content="2024-08-13T19:30:23.000Z" />
<meta property="article:publisher" content="https://www.facebook.com/ghost" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="Fit a Cat Flap in a UPVC Door Panel" />
<meta name="twitter:description" content="It is possible to put the cat flap inside a upvc door panel or double glazing glass sealed unit, although the best option is to have a new glass pane with an already-made hole. Follow the instructions provided with the kit. Make sure that the shape you have drawn (be" />
<meta name="twitter:url" content="https://hubstack.net/fit-a-cat-flap-in-a-upvc-door-panel-1723577407/" />
<meta name="twitter:image" content="https://source.unsplash.com/random/800x600" />
<meta name="twitter:label1" content="Written by" />
<meta name="twitter:data1" content="Patrick Lyon" />
<meta name="twitter:site" content="@ghost" />
<link rel="alternate" type="application/rss+xml" title="Hub Stack" href="https://hubstack.net/rss/" />
<script defer src="/public/cards.min.js?v=b694e0fcb3"></script><style>:root {--ghost-accent-color: #FF1A75;}</style>
<link rel="stylesheet" type="text/css" href="/public/cards.min.css?v=b694e0fcb3">
</head>
<body class="is-article">
<div class="simply-viewport flex flex-col justify-start">
<header class="header js-header h-16 w-full text-sm flex items-center sticky top-0 z-20">
<div class="header-wrap mx-auto flex items-center flex-auto px-4 w-full max-w-extreme">
<div class="header-left mr-5 flex flex-none items-center">
<a href="https://hubstack.net"
class="header-logo inline-block leading-none godo-tracking"
data-event-category="Header"
data-event-action="Logo"
data-event-label="Click"
data-event-non-interaction="true">
<span class="text-3xl font-bold text-logo">Hub Stack</span>
</a>
</div>
<nav class="header-center mainMenu relative flex items-center pr-5 flex-grow overflow-auto lg:overflow-visible">
<ul itemscope
itemtype="http://www.schema.org/SiteNavigationElement"
class="nav hidden lg:flex whitespace-nowrap">
<li itemprop="name">
<a itemprop="url"
href="https://hubstack.net/"
class="mainMenu-link godo-tracking h-16 flex items-center p-3 text-base text-header-link hover:text-primary"
data-event-category="Header"
data-event-action="Menu"
data-event-label="Home"
data-event-non-interaction="true">
Home
</a>
</li>
<li itemprop="name">
<a itemprop="url"
href="https://hubstack.net/about/"
class="mainMenu-link godo-tracking h-16 flex items-center p-3 text-base text-header-link hover:text-primary"
data-event-category="Header"
data-event-action="Menu"
data-event-label="About"
data-event-non-interaction="true">
About
</a>
</li>
</ul>
</nav>
<div class="header-right flex-none flex justify-end items-center">
<a role="button" class="js-dark-mode button is-white items-center mr-2" aria-label="Dark and Light Mode">
<svg class="icon icon--moon m-0" style="margin-right:calc(-0.5em - 1px)"><use xlink:href="#icon-moon"></use></svg>
<svg class="icon icon--sunny m-0 hidden" style="margin-left:calc(-0.5em - 1px)"><use xlink:href="#icon-sunny"></use></svg>
</a>
<a href="javascript:;"
role="button"
aria-label="Toggle Search"
class="js-modal-button godo-tracking hidden button is-white mr-2"
data-target="modal-search"
aria-haspopup="true"
data-event-category="Header"
data-event-action="Search"
data-event-label="Click"
data-event-non-interaction="true">
<svg class="icon icon--search"><use xlink:href="#icon-search"></use></svg>
</a>
<a class="button is-white mr-2 text-sm font-medium hidden md:flex" href="/ghost/#/signin">Log in</a>
<a class="button is-primary text-sm font-medium hidden md:flex" href="/ghost/#/signup/3fde">Write Now</a>
<a href="javascript:;" role="button" aria-label="Show Navigation Menu" class="js-menu-toggle menu-burger button is-white relative lg:hidden"><span></span><span></span><span></span></a>
</div>
</div>
</header>
<div class="nav-mob fixed inset-0 pt-16 header-bg h-screen z-10 w-full text-center overflow-y-auto lg:hidden">
<div class="nav-mob-wrap absolute inset-0 top-16 pt-5 flex flex-col">
<div class="py-4 flex justify-center md:hidden">
<a data-portal="signin" class="button mr-2 is-black text-sm font-medium" href="#">Log in</a>
<a data-portal="account/plans" class="button is-primary text-sm font-medium" href="#">Subscribe</a>
</div>
<div class="py-4 flex-auto">
<ul>
<li>
<a href="https://hubstack.net/" class="block px-5 py-2 font-medium text-22 leading-tight">Home</a>
</li>
<li>
<a href="https://hubstack.net/about/" class="block px-5 py-2 font-medium text-22 leading-tight">About</a>
</li>
</ul>
</div>
<div class="js-social-media social-media nav-mob-social-media social-media is-inline py-4">
<a class="godo-tracking p-2 inline-block hover:opacity-70"
data-event-category="Header"
data-event-action="Social"
data-event-label="Facebook"
data-event-non-interaction="true"
title="Facebook ghost"
aria-label="Facebook ghost"
href="https://www.facebook.com/ghost"
target="_blank"
rel="noopener noreferrer">
<svg class="icon icon--facebook"><use xlink:href="#icon-facebook"></use></svg>
</a>
<a class="godo-tracking p-2 inline-block hover:opacity-70"
data-event-category="Header"
data-event-action="Social"
data-event-label="Twitter"
data-event-non-interaction="true"
title="Twitter @ghost"
aria-label="Twitter @ghost"
href="https://twitter.com/ghost"
target="_blank"
rel="noopener noreferrer">
<svg class="icon icon--twitter"><use xlink:href="#icon-twitter"></use></svg>
</a>
</div> </div>
</div>
<main class="simply-main relative min-h-lg">
<article class="post py-vmin8 relative">
<header class="post-header godo-canvas">
<h1 class="post-title text-32 md:text-4xl lg:text-44 text-title leading-tight">Fit a Cat Flap in a UPVC Door Panel</h1>
<div class="post-share flex flex-col md:flex-row mt-8">
<div class="hh flex items-center flex-auto relative leading-snug z-4">
<ul class="flex flex-wrap flex-none mr-3 -space-x-2">
<li>
<a href="/author/patrick-lyon/" title="Go to the profile of Patrick Lyon">
<img class="object-cover rounded-full h-10 w-10"
src="https://source.unsplash.com/400x400/?face"
alt="Go to the profile of Patrick Lyon"
width="36"
height="36"
/>
</a>
</li>
</ul>
<div class="flex-auto overflow-hidden">
<div class="hh-author-name text-sm truncate">
<a href="https://patrick-lyon.hubstack.net/author/patrick-lyon/">Patrick Lyon</a>
</div>
<div class="hh-date flex items-center text-gray-500 text-sm">
<time class="datetime capitalize" datetime="2024-08-13" title="Updated 13 Aug 2024">13 Aug 2024</time>
<span class="bull mx-1">·</span>
<span class="readingTime cursor-default" title="6 min read">6 min read</span>
</div> </div>
</div>
<aside class="post-shasre text-title flex items-center flex-none order-first mb-6 md:mb-0 md:order-none">
<span class="share-label text-gray-500 text-sm mr-2">Share:</span>
<a href="https://twitter.com/share?text=Fit%20a%20Cat%20Flap%20in%20a%20UPVC%20Door%20Panel&url=https://patrick-lyon.hubstack.net/fit-a-cat-flap-in-a-upvc-door-panel-1723577407/"
target="_blank"
rel="noopener noreferrer"
class="godo-tracking"
title="Share on Twitter"
aria-label="Share on Twitter"
data-event-category="Article"
data-event-action="Share"
data-event-label="Header - Twitter"
data-event-non-interaction="true">
<svg width="30" height="30" class="fill-current"><path fill-rule="evenodd" clip-rule="evenodd" d="M15 27a12 12 0 1 0 0-24 12 12 0 0 0 0 24zm4.95-16.17a2.67 2.67 0 0 0-4.6 1.84c0 .2.03.41.05.62a7.6 7.6 0 0 1-5.49-2.82 3 3 0 0 0-.38 1.34c.02.94.49 1.76 1.2 2.23a2.53 2.53 0 0 1-1.2-.33v.04c0 1.28.92 2.36 2.14 2.62-.23.05-.46.08-.71.1l-.21-.02-.27-.03a2.68 2.68 0 0 0 2.48 1.86A5.64 5.64 0 0 1 9 19.38a7.62 7.62 0 0 0 4.1 1.19c4.9 0 7.58-4.07 7.57-7.58v-.39c.52-.36.97-.83 1.33-1.38-.48.23-1 .37-1.53.43.56-.33.96-.86 1.15-1.48-.5.31-1.07.53-1.67.66z"/></svg>
</a>
<a href="https://www.facebook.com/sharer/sharer.php?u=https://patrick-lyon.hubstack.net/fit-a-cat-flap-in-a-upvc-door-panel-1723577407/"
target="_blank"
rel="noopener noreferrer"
class="godo-tracking"
title="Share on Facebook"
aria-label="Share on Facebook"
data-event-category="Article"
data-event-action="Share"
data-event-label="Header - Facebook"
data-event-non-interaction="true">
<svg width="30" height="30" viewBox="0 0 30 30" class="fill-current"><path fill-rule="evenodd" clip-rule="evenodd" d="M15 27a12 12 0 1 0 0-24 12 12 0 0 0 0 24zm-1.23-6.03V15.6H12v-2.15h1.77v-1.6C13.77 10 14.85 9 16.42 9c.75 0 1.4.06 1.58.08v1.93h-1.09c-.85 0-1.02.43-1.02 1.05v1.38h2.04l-.27 2.15H15.9V21l-2.13-.03z"/></svg>
</a>
<a href="https://www.linkedin.com/shareArticle?mini=true&url=https://patrick-lyon.hubstack.net/fit-a-cat-flap-in-a-upvc-door-panel-1723577407/&title=Fit%20a%20Cat%20Flap%20in%20a%20UPVC%20Door%20Panel"
target="_blank"
rel="noopener noreferrer"
class="godo-trackin"
title="Share on Linkedin"
aria-label="Share on Linkedin"
data-event-category="Article"
data-event-action="Linkedin"
data-event-label="Header - Linkedin"
data-event-non-interaction="true">
<svg width="30" height="30" class="fill-current"><path fill-rule="evenodd" clip-rule="evenodd" d="M27 15a12 12 0 1 1-24 0 12 12 0 0 1 24 0zm-14.61 5v-7.42h-2.26V20h2.26zm-1.13-8.44c.79 0 1.28-.57 1.28-1.28-.02-.73-.5-1.28-1.26-1.28-.78 0-1.28.55-1.28 1.28 0 .71.49 1.28 1.25 1.28h.01zM15.88 20h-2.5s.04-6.5 0-7.17h2.5v1.02l-.02.02h.02v-.02a2.5 2.5 0 0 1 2.25-1.18c1.64 0 2.87 1.02 2.87 3.22V20h-2.5v-3.83c0-.97-.36-1.62-1.26-1.62-.69 0-1.1.44-1.28.87-.06.15-.08.36-.08.58v4z"/></svg>
</a>
<a href="whatsapp://send?text=https://patrick-lyon.hubstack.net/fit-a-cat-flap-in-a-upvc-door-panel-1723577407/"
target="_blank"
rel="noopener noreferrer"
class="godo-tracking button is-black rounded-full text-xs w-6 h-6 md:hidden"
aria-label="Share on WhatSapp"
data-event-category="Article"
data-event-action="Share"
data-event-label="Header - Whatsapp"
data-event-non-interaction="true">
<svg class="icon"><use xlink:href="#icon-whatsapp"></use></svg>
</a>
</aside></div>
<figure class="post-image block mt-12">
<img class="mx-auto simply-zoom"
srcset="https://source.unsplash.com/random/800x600 300w,
https://source.unsplash.com/random/800x600 600w,
https://source.unsplash.com/random/800x600 1000w,
https://source.unsplash.com/random/800x600 2000w"
sizes="(max-width: 400px) 300px,(max-width: 730px) 600px, (max-width: 1600px) 100vw"
src="https://source.unsplash.com/random/800x600"
alt="Fit a Cat Flap in a UPVC Door Panel"
width="1200"
height="628"
/>
</figure>
</header>
<section id="post-body" class="post-body godo-canvas mx-auto relative font-serif"><p>It is possible to put the cat flap inside a upvc door panel or double glazing glass sealed unit, although the best option is to have a new glass pane with an already-made hole.<br><br>Follow the instructions provided with the kit. Make sure that the shape you have drawn (be it circle or square) is accurately represented on your template drawing.<br><br>Safety<br><br>If you have a cat or dog and would like to let them in the garden without opening the door, a microchip activated pet flap inside your door panel made of upvc is a great option. It will allow your pet inside, while preventing other animals and pests from coming inside. In addition, it will keep burglars out of your home through the door by locking out any potential intruders. This kind of security feature is essential if you have young children, seniors or reside in an area that is susceptible to burglary.<br><br>Installing a cat door in a solid uPVC is a fairly simple process that can be accomplished by anyone with basic DIY skills and experience using tools. You can use a jigsaw to make the hole you need however it is vital that you make sure that the flap is large enough for your pet and that it is placed at an appropriate height from both the inside and outside of the home.<br><br>If your door is made from a composite material, it is advisable to talk with the manufacturer before making any alterations to avoid invalidating the warranty. Some composite doors are made with raised decorative elements that are difficult or impossible to cut. Special measures may be needed where these protrusions are present. After cutting the wood, it is a good idea for the exposed sections to be sealed with a weatherproof sealant. This will help stop rainwater and moisture from getting into the wood and causing the wood to rot.<br><br>It is more difficult to put in the cat flap on double-glazed glass doors because the glass unit will need to be installed, which can be expensive. It is possible to replace the glass with a uPVC panel. It is cheaper to replace the glass panel rather than the entire door, and you can keep the original uPVC frames. Furthermore, the new frame can be customized to accommodate an animal flap or cat flap. This is especially useful for those who don't want to put an unintentional hole in their door or wall.<br><br>Convenience<br><br>Installing a cat flap on your door allows your cat to come in and out as they like. This is also a good method to protect them from intruders who aren't welcome as well as other animals that can enter your home. It is important to keep in mind that the cat flap needs to be used under supervision, and must always be secured. This is to stop the cat from fleeing and wandering off, as well as to keep out robbers and other unwanted visitors.<br><br>There are a variety of cat flaps. However, the most basic one is the two-way swinging door. They are cheap and can be opened in either direction by pushing them. They are not very secure and can allow stray animals and cats to get into your home. You should consider purchasing a microchip-activated pet flap. It will only be opened when your cat's collar is recognized.<br><br>Installing a cat flap on upvc doors is a simple procedure that requires just a bit of patience and skill. The first step is to measure the flat area of the door where you would like to place the cat flap. Once you have the measurements, you can purchase the flap that fits comfortably in the area.<br><br>You can also opt to have the cat flap installed into the Upvc at the time it is in manufacturing. This is the most secure option since it will stop a potential accident from happening and will save you money in the end. If you choose to do this, it is recommended to consult with the manufacturer of the door prior to making the decision.<br><br>Mark the center of the upvc sheet that you'll want to place the flap using a chalk or pencil. You can then make use of the template drawn in the cat flap kit to determine where the cut section should be placed on your door. Once you've found it, make sure that the edges of your cut section sit over the marks you've drawn. Make use of the right size drill to drill the holes.<br><br>Energy efficiency<br><br>When it comes to keeping your home energy efficient the doors you choose to use are among the most crucial elements. If your doors aren't properly sealed, you could lose a lot of heat in winter and let hot air out in the summer. A upvc door with cat flaps can help keep drafts out and help save cash on heating bills all year round.<br><br>In contrast to traditional doors made of steel or wood, uPVC doors are designed to be energy efficient. They are insulated and will ensure that your home's temperature stays constant. They also require less maintenance. They are also simple to fix and replace if damaged, making them a great investment for your home.<br></p><figure class="kg-card kg-image-card"><img src="https://www.repairmywindowsanddoors.co.uk/wp-content/uploads/2014/12/Locksmiths-300x200.jpg" class="kg-image" alt loading="lazy"></figure><p><br><br>Be careful to do it right If you plan to install an animal flap on your upvc doors. A proper design will allow your pet to enter and exit in a safe manner, with no gaps or leaks. It is also essential to select an appropriate location for the flap because it will be exposed to the elements.<br><br>To begin, you need to determine the height of your pet at their belly and mark an outline on the upvc door where you would like the flap to be installed. You should then carefully cut around this line with an jigsaw. You should not remove too much because this could weaken the structure or cause other issues.<br><br>Once you've found the perfect size hole in your upvc door panel, it's the time to install the cat flap. This is best done with an item that comes with an outline of the template on paper, markings and a drill guide. <a href="https://www.repairmywindowsanddoors.co.uk/poole-cat-flap-installer-near-me/">cat flap installers near me</a> 'll need to be reasonably skilled with tools, as you'll be cutting into the upvc and might damage it in the event that you're not cautious.<br><br>You should also test the fit of the flap to make sure it's secure, and that the flap can be closed and locked from the inside with the key. You may have to repeat this process several times. Also, ensure the flap is in alignment with the seal on your upvc frame. This will ensure there aren't any gaps.<br><br>Security<br><br>A cat flap allows cats to get out and take in the fresh air without waiting for you to let them in. It also helps keep out unwanted animals. However, if you're worried about the security of your house, you should consider installing an animal flap that permits in animals that are approved. This can be done by installing a uPVC panel that includes a microchip-activated pet flap. The microchip can be programmed to only allow in animals with the correct identification tag. This will stop stray cats and pests from entering your home.<br><br>It's important to think ahead when installing the cat flap. You should think about the type of flap you'd like to install, the placement and the height both inside and out of your home. If possible, it's best to plan this out during the construction of the door. However, if this is not possible, seek out professional help.<br><br>It's not as straightforward to put in a cat flap as it is with a solid wood door however, you can accomplish it. You'll need to make sure the flap is big enough to accommodate your pet and that you have a hole in the door that's big enough to accommodate the flap. It's a good idea also to test the flap before installing it in order to ensure that it works correctly.<br><br>Once the hole is cut into the wall, use sandpaper that is coarse on the edges to smooth them. This will allow you to eliminate any excess material that may cause the flap to completely close. To avoid creating gaps it is important to remove material slowly and carefully.<br><br>While installing a cat flap onto the uPVC door panel is fairly easy, it's still something that should be left to professionals. If you decide to do it yourself, make sure that you follow the instructions of the manufacturer exactly and that you have all the required tools before starting the project. Using a drill to cut toughened glass can increase the chance of it breaking and causing damage, so it's better to leave this job to a professional glazier.<br></p></section>
<footer class="post-footer godo-canvas pt-10">
<aside class="post-shasre text-title flex items-center flex-none md:justify-end ">
<span class="share-label text-gray-500 text-sm mr-2">Share:</span>
<a href="https://twitter.com/share?text=Fit%20a%20Cat%20Flap%20in%20a%20UPVC%20Door%20Panel&url=https://patrick-lyon.hubstack.net/fit-a-cat-flap-in-a-upvc-door-panel-1723577407/"
target="_blank"
rel="noopener noreferrer"
class="godo-tracking"
title="Share on Twitter"
aria-label="Share on Twitter"
data-event-category="Article"
data-event-action="Share"
data-event-label="Footer - Twitter"
data-event-non-interaction="true">
<svg width="30" height="30" class="fill-current"><path fill-rule="evenodd" clip-rule="evenodd" d="M15 27a12 12 0 1 0 0-24 12 12 0 0 0 0 24zm4.95-16.17a2.67 2.67 0 0 0-4.6 1.84c0 .2.03.41.05.62a7.6 7.6 0 0 1-5.49-2.82 3 3 0 0 0-.38 1.34c.02.94.49 1.76 1.2 2.23a2.53 2.53 0 0 1-1.2-.33v.04c0 1.28.92 2.36 2.14 2.62-.23.05-.46.08-.71.1l-.21-.02-.27-.03a2.68 2.68 0 0 0 2.48 1.86A5.64 5.64 0 0 1 9 19.38a7.62 7.62 0 0 0 4.1 1.19c4.9 0 7.58-4.07 7.57-7.58v-.39c.52-.36.97-.83 1.33-1.38-.48.23-1 .37-1.53.43.56-.33.96-.86 1.15-1.48-.5.31-1.07.53-1.67.66z"/></svg>
</a>
<a href="https://www.facebook.com/sharer/sharer.php?u=https://patrick-lyon.hubstack.net/fit-a-cat-flap-in-a-upvc-door-panel-1723577407/"
target="_blank"
rel="noopener noreferrer"
class="godo-tracking"
title="Share on Facebook"
aria-label="Share on Facebook"
data-event-category="Article"
data-event-action="Share"
data-event-label="Footer - Facebook"
data-event-non-interaction="true">
<svg width="30" height="30" viewBox="0 0 30 30" class="fill-current"><path fill-rule="evenodd" clip-rule="evenodd" d="M15 27a12 12 0 1 0 0-24 12 12 0 0 0 0 24zm-1.23-6.03V15.6H12v-2.15h1.77v-1.6C13.77 10 14.85 9 16.42 9c.75 0 1.4.06 1.58.08v1.93h-1.09c-.85 0-1.02.43-1.02 1.05v1.38h2.04l-.27 2.15H15.9V21l-2.13-.03z"/></svg>
</a>
<a href="https://www.linkedin.com/shareArticle?mini=true&url=https://patrick-lyon.hubstack.net/fit-a-cat-flap-in-a-upvc-door-panel-1723577407/&title=Fit%20a%20Cat%20Flap%20in%20a%20UPVC%20Door%20Panel"
target="_blank"
rel="noopener noreferrer"
class="godo-trackin"
title="Share on Linkedin"
aria-label="Share on Linkedin"
data-event-category="Article"
data-event-action="Linkedin"
data-event-label="Footer - Linkedin"
data-event-non-interaction="true">
<svg width="30" height="30" class="fill-current"><path fill-rule="evenodd" clip-rule="evenodd" d="M27 15a12 12 0 1 1-24 0 12 12 0 0 1 24 0zm-14.61 5v-7.42h-2.26V20h2.26zm-1.13-8.44c.79 0 1.28-.57 1.28-1.28-.02-.73-.5-1.28-1.26-1.28-.78 0-1.28.55-1.28 1.28 0 .71.49 1.28 1.25 1.28h.01zM15.88 20h-2.5s.04-6.5 0-7.17h2.5v1.02l-.02.02h.02v-.02a2.5 2.5 0 0 1 2.25-1.18c1.64 0 2.87 1.02 2.87 3.22V20h-2.5v-3.83c0-.97-.36-1.62-1.26-1.62-.69 0-1.1.44-1.28.87-.06.15-.08.36-.08.58v4z"/></svg>
</a>
<a href="whatsapp://send?text=https://patrick-lyon.hubstack.net/fit-a-cat-flap-in-a-upvc-door-panel-1723577407/"
target="_blank"
rel="noopener noreferrer"
class="godo-tracking button is-black rounded-full text-xs w-6 h-6 md:hidden"
aria-label="Share on WhatSapp"
data-event-category="Article"
data-event-action="Share"
data-event-label="Footer - Whatsapp"
data-event-non-interaction="true">
<svg class="icon"><use xlink:href="#icon-whatsapp"></use></svg>
</a>
</aside>
</footer></article>
</main>
<footer class="footer-light py-10 lg:pt-16 text-center lg:text-left bg-gray-150">
<div class="mx-auto max-w-extreme px-4">
<div class="flex flex-col lg:flex-row justify-between">
<div class="footer-copy text-sm order-3 mt-8 flex-none lg:text-left lg:order-none lg:mt-0">
© 2025 Hub Stack. All rights reserved.
<div class="mt-2">
Design with
<svg class="icon animated infinite pulse" style="color:red;width:15px"><use xlink:href="#icon-heart"></use></svg>
by
<a href="https://godofredo.ninja" class="hover:text-primary" title="Developer FullStack.">@GodoFredoNinja</a>
</div>
</div>
<div class="mx-8">
<nav class="menu-secondary">
<ul itemscope itemtype="http://www.schema.org/SiteNavigationElement" role="menu">
<li itemprop="name" role="menuitem" class="inline-block ">
<a itemprop="url" href="#/portal/"
class="godo-tracking hover:text-primary font-medium p-2 inline-block"
data-event-category="Footer"
data-event-action="Menu"
data-event-label="Sign up"
data-event-non-interaction="true">Sign up</a>
</li>
</ul>
</nav>
</div>
<div class="js-social-media social-media footer-social-media mt-8 flex-none lg:mt-0 is-inline">
<a class="godo-tracking p-2 inline-block hover:opacity-70"
data-event-category="Header"
data-event-action="Social"
data-event-label="Facebook"
data-event-non-interaction="true"
title="Facebook ghost"
aria-label="Facebook ghost"
href="https://www.facebook.com/ghost"
target="_blank"
rel="noopener noreferrer">
<svg class="icon icon--facebook"><use xlink:href="#icon-facebook"></use></svg>
</a>
<a class="godo-tracking p-2 inline-block hover:opacity-70"
data-event-category="Header"
data-event-action="Social"
data-event-label="Twitter"
data-event-non-interaction="true"
title="Twitter @ghost"
aria-label="Twitter @ghost"
href="https://twitter.com/ghost"
target="_blank"
rel="noopener noreferrer">
<svg class="icon icon--twitter"><use xlink:href="#icon-twitter"></use></svg>
</a>
</div>
</div>
</div>
</footer>
</div>
<div id="modal-search" class="js-modal modal search flex flex-col flex-wrap items-center fixed inset-0 z-50">
<div class="absolute inset-0 bg-modal bg-opacity-60 js-modal-close"></div>
<div class="button is-black is-circle absolute js-modal-close z-3 lg:hidden" style="top:5px;right:5px">
<svg class="icon"><use xlink:href="#icon-close"></use></svg>
</div>
<div class="modal-content relative z-2 max-w-2xl w-full pt-vw6 px-5 pb-5">
<div class="search-wrap bg-blank rounded-md shadow-sm">
<form class="search-form flex w-full items-center text-base px-3 h-12">
<svg class="icon icon--search"><use xlink:href="#icon-search"></use></svg>
<input id="search-field" class="w-full is-medium" type="text" placeholder="Search..." aria-label="Search box"/>
</form>
<span class="js-search-message search-message text-sm p-2 text-gray-500 leading-none hidden">No results found</span>
<ul id="search-results" class="search-results mx-auto w-full leading-none overflow-auto"></ul>
</div>
<div class="justify-end text-xs leading-none text-white mt-2 hidden md:flex opacity-80">
<div class=""><span class="p-1 rounded bg-orange inline-block">↑</span> <span class="p-1 rounded bg-orange inline-block">↓</span> Navigate up/down</div>
<div class="ml-3"><span class="p-1 rounded bg-orange inline-block">Enter</span> Go to article</div>
<div class="ml-3"><span class="p-1 rounded bg-orange inline-block">Esc</span> Close search</div>
</div>
</div>
</div>
<div class="loadingBar top-0 fixed right-0 left-0 hidden"></div>
<svg aria-hidden="true" style="position:absolute;width:0;height:0" xmlns="http://www.w3.org/2000/svg" overflow="hidden"><defs><symbol id="icon-link" viewBox="0 0 32 32"><path stroke-linejoin="round" stroke-linecap="round" stroke-width="2.25" d="M13 22H9a6 6 0 110-12h4m6 0h4a6 6 0 110 12h-4m-8.794-6H21.92"/></symbol><symbol id="icon-map" viewBox="0 0 32 32"><path stroke-linejoin="round" stroke-linecap="round" stroke-width="2" d="M28 4L4 15.009h12.5a.5.5 0 01.5.5V28z"/></symbol><symbol id="icon-checkmark" viewBox="0 0 27 32"><path d="M13.333 27.111c6.136 0 11.111-4.974 11.111-11.111S19.47 4.889 13.333 4.889C7.197 4.889 2.222 9.863 2.222 16s4.974 11.111 11.111 11.111zm0 2.222C5.969 29.333 0 23.364 0 16S5.969 2.667 13.333 2.667 26.666 8.636 26.666 16s-5.969 13.333-13.333 13.333zm-1.592-10.398l-4.289-4.287-1.571 1.573 5.861 5.857 9.421-9.443-1.573-1.569-7.849 7.868z"/></symbol><symbol id="icon-sunny" viewBox="0 0 32 32"><path d="M16 24.188a.963.963 0 00-.963.962v2.887a.963.963 0 001.925 0V25.15a.963.963 0 00-.963-.962zM16 3a.963.963 0 00-.963.962v2.887a.963.963 0 001.925 0V3.961a.963.963 0 00-.963-.962zM7.813 16a.963.963 0 00-.963-.963H3.962a.963.963 0 000 1.925H6.85a.963.963 0 00.963-.963zm20.225-.963h-2.887a.963.963 0 000 1.925h2.887a.963.963 0 000-1.926zM9.531 21.506c-.256 0-.5.1-.681.281l-2.044 2.044c-.181.181-.281.425-.281.681a.96.96 0 00.962.962c.256 0 .5-.1.681-.281l2.044-2.044a.966.966 0 000-1.363.96.96 0 00-.681-.281zm12.938-11.012c.256 0 .5-.1.681-.281l2.044-2.044c.181-.181.281-.425.281-.681a.96.96 0 00-.962-.962c-.256 0-.5.1-.681.281l-2.044 2.044c-.181.181-.281.425-.281.681a.96.96 0 00.962.962zm-14.3-3.688c-.181-.181-.425-.281-.681-.281a.96.96 0 00-.962.962c0 .256.1.5.281.681l2.044 2.044c.181.181.425.281.681.281a.96.96 0 00.962-.962c0-.256-.1-.5-.281-.681L8.169 6.806zM23.15 21.788c-.181-.181-.425-.281-.681-.281s-.5.1-.681.281a.966.966 0 000 1.363l2.044 2.044c.181.181.425.281.681.281a.96.96 0 00.962-.962c0-.256-.1-.5-.281-.681l-2.044-2.044zM16 10c-3.306 0-6 2.694-6 6s2.694 6 6 6 6-2.694 6-6-2.694-6-6-6z"/></symbol><symbol id="icon-moon" viewBox="0 0 32 32"><path d="M12.188 7.813c0-1.644.331-3.206.931-4.631-5.7 1.381-9.931 6.513-9.931 12.631 0 7.175 5.825 13 13 13 6.119 0 11.25-4.231 12.631-9.931-1.425.6-2.994.931-4.631.931-6.625 0-12-5.375-12-12z"/></symbol><symbol id="icon-arrow" viewBox="0 0 32 32"><path d="M5.313 17.336h16.232l-7.481 7.481 1.937 1.87 10.688-10.688L16.001 5.311l-1.87 1.87 7.414 7.481H5.313v2.672z"/></symbol><symbol id="icon-close" viewBox="0 0 32 32"><path d="M25.313 8.55l-1.862-1.862-7.45 7.45-7.45-7.45L6.689 8.55l7.45 7.45-7.45 7.45 1.862 1.862 7.45-7.45 7.45 7.45 1.862-1.862-7.45-7.45z"/></symbol><symbol id="icon-comments" viewBox="0 0 32 32"><path d="M26.938 20.038c0-.275.075-.538.206-.762.038-.069.087-.131.131-.194A10.132 10.132 0 0029 13.438C29.019 7.675 24.156 3 18.144 3 12.9 3 8.525 6.569 7.5 11.306c-.15.694-.231 1.4-.231 2.138 0 5.769 4.675 10.569 10.688 10.569.956 0 2.244-.288 2.95-.481s1.406-.45 1.587-.519a1.644 1.644 0 011.212.019l3.544 1.256s.15.063.244.063c.275 0 .5-.219.5-.5a.805.805 0 00-.031-.169l-1.025-3.644z"/><path d="M19.906 24.531c-.225.063-.512.131-.825.2-.656.137-1.494.281-2.125.281-6.012 0-10.688-4.8-10.688-10.569 0-.412.044-.938.094-1.338.037-.269.081-.537.144-.8.063-.281.138-.563.219-.838l-.5.444C4.175 13.698 3 16.249 3 18.905c0 1.831.531 3.594 1.55 5.125.144.219.225.387.2.5s-.744 3.875-.744 3.875a.499.499 0 00.169.481.51.51 0 00.319.113.43.43 0 00.181-.038l3.506-1.381a.972.972 0 01.356-.069s.15-.012.394.081c1.181.462 2.487.75 3.794.75 2.912 0 5.65-1.256 7.506-3.444 0 0 .2-.275.431-.6a9.69 9.69 0 01-.756.231z"/></symbol><symbol id="icon-star" viewBox="0 0 32 32"><path d="M28.938 12h-9.194L16.95 3.662c-.137-.406-.519-.663-.95-.663s-.813.256-.95.663L12.256 12H3c-.55 0-1 .45-1 1 0 .056.006.119.019.169.013.219.112.463.419.706L9.994 19.2l-2.9 8.431c-.144.406 0 .863.344 1.125.181.131.35.244.563.244.206 0 .45-.106.625-.225l7.375-5.256 7.375 5.256c.175.125.419.225.625.225.212 0 .381-.106.556-.244a.99.99 0 00.344-1.125l-2.9-8.431 7.494-5.375.181-.156c.163-.175.325-.412.325-.669 0-.55-.512-1-1.063-1z"/></symbol><symbol id="icon-search" viewBox="0 0 32 32"><path d="M27.719 26.262l-6.675-6.738a9.547 9.547 0 002.094-5.969c0-5.281-4.281-9.563-9.569-9.563S4 8.279 4 13.561s4.281 9.563 9.569 9.563c2.287 0 4.381-.8 6.031-2.137l6.631 6.694a1.025 1.025 0 001.45.038 1.034 1.034 0 00.038-1.456zm-14.15-5.193c-2.006 0-3.894-.781-5.313-2.2s-2.2-3.306-2.2-5.306c0-2.006.781-3.894 2.2-5.306 1.419-1.419 3.306-2.2 5.313-2.2s3.894.781 5.313 2.2a7.46 7.46 0 012.2 5.306 7.438 7.438 0 01-2.2 5.306 7.464 7.464 0 01-5.313 2.2z"/></symbol><symbol id="icon-send" viewBox="0 0 32 32"><path d="M27.244 4.056l-22.944 10a.526.526 0 00.019.956l6.206 3.506a1 1 0 001.144-.113l12.238-10.55c.081-.069.275-.2.35-.125.081.081-.044.269-.113.35L13.556 20.005a.997.997 0 00-.1 1.194l4.056 6.506c.2.394.769.387.95-.012L27.95 4.749a.526.526 0 00-.706-.694z"/></symbol><symbol id="icon-heart" viewBox="0 0 32 32"><path d="M22 3.5h-.063c-2.481 0-4.675 1.313-5.938 3.25-1.262-1.938-3.456-3.25-5.938-3.25h-.063c-3.869.038-7 3.181-7 7.063 0 2.313 1.013 5.594 2.987 8.294 3.763 5.144 10.012 9.644 10.012 9.644s6.25-4.5 10.012-9.644c1.975-2.7 2.988-5.981 2.988-8.294 0-3.881-3.131-7.025-7-7.063z"/></symbol><symbol id="icon-rss" viewBox="0 0 32 32"><path d="M7.494 21.006A3.499 3.499 0 004 24.494c0 1.925 1.569 3.475 3.494 3.475 1.931 0 3.494-1.556 3.494-3.475s-1.563-3.488-3.494-3.488z"/><path d="M4 12v4.994c3 0 5.881.887 8 3.006s3 4.994 3 8h5c0-8.744-7.25-16-16-16z"/><path d="M4 4v4.994c10.688 0 18.994 8.312 18.994 19.006H28C28 14.769 17.25 4 4 4z"/></symbol><symbol id="icon-arrow-forward" viewBox="0 0 32 32"><path d="M18.381 16l-7.944-7.938c-.588-.588-.588-1.537 0-2.119s1.537-.581 2.125 0l9 8.994c.569.569.581 1.481.044 2.069l-9.037 9.056c-.294.294-.681.438-1.063.438s-.769-.144-1.063-.438a1.493 1.493 0 010-2.119l7.938-7.944z"/></symbol><symbol id="icon-twitter" viewBox="0 0 32 32"><path d="M30.75 6.844c-1.087.481-2.25.806-3.475.956a6.079 6.079 0 002.663-3.35 12.02 12.02 0 01-3.844 1.469A6.044 6.044 0 0021.675 4a6.052 6.052 0 00-6.05 6.056c0 .475.05.938.156 1.381A17.147 17.147 0 013.306 5.106a6.068 6.068 0 001.881 8.088c-1-.025-1.938-.3-2.75-.756v.075a6.056 6.056 0 004.856 5.937 6.113 6.113 0 01-1.594.212c-.388 0-.769-.038-1.138-.113a6.06 6.06 0 005.656 4.206 12.132 12.132 0 01-8.963 2.507A16.91 16.91 0 0010.516 28c11.144 0 17.231-9.231 17.231-17.238 0-.262-.006-.525-.019-.781a12.325 12.325 0 003.019-3.138z"/></symbol><symbol id="icon-linkedin" viewBox="0 0 32 32"><path d="M26.075 4H6.05C4.956 4 4 4.787 4 5.869v20.069c0 1.087.956 2.056 2.05 2.056h20.019c1.1 0 1.925-.975 1.925-2.056V5.869C28 4.788 27.169 4 26.075 4zM11.438 24H8V13.312h3.438V24zm-1.6-12.312h-.025c-1.1 0-1.813-.819-1.813-1.844C8 8.8 8.731 8 9.856 8s1.813.794 1.838 1.844c0 1.025-.713 1.844-1.856 1.844zM24 24h-3.438v-5.844c0-1.4-.5-2.356-1.744-2.356-.95 0-1.512.644-1.762 1.269-.094.225-.119.531-.119.844V24h-3.438V13.312h3.438V14.8c.5-.713 1.281-1.738 3.1-1.738 2.256 0 3.962 1.488 3.962 4.694V24z"/></symbol><symbol id="icon-facebook" viewBox="0 0 32 32"><path d="M26.675 4H5.325C4.594 4 4 4.594 4 5.325v21.35C4 27.406 4.594 28 5.325 28H16v-9.5h-2.869V15H16v-2.588c0-3.1 2.15-4.787 4.919-4.787 1.325 0 2.75.1 3.081.144v3.237h-2.206c-1.506 0-1.794.713-1.794 1.762v2.231h3.587l-.469 3.5h-3.119v9.5h6.675c.731 0 1.325-.594 1.325-1.325V5.324c0-.731-.594-1.325-1.325-1.325z"/></symbol><symbol id="icon-github" viewBox="0 0 32 32"><path d="M16 2C8.269 2 2 8.431 2 16.356c0 6.344 4.013 11.719 9.575 13.619.088.019.162.025.238.025.519 0 .719-.381.719-.712 0-.344-.012-1.244-.019-2.444a6.387 6.387 0 01-1.412.169c-2.694 0-3.306-2.094-3.306-2.094-.638-1.656-1.556-2.1-1.556-2.1-1.219-.856-.006-.881.088-.881h.006c1.406.125 2.144 1.488 2.144 1.488.7 1.225 1.637 1.569 2.475 1.569.656 0 1.25-.212 1.6-.375.125-.925.488-1.556.887-1.919-3.106-.363-6.375-1.594-6.375-7.094 0-1.569.544-2.85 1.438-3.85-.144-.363-.625-1.825.137-3.8 0 0 .1-.031.313-.031.506 0 1.65.194 3.537 1.506a13.098 13.098 0 013.506-.481c1.188.006 2.387.162 3.506.481 1.887-1.313 3.031-1.506 3.538-1.506.212 0 .313.031.313.031.762 1.975.281 3.438.137 3.8.894 1.006 1.438 2.287 1.438 3.85 0 5.513-3.275 6.725-6.394 7.081.5.444.95 1.319.95 2.656 0 1.919-.019 3.469-.019 3.938 0 .337.194.719.712.719.075 0 .163-.006.25-.025 5.569-1.9 9.575-7.281 9.575-13.619 0-7.925-6.269-14.356-14-14.356z"/></symbol><symbol id="icon-instagram" viewBox="0 0 32 32"><path d="M21 6c1.325 0 2.581.525 3.531 1.469S26 9.675 26 11v10c0 1.325-.525 2.581-1.469 3.531S22.325 26 21 26H11c-1.325 0-2.581-.525-3.531-1.469S6 22.325 6 21V11c0-1.325.525-2.581 1.469-3.531S9.675 6 11 6h10zm0-2H11c-3.85 0-7 3.15-7 7v10c0 3.85 3.15 7 7 7h10c3.85 0 7-3.15 7-7V11c0-3.85-3.15-7-7-7z"/><path d="M22.5 11c-.831 0-1.5-.669-1.5-1.5S21.669 8 22.5 8a1.5 1.5 0 010 3zM16 12c2.206 0 4 1.794 4 4s-1.794 4-4 4-4-1.794-4-4 1.794-4 4-4zm0-2c-3.313 0-6 2.688-6 6s2.688 6 6 6 6-2.688 6-6-2.688-6-6-6z"/></symbol><symbol id="icon-youtube" viewBox="0 0 32 32"><path d="M31.788 9.3c0-2.813-2.069-5.075-4.625-5.075A227.074 227.074 0 0016.563 4h-1.125c-3.6 0-7.137.063-10.6.225C2.288 4.225.219 6.5.219 9.312A91.857 91.857 0 000 15.987c-.006 2.225.063 4.45.212 6.681 0 2.813 2.069 5.094 4.619 5.094 3.637.169 7.369.244 11.162.238 3.8.012 7.519-.063 11.162-.238 2.556 0 4.625-2.281 4.625-5.094a95.12 95.12 0 00.212-6.688 91.544 91.544 0 00-.206-6.681zm-18.85 12.819V9.838l9.063 6.137-9.063 6.144z"/></symbol><symbol id="icon-whatsapp" viewBox="0 0 32 32"><path d="M16.254 2C8.663 2 2.509 8.106 2.509 15.639c0 2.577.721 4.987 1.972 7.043L2 30l7.61-2.418a13.777 13.777 0 006.644 1.697C23.846 29.279 30 23.172 30 15.64S23.846 2.001 16.254 2.001zm6.835 18.819c-.323.802-1.786 1.533-2.431 1.567s-.663.5-4.178-1.027c-3.514-1.527-5.628-5.24-5.795-5.479s-1.361-1.94-1.297-3.653c.065-1.713 1.003-2.522 1.338-2.858s.718-.397.952-.401c.277-.005.456-.008.661-.001s.512-.043.778.665c.266.708.903 2.447.984 2.624s.132.383.006.611c-.126.228-.19.371-.373.568s-.386.44-.55.591c-.182.167-.373.348-.181.704s.853 1.522 1.861 2.484c1.295 1.236 2.412 1.646 2.756 1.832.345.188.55.167.764-.058.213-.225.915-.984 1.162-1.323s.479-.273.796-.146c.317.128 2.01 1.035 2.355 1.222s.575.283.657.431c.082.149.056.846-.267 1.647z"/></symbol><symbol id="icon-reddit" viewBox="0 0 28 28"><path d="M28 13.219A3.105 3.105 0 0126.297 16c.125.484.187.984.187 1.5 0 4.937-5.578 8.937-12.453 8.937-6.859 0-12.437-4-12.437-8.937 0-.5.063-1 .172-1.469A3.135 3.135 0 010 13.219a3.107 3.107 0 015.375-2.125c2.109-1.469 4.922-2.422 8.047-2.531L15.235.422a.547.547 0 01.641-.406l5.766 1.266a2.337 2.337 0 014.422 1.047 2.34 2.34 0 01-2.344 2.344 2.334 2.334 0 01-2.328-2.328l-5.219-1.156-1.625 7.375c3.141.094 5.984 1.031 8.109 2.5a3.063 3.063 0 012.234-.953A3.107 3.107 0 0128 13.22zM6.531 16.328a2.338 2.338 0 002.328 2.344 2.34 2.34 0 002.344-2.344A2.338 2.338 0 008.859 14a2.334 2.334 0 00-2.328 2.328zm12.656 5.547a.557.557 0 000-.812.566.566 0 00-.797 0c-.938.953-2.953 1.281-4.391 1.281s-3.453-.328-4.391-1.281a.566.566 0 00-.797 0 .557.557 0 000 .812c1.484 1.484 4.344 1.594 5.187 1.594s3.703-.109 5.187-1.594zm-.046-3.203a2.338 2.338 0 002.328-2.344A2.334 2.334 0 0019.141 14a2.338 2.338 0 00-2.344 2.328 2.34 2.34 0 002.344 2.344z"/></symbol></defs></svg>
<script>
var siteUrl = 'https://hubstack.net';
var siteSearch = '/assets/scripts/search.js?v=b694e0fcb3';
var prismJs = '/assets/scripts/prismjs.js?v=b694e0fcb3';
var prismJsComponents = 'https://cdnjs.cloudflare.com/ajax/libs/prism/1.25.0/components/';
</script>
<script src="/assets/scripts/post.js?v=b694e0fcb3"></script>
</body>
</html>