PageSourceSearch

https://bandruption.ai/

html bandruption.ai collected 2026-10-05 13:46:20 UTC 8,066 bytes, 180 lines download raw bytes

1<!doctype html>
2<html lang="en-US">
3  <head>
4    <meta charset="utf-8" />
5    <base href="/" />
6    <meta name="theme-color" content="#171717" />
7    <meta name="mobile-web-app-capable" content="yes" />
8    <meta name="apple-mobile-web-app-capable" content="yes" />
9    <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
10    <meta name="description" content="Bandruption AI - AI tools for artists and teams" />
11    <title>Bandruption AI</title>
12    <link rel="icon" type="image/png" sizes="32x32" href="assets/favicon-32x32.png" />
13    <link rel="icon" type="image/png" sizes="16x16" href="assets/favicon-16x16.png" />
14    <link rel="apple-touch-icon" href="assets/apple-touch-icon-180x180.png" />
15    <meta
16      name="viewport"
17      content="width=device-width, initial-scale=1, interactive-widget=resizes-content"
18    />
19    <style>
20      html,
21      body {
22        margin: 0;
23        padding: 0;
24        height: 100%;
25      }
26    </style>
27    
27<script>
28      const theme = localStorage.getItem('color-theme');
29      const loadingContainerStyle = document.createElement('style');
30      let backgroundColor;
31
32      if (theme === 'dark') {
33        backgroundColor = '#0d0d0d';
34      } else if (theme === 'light') {
35        backgroundColor = '#ffffff';
36      } else if (theme === 'system') {
37        const prefersDarkScheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
38        backgroundColor = prefersDarkScheme ? '#0d0d0d' : '#ffffff';
39      } else {
40        backgroundColor = '#ffffff';
41      }
42
43      loadingContainerStyle.innerHTML = `
44        #loading-container {
45          display: flex;
46          align-items: center;
47          justify-content: center;
48          height: 100vh;
49          background-color: ${backgroundColor};
50        }
51      `;
52      document.head.appendChild(loadingContainerStyle);
53    </script>
53
54    
54<script>
55      (function () {
56        var KEY = 'lc-asset-recovery-at';
57        function shouldRecover() {
58          try {
59            var last = Number(sessionStorage.getItem(KEY)) || 0;
60            if (Date.now() - last < 60000) {
61              return false;
62            }
63            sessionStorage.setItem(KEY, String(Date.now()));
64            return true;
65          } catch (e) {
66            return false;
67          }
68        }
69        /** Recovers from stale builds (e.g. an outdated service worker serving old
70         * hashed chunks after a deploy) by unregistering workers and reloading once.
71         * Returns true when a recovery reload was initiated. */
72        window.__lcRecoverStaleAssets = function () {
73          if (!shouldRecover()) {
74            return false;
75          }
76          var reload = function () {
77            window.location.reload();
78          };
79          if (navigator.serviceWorker) {
80            var scopeBase = new URL('./', document.baseURI || window.location.href).href;
81            navigator.serviceWorker
82              .getRegistrations()
83              .then(function (registrations) {
84                return Promise.all(
85                  registrations
86                    .filter(function (registration) {
87                      return registration.scope.indexOf(scopeBase) === 0;
88                    })
89                    .map(function (registration) {
90                      return registration.unregister();
91                    }),
92                );
93              })
94              .then(reload, reload);
95          } else {
96            reload();
97          }
98          return true;
99        };
100        if (navigator.serviceWorker) {
101          navigator.serviceWorker.addEventListener('message', function (event) {
102            if (!event.data || event.data.type !== 'LC_SW_PING') {
103              return;
104            }
105            var source = event.source || navigator.serviceWorker.controller;
106            if (source) {
107              source.postMessage({ type: 'LC_SW_PONG' });
108            }
109          });
110        }
111        window.addEventListener(
112          'error',
113          function (event) {
114            var el = event.target;
115            if (!el || !el.tagName) {
116              return;
117            }
118            var failedScript = el.tagName === 'SCRIPT' && el.src;
119            var failedPreload =
120              el.tagName === 'LINK' && /preload/.test(el.rel || '') && /\.js$/.test(el.href || '');
121            if (failedScript || failedPreload) {
122              window.__lcRecoverStaleAssets();
123            }
124          },
125          true,
126        );
127        window.addEventListener('unhandledrejection', function (event) {
128          var message = event.reason && event.reason.message;
129          if (
130            typeof message === 'string' &&
131            (message.indexOf('dynamically imported module') !== -1 ||
132              message.indexOf('Importing a module script failed') !== -1)
133          ) {
134            window.__lcRecoverStaleAssets();
135          }
136        });
137      })();
138    </script>
138
139    
139<script type="module" crossorigin src="./assets/index.DDzkvBeK.js"></script>
139
140    <link rel="modulepreload" crossorigin href="./assets/rolldown-runtime.Cyuzqnbw.js">
141    <link rel="modulepreload" crossorigin href="./assets/codemirror-core.DCeggAsc.js">
142    <link rel="modulepreload" crossorigin href="./assets/http-client.D1qXypdn.js">
143    <link rel="modulepreload" crossorigin href="./assets/mermaid.CpNRA-E5.js">
144    <link rel="modulepreload" crossorigin href="./assets/advanced-inputs.BKUrQSBb.js">
145    <link rel="modulepreload" crossorigin href="./assets/animations.D3Hqw1ZV.js">
146    <link rel="modulepreload" crossorigin href="./assets/react-vtree.BjPI7UI5.js">
147    <link rel="modulepreload" crossorigin href="./assets/query-devtools.eCLhNcV1.js">
148    <link rel="modulepreload" crossorigin href="./assets/validation.C7Ukr8TS.js">
149    <link rel="modulepreload" crossorigin href="./assets/vendor.BmYKWJ2m.js">
150    <link rel="modulepreload" crossorigin href="./assets/avatars.CH7OGiPh.js">
151    <link rel="modulepreload" crossorigin href="./assets/headlessui.CLu2eCui.js">
152    <link rel="modulepreload" crossorigin href="./assets/radix-ui.BGabDvh9.js">
153    <link rel="modulepreload" crossorigin href="./assets/react-interactions.Ggqtj1A5.js">
154    <link rel="modulepreload" crossorigin href="./assets/routing.Cb7G0LKm.js">
155    <link rel="modulepreload" crossorigin href="./assets/tanstack-vendor.BolsaK2r.js">
156    <link rel="modulepreload" crossorigin href="./assets/markdown-processing.BqkdC0TQ.js">
157    <link rel="modulepreload" crossorigin href="./assets/date-utils.7tLVf9uC.js">
158    <link rel="modulepreload" crossorigin href="./assets/framer-motion.CMPOPEls.js">
159    <link rel="modulepreload" crossorigin href="./assets/i18n.D3Gbp8tn.js">
160    <link rel="modulepreload" crossorigin href="./assets/utilities.B8O80BWK.js">
161    <link rel="modulepreload" crossorigin href="./assets/forms.DK8PnfVW.js">
162    <link rel="modulepreload" crossorigin href="./assets/virtualization.BuPzdacZ.js">
163    <link rel="modulepreload" crossorigin href="./assets/hooks.BnKee1XB.js">
164    <link rel="modulepreload" crossorigin href="./assets/sandpack.CEJsOUxH.js">
165    <link rel="modulepreload" crossorigin href="./assets/MyFilesModal.C87wrI9C.js">
166    <link rel="modulepreload" crossorigin href="./assets/security-ui.BjsCPful.js">
167    <link rel="modulepreload" crossorigin href="./assets/ProjectCreateDialog.Crk6smpR.js">
168    <link rel="modulepreload" crossorigin href="./assets/forms.D5HqURqh.js">
169    <link rel="modulepreload" crossorigin href="./assets/polyfills.BnDHDYRr.js">
170    <link rel="modulepreload" crossorigin href="./assets/code-editor.CMtCNxFi.js">
171    <link rel="modulepreload" crossorigin href="./assets/math-katex.BMlcaHSk.js">
172    <link rel="stylesheet" crossorigin href="./assets/math-katex.uZ8_QngQ.css">
173    <link rel="stylesheet" crossorigin href="./assets/index.Z0H9qdXD.css">
174  <link rel="manifest" href="./manifest.webmanifest" crossorigin="use-credentials">
174<script id="vite-plugin-pwa:register-sw" src="./registerSW.js"></script>
174</head>
175  <body>
176    <div id="root">
177      <div id="loading-container"></div>
178    </div>
179  </body>
180</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.