PageSourceSearch

https://www.composewithai.com/login?return_url=/admin

html composewithai.com collected 2026-10-06 15:07:12 UTC 7,559 bytes, 178 lines download raw bytes

1
2<!DOCTYPE html>
3<html lang="en">
4  <head>
5    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
6    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
7    <title>Sign In | Compose with AI</title>
8    
9<link rel="apple-touch-icon" sizes="180x180" href="https://res.cloudinary.com/caboose/image/upload/c_scale,f_png,h_180,q_auto:good,w_180/v1724352577/caboose/favicons/1645_thumb.png?_a=BACAGSBn">
10	<link rel="icon" type="image/png" sizes="32x32" href="https://res.cloudinary.com/caboose/image/upload/c_scale,f_png,h_32,q_auto:good,w_32/v1724352577/caboose/favicons/1645_thumb.png?_a=BACAGSBn">
11	<link rel="icon" type="image/png" sizes="16x16" href="https://res.cloudinary.com/caboose/image/upload/c_scale,f_png,h_16,q_auto:good,w_16/v1724352577/caboose/favicons/1645_thumb.png?_a=BACAGSBn">
12	<meta name="msapplication-TileColor" content="#031f54">
13	<meta name="theme-color" content="#031f54">
14
15    
16    <meta property="og:site_name" content="Compose with AI">
17    <meta property="og:type" content="website" />
18    <meta name="twitter:card" content="summary" />
19    
20    <meta name="robots" content="index, follow" />
21      <meta property="og:url" content="https://www.composewithai.com/login" />
22      <meta property="og:description" content="Practice your AI skills with Compose with AI.">
23      <meta name="description" content="Practice your AI skills with Compose with AI.">
24      <meta property="og:image" content="https://placehold.co/1200x630">
25    <meta property="og:title" content="Sign In | Compose with AI" />
vendor: 68 bytes, lines 25-26
25
26    <script async src="https://www.googletagmanager.com/gtag/js?id=
26G-TJ99G6H0FD
vendor: 12 bytes, line 26
26"></script>
27<script>
28  
vendor: 133 bytes, lines 28-31
28window.dataLayer = window.dataLayer || [];
29  function gtag(){dataLayer.push(arguments);}
30  gtag('js', new Date());
31  gtag('config', '
31G-TJ99G6H0FD
vendor: 4 bytes, line 31
31');
32</script>
32
33      <link rel='stylesheet' type='text/css' media='all' href="https://assets.caboosecms.com/assets/themes/theme_1090_site_1645-F1fMyW9QM9fO3m3fpRRV-g.css" />
34      <link rel='stylesheet' type='text/css' media='all' href="https://assets.caboosecms.com/assets/pages/page_15731_izcZbsQCyGcslcePF4Oa4w.css" />
35      
36    
37    
38    
39    
40      <link rel="stylesheet" media="screen" href="https://assets.caboosecms.com/assets/caboose/login-524a03af218f4b6006f671307fde243eea8bafe4d1b938d360889209f146dba1.css" />
41  <style>
42    body {
43      background-image: url("https://res.cloudinary.com/caboose/image/upload/c_scale,f_auto,q_auto:best,w_1400/caboose/media/15171621_login-bg_huge.png");
44      min-height: 100vh;
45      background-position: center bottom;
46      background-repeat: no-repeat;
47      background-size: 78%;
48    }
49  </style>
50
51  <style>
52  .subpage-content { padding: 0 0;}
53  </style>
54
55    <meta name="csrf-param" content="authenticity_token" />
56<meta name="csrf-token" content="+ZDTV0SGK4fmdHoCAjUofaYXLzVoM0ps4J3AwJ8LpQgNZkbqJ0iYrFYHCwT/1TSqLglVED9AGkc8Ee7jO6fIlw==" />
57
58    
59  </head>
60  <body >
61    
62        <div class="delay-show">
63    <div id="mmenu">
64      <ul class="top-ul">
65        <li><a href="/" title="Home">Home</a></li>
66      </ul>
67    </div>
68  </div>
69
70    <div class="container" id='block_3267186'>
71      
72<div class="content_wrapper subpage" id='block_3267187' >
73  <div class="content_body subpage-content">
74      
75      <header class="login-header">
76  <div class="constrain">
77    <a href="/" class="logo-link">
78      <img src="https://assets.caboosecms.com/media/15171619_logo.svg" alt="Compose with AI" width="250" height="33" />
79    </a>
80  </div>
81</header>
82
83<div class="caboose-login-wrapper">
84  <div class="caboose-login-form-wrapper">
85    <h5>Ready to learn?</h5>
86    <form action="/login" method="POST" id="caboose-login-form">
87      <input type="hidden" name="authenticity_token" id="authenticity_token" value="UuD3La3LbVLpJcotxj9lrZhNINJS6VCR181nlizDNwumFmKQzgXeeVlWuys733l6EFNa9wWaALoLQUm1iG9alA==" />
88      <div class="field">
89        <label for="caboose-login-username">Username</label>
90        <input type="text" name="username" id="caboose-login-username" />
91      </div>
92      <div class="field">
93        <label for="caboose-login-password">Password</label>
94        <input type="password" name="password" id="caboose-login-password" />
95      </div>
96      <input type="hidden" name="return_url" value="/project-ai/app" />
97      <div class="caboose-links">
98        <div class="field cb">
99          <input type="checkbox" checked="true" id="remember" name="remember" />
100          <label for="remember">Remember me</label>
101        </div>
102      </div>
103      <input type="submit" class="alternate btn arrow" id="caboose-login-btn" value="Sign In" />
104    </form>
105    <div id="caboose-login-message"></div>
106    
107  </div>
108</div>
109
110
111
112      
113  </div>
114</div>
115 
116    </div>
117        
117<script src="https://assets.caboosecms.com/assets/caboose/application-1f8fbd9374426fb3c0f4aa05c04d2d51e52d50e906fae5d792c0edffeb8629b6.js.gz"></script>
117
118      
118<script src="https://assets.caboosecms.com/assets/themes/theme_1090_site_1645_guKTxPCdcgCYur5CeFJ9RA.js"></script>
vendor: 101 bytes, lines 118-125
118
119    
120    
121    
122      
123      
124    
125      <script src="https://www.google.com/recaptcha/api.js?render=
1256Ldua3sUAAAAAETzeol5JGixia3i80lTukAiQeT2
vendor: 14 bytes, lines 125-126
125"></script>
126  
126<script>
127    grecaptcha.ready(function() {
128      $("#caboose-login-btn").click(function(event) {
129        event.preventDefault();
130        if ( !$(this).hasClass("disabled") ) {
131          $(this).addClass("disabled");
132          grecaptcha.execute('6Ldua3sUAAAAAETzeol5JGixia3i80lTukAiQeT2', {action: 'cabooselogin'}).then(function(token) {
133            caboose_user_login(token); 
134          });
135          return false;
136        }
137      });
138    });
139    function caboose_user_login(token) {
140      $('#caboose-login-message').html("<p class='note loading'>Logging in...</p>");
141      $.ajax({
142        url: '/login',
143        type: 'post',
144        data: ($('#caboose-login-form').serialize() + "&captchatoken=" + token),
145        success: function(resp) {
146          if (resp.error) {
147            $('#caboose-login-message').html("<p class='note error'>" + resp.error + "</p>");
148            if ( !resp.disable ) { $("#caboose-login-btn").removeClass("disabled"); }
149          }   
150          else if (resp.redirect != false) {
151            window.location = resp.redirect;
152          }
153          else {
154            window.location.reload(true);
155          }
156        }   
157      });
158    };
159
160    // Fix 3rd Login Screen
161    window.onload = function() {
162      if (window.location.href === 'http://dev.projectai.com:3000/login?return_url=/project-ai/app' || window.location.href === 'https://composewithai.com/login?return_url=/project-ai/app' || window.location.href === 'https://www.composewithai.com/login?return_url=/project-ai/app') {
163        console.log("Redirecting");
164        window.location.href = '/';  // Redirects to the homepage
165      }
166    };
167
168  </script>
168
169
170
171    
172    
172<script type="application/ld+json">{"@context":"http://schema.org","@type":"Organization","name":"UA Project AI","url":"https://www.composewithai.com","sameAs":[]}</script>
172
173    
173<script>window.page_navigation = [{"id":15731,"parent_id":-1,"title":"Home","menu_title":null,"uri":null,"redirect_url":null,"sort_order":0,"unclickable":false}]</script>
173
174  
174<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"9b2e8e81a3bf49779ffc6aa12ac3252d","r":1,"spa":2}' crossorigin="anonymous"></script>
174
175</body>
176</html>
177
178

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.