GitHub.com
tcp/80
cloudflare
tcp/443 tcp/80 tcp/8443
Open service 185.199.110.153:80 · kopf.dev
2026-02-07 11:46
HTTP/1.1 200 OK
Connection: close
Content-Length: 40668
Server: GitHub.com
Content-Type: text/html; charset=utf-8
Last-Modified: Sat, 07 Feb 2026 11:25:01 GMT
Access-Control-Allow-Origin: *
ETag: "6987210d-9edc"
expires: Sat, 07 Feb 2026 11:56:59 GMT
Cache-Control: max-age=600
x-proxy-cache: MISS
X-GitHub-Request-Id: FFAF:26DE27:A139CB:B376B7:69872632
Accept-Ranges: bytes
Age: 0
Date: Sat, 07 Feb 2026 11:46:59 GMT
Via: 1.1 varnish
X-Served-By: cache-pao-kpao1770066-PAO
X-Cache: MISS
X-Cache-Hits: 0
X-Timer: S1770464819.031268,VS0,VE150
Vary: Accept-Encoding
X-Fastly-Request-ID: d98cf8a0d2c8f2bf72dbac7399d1f6d013c23dbd
Page title: Kopf — Kubernetes Operator Pythonic Framework
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Kopf — Kubernetes Operator Pythonic Framework</title>
<meta name="description" content="Build Kubernetes operators in Python with minimal code. Production-ready, batteries-included framework with decorators, daemons, timers, webhooks, and more.">
<link rel="canonical" href="https://kopf.dev">
<script src="https://cdn.tailwindcss.com"></script>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/python.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/dockerfile.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/bash.min.js"></script>
<script>
tailwind.config = {
theme: {
extend: {
fontFamily: {
sans: ['Inter', 'system-ui', 'sans-serif'],
mono: ['JetBrains Mono', 'monospace'],
},
colors: {
kopf: {
50: '#eef7ff',
100: '#d9edff',
200: '#bce0ff',
300: '#8eccff',
400: '#59b0ff',
500: '#3490fc',
600: '#1e72f1',
700: '#165bde',
800: '#184ab4',
900: '#1a418e',
950: '#142956',
},
},
},
},
}
</script>
<style>
html { scroll-behavior: smooth; }
.hero-gradient {
background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #142956 100%);
}
.code-window {
background: #0d1117;
border: 1px solid #30363d;
}
.code-window-bar {
background: #161b22;
border-bottom: 1px solid #30363d;
}
.feature-card {
transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.feature-card:hover {
transform: translateY(-2px);
box-shadow: 0 12px 24px -8px rgba(0, 0, 0, 0.15);
}
pre code.hljs {
background: transparent !important;
padding: 0 !important;
}
.tab-btn.active {
color: #3490fc;
border-color: #3490fc;
}
.tab-content { display: none; }
.tab-content.active { display: block; }
</style>
</head>
<body class="bg-white text-slate-900 font-sans antialiased">
<!-- Navigation -->
<nav class="fixed top-0 w-full z-50 bg-white/80 backdrop-blur-lg border-b border-slate-200">
<div class="max-w-6xl mx-auto px-6 h-16 flex items-center justify-between">
<a href="#" class="flex items-center gap-2.5 text-xl font-bold tracking-tight text-slate-900">
<svg width="28" height="28" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="32" height="32" rx="8" fill="#1e72f1"/>
<text x="16" y="22" text-anchor="middle" fill="white" font-size="18" font-weight="bold" font-family="Inter, sans-serif">K</text>
</svg>
Kopf
</a>
<div class="hidden md:flex items-center gap-8 text-sm font-medium text-slate-600">
<a href="#features" class="hover:text-slate-900 transition-colors">Features</a>
<a href="#examples" class="hover:text-slate-900 transition-colors">Examples</a>
<a href="#get-started" class="hover:text-slate-900 transition-colors">Get Started</a>
<a href="https://kopf.readthedocs.io/" class="hover:text-slate-900 transition-colors" target="_blank" rel="noopener">Docs</a>
</div>
<div class="flex items-center gap-3">
<a href="https://gith
Open service 185.199.109.153:80 · kopf.dev
2026-02-07 11:46
HTTP/1.1 200 OK
Connection: close
Content-Length: 40668
Server: GitHub.com
Content-Type: text/html; charset=utf-8
Last-Modified: Sat, 07 Feb 2026 11:25:01 GMT
Access-Control-Allow-Origin: *
ETag: "6987210d-9edc"
expires: Sat, 07 Feb 2026 11:56:59 GMT
Cache-Control: max-age=600
x-proxy-cache: MISS
X-GitHub-Request-Id: 9488:1D89CE:914E07:A9B03B:69872632
Accept-Ranges: bytes
Date: Sat, 07 Feb 2026 11:46:59 GMT
Via: 1.1 varnish
Age: 0
X-Served-By: cache-yyz4540-YYZ
X-Cache: HIT
X-Cache-Hits: 1
X-Timer: S1770464819.022115,VS0,VE16
Vary: Accept-Encoding
X-Fastly-Request-ID: 3cefd984c7fbf59f3708bd400fb249bfea589826
Page title: Kopf — Kubernetes Operator Pythonic Framework
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Kopf — Kubernetes Operator Pythonic Framework</title>
<meta name="description" content="Build Kubernetes operators in Python with minimal code. Production-ready, batteries-included framework with decorators, daemons, timers, webhooks, and more.">
<link rel="canonical" href="https://kopf.dev">
<script src="https://cdn.tailwindcss.com"></script>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/python.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/dockerfile.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/bash.min.js"></script>
<script>
tailwind.config = {
theme: {
extend: {
fontFamily: {
sans: ['Inter', 'system-ui', 'sans-serif'],
mono: ['JetBrains Mono', 'monospace'],
},
colors: {
kopf: {
50: '#eef7ff',
100: '#d9edff',
200: '#bce0ff',
300: '#8eccff',
400: '#59b0ff',
500: '#3490fc',
600: '#1e72f1',
700: '#165bde',
800: '#184ab4',
900: '#1a418e',
950: '#142956',
},
},
},
},
}
</script>
<style>
html { scroll-behavior: smooth; }
.hero-gradient {
background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #142956 100%);
}
.code-window {
background: #0d1117;
border: 1px solid #30363d;
}
.code-window-bar {
background: #161b22;
border-bottom: 1px solid #30363d;
}
.feature-card {
transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.feature-card:hover {
transform: translateY(-2px);
box-shadow: 0 12px 24px -8px rgba(0, 0, 0, 0.15);
}
pre code.hljs {
background: transparent !important;
padding: 0 !important;
}
.tab-btn.active {
color: #3490fc;
border-color: #3490fc;
}
.tab-content { display: none; }
.tab-content.active { display: block; }
</style>
</head>
<body class="bg-white text-slate-900 font-sans antialiased">
<!-- Navigation -->
<nav class="fixed top-0 w-full z-50 bg-white/80 backdrop-blur-lg border-b border-slate-200">
<div class="max-w-6xl mx-auto px-6 h-16 flex items-center justify-between">
<a href="#" class="flex items-center gap-2.5 text-xl font-bold tracking-tight text-slate-900">
<svg width="28" height="28" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="32" height="32" rx="8" fill="#1e72f1"/>
<text x="16" y="22" text-anchor="middle" fill="white" font-size="18" font-weight="bold" font-family="Inter, sans-serif">K</text>
</svg>
Kopf
</a>
<div class="hidden md:flex items-center gap-8 text-sm font-medium text-slate-600">
<a href="#features" class="hover:text-slate-900 transition-colors">Features</a>
<a href="#examples" class="hover:text-slate-900 transition-colors">Examples</a>
<a href="#get-started" class="hover:text-slate-900 transition-colors">Get Started</a>
<a href="https://kopf.readthedocs.io/" class="hover:text-slate-900 transition-colors" target="_blank" rel="noopener">Docs</a>
</div>
<div class="flex items-center gap-3">
<a href="https://gith
Open service 2606:50c0:8002::153:80 · kopf.dev
2026-02-07 11:46
HTTP/1.1 200 OK
Connection: close
Content-Length: 40668
Server: GitHub.com
Content-Type: text/html; charset=utf-8
Last-Modified: Sat, 07 Feb 2026 11:25:01 GMT
Access-Control-Allow-Origin: *
ETag: "6987210d-9edc"
expires: Sat, 07 Feb 2026 11:56:59 GMT
Cache-Control: max-age=600
x-proxy-cache: MISS
X-GitHub-Request-Id: 9488:1D89CE:914E07:A9B03B:69872632
Accept-Ranges: bytes
Age: 0
Date: Sat, 07 Feb 2026 11:46:59 GMT
Via: 1.1 varnish
X-Served-By: cache-yyz4575-YYZ
X-Cache: MISS
X-Cache-Hits: 0
X-Timer: S1770464819.004631,VS0,VE33
Vary: Accept-Encoding
X-Fastly-Request-ID: 7e9a9f154834c0b32281c3ab5737b5e49aa81dcb
Page title: Kopf — Kubernetes Operator Pythonic Framework
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Kopf — Kubernetes Operator Pythonic Framework</title>
<meta name="description" content="Build Kubernetes operators in Python with minimal code. Production-ready, batteries-included framework with decorators, daemons, timers, webhooks, and more.">
<link rel="canonical" href="https://kopf.dev">
<script src="https://cdn.tailwindcss.com"></script>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/python.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/dockerfile.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/bash.min.js"></script>
<script>
tailwind.config = {
theme: {
extend: {
fontFamily: {
sans: ['Inter', 'system-ui', 'sans-serif'],
mono: ['JetBrains Mono', 'monospace'],
},
colors: {
kopf: {
50: '#eef7ff',
100: '#d9edff',
200: '#bce0ff',
300: '#8eccff',
400: '#59b0ff',
500: '#3490fc',
600: '#1e72f1',
700: '#165bde',
800: '#184ab4',
900: '#1a418e',
950: '#142956',
},
},
},
},
}
</script>
<style>
html { scroll-behavior: smooth; }
.hero-gradient {
background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #142956 100%);
}
.code-window {
background: #0d1117;
border: 1px solid #30363d;
}
.code-window-bar {
background: #161b22;
border-bottom: 1px solid #30363d;
}
.feature-card {
transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.feature-card:hover {
transform: translateY(-2px);
box-shadow: 0 12px 24px -8px rgba(0, 0, 0, 0.15);
}
pre code.hljs {
background: transparent !important;
padding: 0 !important;
}
.tab-btn.active {
color: #3490fc;
border-color: #3490fc;
}
.tab-content { display: none; }
.tab-content.active { display: block; }
</style>
</head>
<body class="bg-white text-slate-900 font-sans antialiased">
<!-- Navigation -->
<nav class="fixed top-0 w-full z-50 bg-white/80 backdrop-blur-lg border-b border-slate-200">
<div class="max-w-6xl mx-auto px-6 h-16 flex items-center justify-between">
<a href="#" class="flex items-center gap-2.5 text-xl font-bold tracking-tight text-slate-900">
<svg width="28" height="28" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="32" height="32" rx="8" fill="#1e72f1"/>
<text x="16" y="22" text-anchor="middle" fill="white" font-size="18" font-weight="bold" font-family="Inter, sans-serif">K</text>
</svg>
Kopf
</a>
<div class="hidden md:flex items-center gap-8 text-sm font-medium text-slate-600">
<a href="#features" class="hover:text-slate-900 transition-colors">Features</a>
<a href="#examples" class="hover:text-slate-900 transition-colors">Examples</a>
<a href="#get-started" class="hover:text-slate-900 transition-colors">Get Started</a>
<a href="https://kopf.readthedocs.io/" class="hover:text-slate-900 transition-colors" target="_blank" rel="noopener">Docs</a>
</div>
<div class="flex items-center gap-3">
<a href="https://gith
Open service 104.16.254.120:8443 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:45 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://kopf.readthedocs.io/en/stable/ CF-Ray: 9c3fd8950a70c1c9-BLR CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding cdn-cache-control: public cross-origin-opener-policy: same-origin referrer-policy: no-referrer-when-downgrade x-backend: web-i-0d2e8faa9222b8647 x-content-type-options: nosniff x-rtd-domain: docs.kopf.dev x-rtd-force-addons: true x-rtd-project: kopf x-rtd-project-method: custom_domain x-rtd-redirect: system x-rtd-version-method: path x-served: Django-Proxito Set-Cookie: __cf_bm=JhkAbiIRDxM_ZtJahBLPbjkIpLndwY_nH26RDbEmrvs-1769428785-1.0.1.1-kkK_vlsBkBZZ0E0Cun8dxSfsY4av0aCUea4lKr8Q28hmbnVZtvWDo5.H55V8h51J9YCNx223X6z.B_XlBwWQOe6Fd6r1C86rOnZENdHFVWA; path=/; expires=Mon, 26-Jan-26 12:29:45 GMT; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None Set-Cookie: _cfuvid=M_.cXmzIFKINZOm9iqT0Fldem2_m.Uea0jvzMB1XP0I-1769428785470-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None alt-svc: h3=":8443"; ma=86400
Open service 104.16.253.120:443 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://kopf.readthedocs.io/en/stable/ CF-Ray: 9c3fd88fdec4aa9f-EWR CF-Cache-Status: HIT Age: 2 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding cdn-cache-control: public cross-origin-opener-policy: same-origin referrer-policy: no-referrer-when-downgrade x-backend: web-i-09c145de1a4cefa66 x-content-type-options: nosniff x-rtd-domain: docs.kopf.dev x-rtd-force-addons: true x-rtd-project: kopf x-rtd-project-method: custom_domain x-rtd-redirect: system x-rtd-version-method: path x-served: Django-Proxito Set-Cookie: __cf_bm=xkgAC_L.mAmUFi2_ibvJ0c3hHngmFS0fGS2wooKT_Do-1769428784-1.0.1.1-ovW8j0KQjoU6yZpCuhZZf6oVVlWD9x9vWe9n0AaqaZKd9sSbDmWWMloSjsCR4M9k6DaOVRq7kyzzeT6DMJwEsC4XIOZjbHbi0WXKt_vcKDw; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None Set-Cookie: _cfuvid=inKpFJQx4u1orTS4eHkqcvzQwh3_WuFv.eFf5tF9RMY-1769428784731-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None alt-svc: h3=":443"; ma=86400
Open service 104.16.253.120:80 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://docs.kopf.dev/ CF-Ray: 9c3fd88fede54325-EWR CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding CDN-Cache-Control: public Cross-Origin-Opener-Policy: same-origin Referrer-Policy: no-referrer-when-downgrade X-Backend: web-i-09c145de1a4cefa66 X-Content-Type-Options: nosniff X-RTD-Domain: docs.kopf.dev X-RTD-Project: X-RTD-Project-Method: custom_domain X-RTD-Redirect: http_to_https X-RTD-Version-Method: path X-Served: Django-Proxito Set-Cookie: __cf_bm=YzmEBIrYNhNdnlwaOOxr3XZOZ0BUm9MEPnRwZpPa1d4-1769428784-1.0.1.1-Ny.18OonSPgSBsBeZUQm7f7XwVKGxP.dl9GnxrEIpw5Wkl_FarH4ASasfB3P3B6sj4LMqyy0m8ACxPnoqWkCr.kr9J3bEzsR6AzMqgbYAPs; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly Set-Cookie: _cfuvid=NPdliZxwQ7SieF7pF2wqVazEvOPyzSvqVptPUgZxqdI-1769428784668-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly alt-svc: h3=":443"; ma=86400
Open service 2606:4700::6810:fe78:443 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://kopf.readthedocs.io/en/stable/ CF-Ray: 9c3fd8901d2d19cf-YYZ CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding cdn-cache-control: public cross-origin-opener-policy: same-origin referrer-policy: no-referrer-when-downgrade x-backend: web-i-0d2e8faa9222b8647 x-content-type-options: nosniff x-rtd-domain: docs.kopf.dev x-rtd-force-addons: true x-rtd-project: kopf x-rtd-project-method: custom_domain x-rtd-redirect: system x-rtd-version-method: path x-served: Django-Proxito Set-Cookie: __cf_bm=IqOKWD94O1QT1P.8hXs6GXLk0SWEImbOJx4hmGxr8Ao-1769428784-1.0.1.1-2c7ZFKHDMeS4r5_dBy2Gr6MMA6NfYdyeJ2f0KRhcy8m1CGu8ImvmR_iCoNX7HsoBxyAYqzXtSHM8CurBex9b0k9AZb_HyaHdvdU92qLisiM; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None Set-Cookie: _cfuvid=cWEM9OThm70SimwKtqwabDRuPR09puhtxfBWQ1YcQPk-1769428784673-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None alt-svc: h3=":443"; ma=86400
Open service 2606:4700::6810:fd78:80 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://docs.kopf.dev/ CF-Ray: 9c3fd8900de839b4-EWR CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding CDN-Cache-Control: public Cross-Origin-Opener-Policy: same-origin Referrer-Policy: no-referrer-when-downgrade X-Backend: web-i-09c145de1a4cefa66 X-Content-Type-Options: nosniff X-RTD-Domain: docs.kopf.dev X-RTD-Project: X-RTD-Project-Method: custom_domain X-RTD-Redirect: http_to_https X-RTD-Version-Method: path X-Served: Django-Proxito Set-Cookie: __cf_bm=g877X1mZ0pKsWMUGLqi0ECumLIIj_eN8AcEmJuLi_Fc-1769428784-1.0.1.1-cP7lFvB4ssbWsTFpfJAq.TSEw5EPPeWvGbGJKNt1fsBdMtG.MIJLEzVT_0TiZ.rq5JMuXDd0f63aXf1yhEZJ5JuaUmCyZ_My1oMMF5q6fCo; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly Set-Cookie: _cfuvid=QIDYJnPluBITCKVg1ZGDdPjvS7WZXtCMQrTIfw1PLos-1769428784740-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly alt-svc: h3=":443"; ma=86400
Open service 2606:4700::6810:fe78:80 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://docs.kopf.dev/ CF-Ray: 9c3fd890aab4d2a6-FRA CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding CDN-Cache-Control: public Cross-Origin-Opener-Policy: same-origin Referrer-Policy: no-referrer-when-downgrade X-Backend: web-i-09c145de1a4cefa66 X-Content-Type-Options: nosniff X-RTD-Domain: docs.kopf.dev X-RTD-Project: X-RTD-Project-Method: custom_domain X-RTD-Redirect: http_to_https X-RTD-Version-Method: path X-Served: Django-Proxito Set-Cookie: __cf_bm=yL6po0WerNmbaSO.4up0LkURPEFkxdwH2nYyRnq6hE0-1769428784-1.0.1.1-V4NxVZYFWz937ZYJoC_gF.c2KwT0GLZ4vKAghLFoDtCWt.cb8S7jX5Y4VxpvwC8nNULHdn1VG2t8fo1OmGKyCloq69lCJGf9qCdpAahCOGU; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly Set-Cookie: _cfuvid=ija3atrnGRi2om0LQRkr6B0TOoDgsV_ttgZI_Nx4JjY-1769428784791-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly alt-svc: h3=":443"; ma=86400
Open service 2606:4700::6810:fd78:443 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://kopf.readthedocs.io/en/stable/ CF-Ray: 9c3fd88fdf9ad375-FRA CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding cdn-cache-control: public cross-origin-opener-policy: same-origin referrer-policy: no-referrer-when-downgrade x-backend: web-i-0d2e8faa9222b8647 x-content-type-options: nosniff x-rtd-domain: docs.kopf.dev x-rtd-force-addons: true x-rtd-project: kopf x-rtd-project-method: custom_domain x-rtd-redirect: system x-rtd-version-method: path x-served: Django-Proxito Set-Cookie: __cf_bm=kV88XbcUvMqXUDs5I2vzs54AAAkZvUchRJFf1GCiy3k-1769428784-1.0.1.1-4nh9sbJbeOO8SqeZR_2CvNcy6WdljGBgL.Q4D8dYheVF41MBIUTEYITsAEmgfXtaH4xeeHMAJbxS2tWGze1UITPPT8o97rheUQIPyeowjFw; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None Set-Cookie: _cfuvid=5ypBQBvJp5gmILDYcVpXUTWq5i0edercp.svoWp0JXA-1769428784666-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None alt-svc: h3=":443"; ma=86400
Open service 104.16.254.120:80 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://docs.kopf.dev/ CF-Ray: 9c3fd88f9dc436d4-YYZ CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding CDN-Cache-Control: public Cross-Origin-Opener-Policy: same-origin Referrer-Policy: no-referrer-when-downgrade X-Backend: web-i-09c145de1a4cefa66 X-Content-Type-Options: nosniff X-RTD-Domain: docs.kopf.dev X-RTD-Project: X-RTD-Project-Method: custom_domain X-RTD-Redirect: http_to_https X-RTD-Version-Method: path X-Served: Django-Proxito Set-Cookie: __cf_bm=KNLPBGuKa_5SRst6eKMncxPB1ycd.HQg2w32l82dHro-1769428784-1.0.1.1-wNLBafk1KK4gEFq1WYIzeRlVcNNwl2KyNcTt0bVZgy7k5UfpvyBBUocyOYSN2SGrDELztgdPTtadZWJ4PJkeP6RvmnqsOBLhkwTcOEfTYNM; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly Set-Cookie: _cfuvid=CYWdaUxx6BRhfECSabbdORoEARoNCiN7MxSTKPpI_gE-1769428784661-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly alt-svc: h3=":443"; ma=86400
Open service 2606:4700::6810:fd78:8443 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://kopf.readthedocs.io/en/stable/ CF-Ray: 9c3fd88fbd1c39f7-YYZ CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding cdn-cache-control: public cross-origin-opener-policy: same-origin referrer-policy: no-referrer-when-downgrade x-backend: web-i-0d2e8faa9222b8647 x-content-type-options: nosniff x-rtd-domain: docs.kopf.dev x-rtd-force-addons: true x-rtd-project: kopf x-rtd-project-method: custom_domain x-rtd-redirect: system x-rtd-version-method: path x-served: Django-Proxito Set-Cookie: __cf_bm=TLJwDhgG7_41EHQVn6N6kRHJAtZL47qjyls0YboCarM-1769428784-1.0.1.1-LH3Cgh6fco.HCakPj0Pwwlr4nWXi.oBPd7SqDrKiLs.O__4M1Glol2QyNbZCyqxOfXKVj3SJOXMXI6Fsg7xo0zJTjEmaccyem6srrlfUmqs; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None Set-Cookie: _cfuvid=NA5r8raDST61.Q0f5Rhil_kFCDk.fU6P8vEbwKu8ZbQ-1769428784688-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None alt-svc: h3=":8443"; ma=86400
Open service 2606:4700::6810:fe78:8443 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://kopf.readthedocs.io/en/stable/ CF-Ray: 9c3fd88fea72fff3-AMS CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding cdn-cache-control: public cross-origin-opener-policy: same-origin referrer-policy: no-referrer-when-downgrade x-backend: web-i-0d2e8faa9222b8647 x-content-type-options: nosniff x-rtd-domain: docs.kopf.dev x-rtd-force-addons: true x-rtd-project: kopf x-rtd-project-method: custom_domain x-rtd-redirect: system x-rtd-version-method: path x-served: Django-Proxito Set-Cookie: __cf_bm=gixM2cneyGPzYr5QYQ3W2hZDFkSvJ7DtFzAV2KwuW8U-1769428784-1.0.1.1-2a0ZqNdeImXynDDJax9XruAF8U866n8m6_sn5TWCSsnSYkeadvMiC8Jld2YvvXOVzICApoiByJtXgdsslh.S45qvMM3nQVlpIjxLg2xDpOw; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None Set-Cookie: _cfuvid=dtf55zx2NQ6X1qa1fkNX8weUGPJeb5E5GpUnwLWwUSA-1769428784649-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None alt-svc: h3=":8443"; ma=86400
Open service 104.16.254.120:443 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Server: cloudflare Location: https://kopf.readthedocs.io/en/stable/ CF-Ray: 9c3fd88fad05911c-LHR CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding cdn-cache-control: public cross-origin-opener-policy: same-origin referrer-policy: no-referrer-when-downgrade x-backend: web-i-0d2e8faa9222b8647 x-content-type-options: nosniff x-rtd-domain: docs.kopf.dev x-rtd-force-addons: true x-rtd-project: kopf x-rtd-project-method: custom_domain x-rtd-redirect: system x-rtd-version-method: path x-served: Django-Proxito Set-Cookie: __cf_bm=Q4abPXcmu2uB9KbhocR8fRVrfJF4G3UGkFqGl3soHHc-1769428784-1.0.1.1-r8PBrQWCMg_U8Sr_vhYmkOEZXjRz2fZnf.PPOrxKhDklrLqt1Hr8O8AjBpx1vlb_t6fPwt2YrOCtvFEgKUeLhZ5zgX3Vsd_fG0YP5wfm4Fg; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None Set-Cookie: _cfuvid=V3IBgTpeZHKP0c5v9fUVdwpgGqxiun_cL548FXWdHR0-1769428784631-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None alt-svc: h3=":443"; ma=86400
Open service 104.16.253.120:8443 · docs.kopf.dev
2026-01-26 11:59
HTTP/1.1 302 Found Date: Mon, 26 Jan 2026 11:59:44 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Location: https://kopf.readthedocs.io/en/stable/ CF-Ray: 9c3fd88faf70dc55-FRA CF-Cache-Status: HIT Age: 1 Cache-Control: max-age=1200 Content-Language: en Vary: Accept-Language, Accept-Encoding cdn-cache-control: public cross-origin-opener-policy: same-origin referrer-policy: no-referrer-when-downgrade x-backend: web-i-0d2e8faa9222b8647 x-content-type-options: nosniff x-rtd-domain: docs.kopf.dev x-rtd-force-addons: true x-rtd-project: kopf x-rtd-project-method: custom_domain x-rtd-redirect: system x-rtd-version-method: path x-served: Django-Proxito Set-Cookie: __cf_bm=ePwCsQzGN6jm7iEzGPNWRnYFYEmVh3.gPMyjYokoy48-1769428784-1.0.1.1-l9v7_Cgr8EhHlM4bFAkMGuA58MO2oWccwA1jELSmkWudV.XvQZoPiQXW3Bd7fyDlPNAzSLs0iriOCq2jeeQvBK1XPFklMbEBMF0YmHlgS80; path=/; expires=Mon, 26-Jan-26 12:29:44 GMT; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None Set-Cookie: _cfuvid=2TvNbOAj_Sgp1s2xHyh2erye7IBzgnenLUmKElY30zY-1769428784626-0.0.1.1-604800000; path=/; domain=.docs.kopf.dev; HttpOnly; Secure; SameSite=None Server: cloudflare alt-svc: h3=":8443"; ma=86400