Caddy
tcp/443 tcp/80
cloudflare
tcp/443
Open service 75.2.96.173:443 · shapedlines.com
2026-02-01 19:01
HTTP/1.1 200 OK
Access-Control-Allow-Methods: GET,HEAD,PUT,PATCH,POST,DELETE
Access-Control-Allow-Origin: *
Alt-Svc: h3=":443"; ma=2592000
Cf-Cache-Status: DYNAMIC
Cf-Ray: 9c73b3310fab03f4-FRA
Content-Type: text/html;charset=UTF-8
Date: Sun, 01 Feb 2026 19:01:54 GMT
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=t6UdCVsoc%2BDwKk%2BoeOERn49Td27OjQP1pVW4UPbHuI2Fi%2BsysqcvLxNsyQHsHwv%2BVeSBJoq6WzBv8vZX0i9rR2m%2BSW%2BaaTF35Ixebb%2Bm2i4xWUoPunRB0Q%3D%3D"}]}
Rndr-Id: b3f30f32-9cd7-4b24
Server: cloudflare
Vary: Accept-Encoding
Via: 2.0 Caddy
X-Aws-Instance-Id: i-05e9827198076936e
X-Aws-Region: eu-central-1
X-Ratelimit-Limit: 1000
X-Ratelimit-Remaining: 999
X-Ratelimit-Reset: 60
X-Render-Origin-Server: Render
Connection: close
Transfer-Encoding: chunked
Page title: shapedlines
<html><head><title>shapedlines</title><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><link rel="icon" href="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIj4KICAgIDxkZWZzPgogICAgICA8bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjAiIHkyPSIxIj4KICAgICAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSJyZ2IoMTEwLCAxNTQsIDIwMikiIC8+CiAgICAgICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSJyZ2IoMjI3LCAyMjgsIDIyNCkiIC8+CiAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICA8L2RlZnM+CiAgICA8cmVjdCB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHJ4PSI2IiBmaWxsPSJ1cmwoI2cpIiAvPgogIDwvc3ZnPg==" type="image/svg+xml"/><link rel="preload" href="/stars.png" as="image"/><link rel="preload" href="/favicon-dark.png" as="image"/><meta name="theme-color" content="rgb(110, 154, 202)"/><script src="https://unpkg.com/@tailwindcss/browser@4"></script><style>
html {
min-height: 100%;
background: linear-gradient(to bottom, rgb(110, 154, 202) 0%, rgb(111, 155, 203) 3.23%, rgb(112, 157, 203) 6.45%, rgb(114, 158, 204) 9.68%, rgb(115, 159, 205) 12.9%, rgb(116, 160, 205) 16.13%, rgb(118, 162, 206) 19.35%, rgb(119, 163, 207) 22.58%, rgb(121, 165, 208) 25.81%, rgb(123, 167, 209) 29.03%, rgb(125, 168, 210) 32.26%, rgb(127, 170, 211) 35.48%, rgb(130, 173, 212) 38.71%, rgb(132, 175, 213) 41.94%, rgb(135, 177, 214) 45.16%, rgb(138, 180, 215) 48.39%, rgb(142, 182, 216) 51.61%, rgb(145, 185, 218) 54.84%, rgb(149, 188, 219) 58.06%, rgb(153, 191, 220) 61.29%, rgb(158, 195, 222) 64.52%, rgb(163, 198, 223) 67.74%, rgb(169, 202, 224) 70.97%, rgb(174, 206, 226) 74.19%, rgb(181, 209, 227) 77.42%, rgb(188, 213, 228) 80.65%, rgb(195, 217, 229) 83.87%, rgb(203, 221, 230) 87.1%, rgb(210, 225, 230) 90.32%, rgb(218, 228, 229) 93.55%, rgb(224, 230, 227) 96.77%, rgb(227, 228, 224) 100%);
background-attachment: fixed;
}
body {
background-color: transparent;
min-height: 100%;
}
.content-wrapper {
background: rgba(255, 255, 255, 0.85);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
border-radius: 12px;
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
}
.content-wrapper {
transition: opacity 0.5s ease, transform 0.5s ease, visibility 0.5s;
opacity: 1;
transform: translateY(0);
visibility: visible;
}
.hide-ui .content-wrapper {
opacity: 0;
transform: translateY(10px);
visibility: hidden;
pointer-events: none;
}
.hidden { display: none; }
/* FAB Container */
.fab-container {
position: fixed;
top: 0.75rem;
right: 1.25rem;
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 0.75rem;
z-index: 100;
}
/* Mobile: Position FAB at top-right of content component */
@media (max-width: 640px) {
.fab-container {
top: 2rem;
right: 2rem;
}
}
/* Main FAB button */
.fab {
width: 52px;
height: 52px;
border-radius: 26px;
background: rgba(255, 255, 255, 0.15);
backdrop-filter: blur(12px) saturate(180%);
-webkit-backdrop-filter: blur(12px) saturate(180%);
border: 1px solid rgba(255, 255, 255, 0.25);
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
font-size: 20px;
transition: all 0.3s ease;
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
}
.fab:hover {
Open service 75.2.96.173:80 · loki.shapedlines.com
2026-01-23 02:59
HTTP/1.1 308 Permanent Redirect Connection: close Location: https://loki.shapedlines.com/ Server: Caddy Date: Fri, 23 Jan 2026 03:00:13 GMT Content-Length: 0
Open service 75.2.96.173:443 · loki.shapedlines.com
2026-01-23 02:59
HTTP/1.1 200 OK
Alt-Svc: h3=":443"; ma=2592000
Cache-Control: no-cache, no-store, must-revalidate
Content-Type: text/html
Expires: 0
Pragma: no-cache
Server: Caddy
X-Aws-Instance-Id: i-0e6929aab207b9582
X-Aws-Region: ap-south-2
Date: Fri, 23 Jan 2026 02:59:56 GMT
Connection: close
Transfer-Encoding: chunked
Page title: Domain Configuration in Progress
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Domain Configuration in Progress</title> <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Expires" content="0"> <style> body { font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; margin: 0; min-height: 100vh; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #f5f7fa 0%, #e4e8eb 100%); color: #334155; line-height: 1.6; } .container { max-width: 600px; padding: 2rem; text-align: center; background: white; border-radius: 12px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06); margin: 1rem; } .logo { width: 200px; height: auto; margin-bottom: 1.5rem; cursor: pointer; } .logo-link:hover { opacity: 0.9; } h1 { color: #0f172a; font-size: 1.8rem; margin-bottom: 1rem; font-weight: 600; } p { color: #475569; margin: 1rem 0; } .status-container { display: flex; align-items: center; justify-content: center; gap: 0.75rem; margin: 1.5rem 0; } .status { display: flex; align-items: center; background: #dbeafe; color: #1e40af; padding: 0.5rem 1rem; border-radius: 9999px; font-size: 0.875rem; font-weight: 500; } .loader { width: 20px; height: 20px; border: 2px solid #e2e8f0; border-radius: 50%; border-top-color: #3b82f6; animation: spin 1s linear infinite; margin-left: 0.5rem; } @keyframes spin { to { transform: rotate(360deg); } } .tip { font-size: 0.875rem; background: #f8fafc; padding: 1rem; border-radius: 8px; margin-top: 1.5rem; } .powered-by { margin-top: 2rem; font-size: 0.875rem; color: #64748b; } .powered-by a { color: #3b82f6; text-decoration: none; font-weight: 500; } .powered-by a:hover { text-decoration: underline; } .next-refresh { font-size: 0.75rem; color: #94a3b8; margin-top: 1rem; } </style> </head> <body> <div class="container"> <h1>Almost There!</h1> <div class="status-container"> <div class="status"> Configuration in Progress <div class="loader"></div> </div> </div> <p>Your custom domain has been successfully registered and is being configured across our global network.</p> <p>This process typically takes 1-2 minutes to complete. Once finished, your domain will automatically begin serving your content.</p> <div class="tip"> No action is needed on your part. You can safely leave this page open - it will automatically start working when the configuration is complete, or you can check back in a few minutes. </div> <div class="next-refresh"> Next check in <span id="countdown">10</span> seconds </div> </div> <script> function refreshPage() { const timestamp = new Date().getTime(); window.location.href = window.location.pathname + '?t=' + timestamp; } let timeLeft = 10; const countdownElement = document.getElementById('countdown'); const countdownInterval = setInterval(() => { timeLeft -= 1; countdownElement.textContent = timeLeft; if (timeLeft <= 0) { clearInterval(countdownInterval); refreshPage(); } }, 1000); document.addEventListener('DOMContentLoaded', function() { window.onpageshow = function(event) { if (event.persisted) { window.location.reload(); } }; }); </script> </body> </html>
Open service 99.83.186.151:443 · loki.shapedlines.com
2026-01-23 02:59
HTTP/1.1 200 OK
Alt-Svc: h3=":443"; ma=2592000
Cache-Control: no-cache, no-store, must-revalidate
Content-Type: text/html
Expires: 0
Pragma: no-cache
Server: Caddy
X-Aws-Instance-Id: i-01b74195bc7c17752
X-Aws-Region: us-east-1
Date: Fri, 23 Jan 2026 02:59:52 GMT
Connection: close
Transfer-Encoding: chunked
Page title: Domain Configuration in Progress
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Domain Configuration in Progress</title> <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Expires" content="0"> <style> body { font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; margin: 0; min-height: 100vh; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #f5f7fa 0%, #e4e8eb 100%); color: #334155; line-height: 1.6; } .container { max-width: 600px; padding: 2rem; text-align: center; background: white; border-radius: 12px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06); margin: 1rem; } .logo { width: 200px; height: auto; margin-bottom: 1.5rem; cursor: pointer; } .logo-link:hover { opacity: 0.9; } h1 { color: #0f172a; font-size: 1.8rem; margin-bottom: 1rem; font-weight: 600; } p { color: #475569; margin: 1rem 0; } .status-container { display: flex; align-items: center; justify-content: center; gap: 0.75rem; margin: 1.5rem 0; } .status { display: flex; align-items: center; background: #dbeafe; color: #1e40af; padding: 0.5rem 1rem; border-radius: 9999px; font-size: 0.875rem; font-weight: 500; } .loader { width: 20px; height: 20px; border: 2px solid #e2e8f0; border-radius: 50%; border-top-color: #3b82f6; animation: spin 1s linear infinite; margin-left: 0.5rem; } @keyframes spin { to { transform: rotate(360deg); } } .tip { font-size: 0.875rem; background: #f8fafc; padding: 1rem; border-radius: 8px; margin-top: 1.5rem; } .powered-by { margin-top: 2rem; font-size: 0.875rem; color: #64748b; } .powered-by a { color: #3b82f6; text-decoration: none; font-weight: 500; } .powered-by a:hover { text-decoration: underline; } .next-refresh { font-size: 0.75rem; color: #94a3b8; margin-top: 1rem; } </style> </head> <body> <div class="container"> <h1>Almost There!</h1> <div class="status-container"> <div class="status"> Configuration in Progress <div class="loader"></div> </div> </div> <p>Your custom domain has been successfully registered and is being configured across our global network.</p> <p>This process typically takes 1-2 minutes to complete. Once finished, your domain will automatically begin serving your content.</p> <div class="tip"> No action is needed on your part. You can safely leave this page open - it will automatically start working when the configuration is complete, or you can check back in a few minutes. </div> <div class="next-refresh"> Next check in <span id="countdown">10</span> seconds </div> </div> <script> function refreshPage() { const timestamp = new Date().getTime(); window.location.href = window.location.pathname + '?t=' + timestamp; } let timeLeft = 10; const countdownElement = document.getElementById('countdown'); const countdownInterval = setInterval(() => { timeLeft -= 1; countdownElement.textContent = timeLeft; if (timeLeft <= 0) { clearInterval(countdownInterval); refreshPage(); } }, 1000); document.addEventListener('DOMContentLoaded', function() { window.onpageshow = function(event) { if (event.persisted) { window.location.reload(); } }; }); </script> </body> </html>
Open service 99.83.186.151:80 · loki.shapedlines.com
2026-01-23 02:59
HTTP/1.1 308 Permanent Redirect Connection: close Location: https://loki.shapedlines.com/ Server: Caddy Date: Fri, 23 Jan 2026 03:00:21 GMT Content-Length: 0
Open service 75.2.96.173:443 · breezy.shapedlines.com
2026-01-11 20:15
HTTP/1.1 200 OK
Alt-Svc: h3=":443"; ma=2592000
Cache-Control: no-cache, no-store, must-revalidate
Content-Type: text/html
Expires: 0
Pragma: no-cache
Server: Caddy
X-Aws-Instance-Id: i-089b4d618ae5df217
X-Aws-Region: eu-central-1
Date: Sun, 11 Jan 2026 20:15:48 GMT
Connection: close
Transfer-Encoding: chunked
Page title: Domain Configuration in Progress
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Domain Configuration in Progress</title> <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Expires" content="0"> <style> body { font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; margin: 0; min-height: 100vh; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #f5f7fa 0%, #e4e8eb 100%); color: #334155; line-height: 1.6; } .container { max-width: 600px; padding: 2rem; text-align: center; background: white; border-radius: 12px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06); margin: 1rem; } .logo { width: 200px; height: auto; margin-bottom: 1.5rem; cursor: pointer; } .logo-link:hover { opacity: 0.9; } h1 { color: #0f172a; font-size: 1.8rem; margin-bottom: 1rem; font-weight: 600; } p { color: #475569; margin: 1rem 0; } .status-container { display: flex; align-items: center; justify-content: center; gap: 0.75rem; margin: 1.5rem 0; } .status { display: flex; align-items: center; background: #dbeafe; color: #1e40af; padding: 0.5rem 1rem; border-radius: 9999px; font-size: 0.875rem; font-weight: 500; } .loader { width: 20px; height: 20px; border: 2px solid #e2e8f0; border-radius: 50%; border-top-color: #3b82f6; animation: spin 1s linear infinite; margin-left: 0.5rem; } @keyframes spin { to { transform: rotate(360deg); } } .tip { font-size: 0.875rem; background: #f8fafc; padding: 1rem; border-radius: 8px; margin-top: 1.5rem; } .powered-by { margin-top: 2rem; font-size: 0.875rem; color: #64748b; } .powered-by a { color: #3b82f6; text-decoration: none; font-weight: 500; } .powered-by a:hover { text-decoration: underline; } .next-refresh { font-size: 0.75rem; color: #94a3b8; margin-top: 1rem; } </style> </head> <body> <div class="container"> <h1>Almost There!</h1> <div class="status-container"> <div class="status"> Configuration in Progress <div class="loader"></div> </div> </div> <p>Your custom domain has been successfully registered and is being configured across our global network.</p> <p>This process typically takes 1-2 minutes to complete. Once finished, your domain will automatically begin serving your content.</p> <div class="tip"> No action is needed on your part. You can safely leave this page open - it will automatically start working when the configuration is complete, or you can check back in a few minutes. </div> <div class="next-refresh"> Next check in <span id="countdown">10</span> seconds </div> </div> <script> function refreshPage() { const timestamp = new Date().getTime(); window.location.href = window.location.pathname + '?t=' + timestamp; } let timeLeft = 10; const countdownElement = document.getElementById('countdown'); const countdownInterval = setInterval(() => { timeLeft -= 1; countdownElement.textContent = timeLeft; if (timeLeft <= 0) { clearInterval(countdownInterval); refreshPage(); } }, 1000); document.addEventListener('DOMContentLoaded', function() { window.onpageshow = function(event) { if (event.persisted) { window.location.reload(); } }; }); </script> </body> </html>
Open service 99.83.186.151:80 · breezy.shapedlines.com
2026-01-11 20:15
HTTP/1.1 308 Permanent Redirect Connection: close Location: https://breezy.shapedlines.com/ Server: Caddy Date: Sun, 11 Jan 2026 20:16:45 GMT Content-Length: 0
Open service 75.2.96.173:80 · breezy.shapedlines.com
2026-01-11 20:15
HTTP/1.1 308 Permanent Redirect Connection: close Location: https://breezy.shapedlines.com/ Server: Caddy Date: Sun, 11 Jan 2026 20:16:45 GMT Content-Length: 0
Open service 99.83.186.151:443 · breezy.shapedlines.com
2026-01-11 20:15
HTTP/1.1 200 OK
Alt-Svc: h3=":443"; ma=2592000
Cache-Control: no-cache, no-store, must-revalidate
Content-Type: text/html
Expires: 0
Pragma: no-cache
Server: Caddy
X-Aws-Instance-Id: i-0dcce8f2f6d2e7b55
X-Aws-Region: ap-south-2
Date: Sun, 11 Jan 2026 20:15:50 GMT
Connection: close
Transfer-Encoding: chunked
Page title: Domain Configuration in Progress
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Domain Configuration in Progress</title> <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Expires" content="0"> <style> body { font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; margin: 0; min-height: 100vh; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #f5f7fa 0%, #e4e8eb 100%); color: #334155; line-height: 1.6; } .container { max-width: 600px; padding: 2rem; text-align: center; background: white; border-radius: 12px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06); margin: 1rem; } .logo { width: 200px; height: auto; margin-bottom: 1.5rem; cursor: pointer; } .logo-link:hover { opacity: 0.9; } h1 { color: #0f172a; font-size: 1.8rem; margin-bottom: 1rem; font-weight: 600; } p { color: #475569; margin: 1rem 0; } .status-container { display: flex; align-items: center; justify-content: center; gap: 0.75rem; margin: 1.5rem 0; } .status { display: flex; align-items: center; background: #dbeafe; color: #1e40af; padding: 0.5rem 1rem; border-radius: 9999px; font-size: 0.875rem; font-weight: 500; } .loader { width: 20px; height: 20px; border: 2px solid #e2e8f0; border-radius: 50%; border-top-color: #3b82f6; animation: spin 1s linear infinite; margin-left: 0.5rem; } @keyframes spin { to { transform: rotate(360deg); } } .tip { font-size: 0.875rem; background: #f8fafc; padding: 1rem; border-radius: 8px; margin-top: 1.5rem; } .powered-by { margin-top: 2rem; font-size: 0.875rem; color: #64748b; } .powered-by a { color: #3b82f6; text-decoration: none; font-weight: 500; } .powered-by a:hover { text-decoration: underline; } .next-refresh { font-size: 0.75rem; color: #94a3b8; margin-top: 1rem; } </style> </head> <body> <div class="container"> <h1>Almost There!</h1> <div class="status-container"> <div class="status"> Configuration in Progress <div class="loader"></div> </div> </div> <p>Your custom domain has been successfully registered and is being configured across our global network.</p> <p>This process typically takes 1-2 minutes to complete. Once finished, your domain will automatically begin serving your content.</p> <div class="tip"> No action is needed on your part. You can safely leave this page open - it will automatically start working when the configuration is complete, or you can check back in a few minutes. </div> <div class="next-refresh"> Next check in <span id="countdown">10</span> seconds </div> </div> <script> function refreshPage() { const timestamp = new Date().getTime(); window.location.href = window.location.pathname + '?t=' + timestamp; } let timeLeft = 10; const countdownElement = document.getElementById('countdown'); const countdownInterval = setInterval(() => { timeLeft -= 1; countdownElement.textContent = timeLeft; if (timeLeft <= 0) { clearInterval(countdownInterval); refreshPage(); } }, 1000); document.addEventListener('DOMContentLoaded', function() { window.onpageshow = function(event) { if (event.persisted) { window.location.reload(); } }; }); </script> </body> </html>