PageSourceSearch

https://www.quantifymybike.com/

html quantifymybike.com collected 2026-10-02 01:40:06 UTC 12,952 bytes, 319 lines download raw bytes

1<!doctype html>
2<html lang="en">
3<head>
4	<meta charset="utf-8">
5	<meta name="viewport" content="width=device-width, initial-scale=1">
6
7	<title>Quantify My Bike | Free Bicycle Manager for Strava</title>
8	<meta name="description" content="Free bike manager for Strava users. Find the most durable MTB and road components. Track how long components last. Compare components from different brands.">
9	
9<script type="application/ld+json">
10{
11    "@context": "https://schema.org",
12    "@type": "Organization",
13    "name": "Quantify My Bike",
14    "url": "https://www.quantifymybike.com/",
15    "logo": "https://www.quantifymybike.com/images/logo_onblue.svg",
16    "sameAs": [
17        "https://www.facebook.com/quantifymybike",
18        "https://bsky.app/profile/quantifymybike.com",
19        "https://www.strava.com/clubs/quantifymybike"
20    ]
21}
22</script>
22
23	
24	<meta property="og:url" content="https://www.quantifymybike.com/" />
25	<meta property="og:type" content="website" />
26	<meta property="og:title" content="Quantify My Bike" />
27	<meta property="og:description" content="Free bike manager for Strava users. Find the most durable MTB and road components. Track how long components last. Compare components from different brands." />
28	<meta property="og:image" content="https://www.quantifymybike.com/og_images/bikes_2021-07-04.png" />
29	<meta property="fb:app_id" content="1294050384325998" />
30
31	
32    
33<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
34<link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png">
35<link rel="icon" type="image/png" sizes="16x16" href="/icons/favicon-16x16.png">
36<link rel="manifest" href="/manifest.json">
37<link rel="mask-icon" href="/icons/safari-pinned-tab.svg" color="#0d6efd">
38<meta name="msapplication-TileColor" content="#0d6efd">
39<meta name="theme-color" content="#0b5ed7">
40
41	
42	
42<script
43    src="https://cdn.jsdelivr.net/npm/[email protected]/dist/jquery.min.js"
44    integrity="sha256-OaVG6prZf4v69dPg6PhVattBXkcOWQB62pdZ3ORyrao="
45    crossorigin="anonymous"></script>
45
46	
47<script
48    src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"
49    integrity="sha256-5P1JGBOIxI7FBAvT/mb1fCnI5n/NhQKzNUuW7Hq0fMc="
50    crossorigin="anonymous"></script>
50
51	
51<script src="index.min.js" type="module"></script>
51
52
53	
54    <link
55    rel="stylesheet"
56    href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css"
57    integrity="sha256-2FMn2Zx6PuH5tdBQDRNwrOo60ts5wWPC9R8jK67b3t4="
58    crossorigin="anonymous">
59	<link rel="preconnect" href="https://fonts.gstatic.com">
60	<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Permanent+Marker&display=swap">
61	<style>
62        .header-brand {
63            font-family: "Permanent Marker", cursive;
64			font-size: 1.75rem;
65            color: #0d6efd !important;
66        }
67
68		#screenshotsCarousel {
69			max-width: 1140px;
70		}
71
72		footer, footer a, footer a:hover {
73			color: #00000060;
74		}
75
76		footer a:link {
77			text-decoration: none;
78		}
79
80		footer a:hover {
81			text-decoration: underline;
82		}
83
84		footer img {
85			max-width: 50vw;
86		}
87
88		footer .svg-icon-facebook-brands,
89        footer .svg-icon-bluesky-brands,
90        footer .svg-icon-strava-brands {
91            width: 1em;
92            height: 1em;
93        }
94
95		.cookie-consent {
96			position: fixed;
97			right: 0;
98			bottom: 0;
99		}
100
101		.cookie-consent > div {
102			color: #ffffff;
103			background-color:#130f40;
104      	}
105
106		.cookie-consent p {
107			font-size: 0.9rem;
108      	}
109
110		.cookie-consent a, .cookie-consent a:hover {
111			color: #ffffff;
112		}
113
114        .brand {
115            font-family: "Permanent Marker", cursive;
116			font-size: 1.5rem;
117            color: #0d6efd;
118			white-space: nowrap;
119        }
120    </style>
121
122	
123
124	
124<script>
125    if ("serviceWorker" in navigator) {
126        
127        window.addEventListener("load", async (event) => {
128            try {
129                //console.debug("registering service worker");
130                await navigator.serviceWorker.register("/service-worker.min.js");
131                //console.debug("registered service worker");
132            } catch (error) {
133                console.error(`service worker registration failed: '${error}'`);
134            }
135        });
136    } else {
137        console.info("service workers not available");
138    }
139</script>
139
140
141	
142	
143
144
145
146<script>
147    window.dataLayer = window.dataLayer || [];
148    function gtag(){dataLayer.push(arguments);}
149
150    gtag('consent', 'default', {
151        'ad_storage': 'denied',
152        'ad_user_data': 'denied',
153        'ad_personalization': 'denied',
154        'analytics_storage': 'denied'
155    });
156</script>
vendor: 64 bytes, lines 156-157
156
157<script async src="https://www.googletagmanager.com/gtag/js?id=
157G-W9JBZHSLL1
vendor: 12 bytes, line 157
157"></script>
158<script>
159    
vendor: 139 bytes, lines 159-162
159window.dataLayer = window.dataLayer || [];
160    function gtag(){dataLayer.push(arguments);}
161    gtag('js', new Date());
162    gtag('config', '
162G-W9JBZHSLL1
vendor: 4 bytes, line 162
162');
163</script>
163
164
165	<!-- Facebook Pixel -->
166	
166<script>
167		!function(f,b,e,v,n,t,s)
168		{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
169		n.callMethod.apply(n,arguments):n.queue.push(arguments)};
170		if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
171		n.queue=[];t=b.createElement(e);t.async=!0;
172		t.src=v;s=b.getElementsByTagName(e)[0];
173		s.parentNode.insertBefore(t,s)}(window,document,'script',
174		'https://connect.facebook.net/en_US/fbevents.js');
175		// default to 'revoke' until user consents
176		fbq('consent', 'revoke');
177		// standard initialization
178		fbq('init', '318905666498255');
179		fbq('track', 'PageView');
180	</script>
180
181</head>
182<body>
183	<div class="alert alert-danger text-center" role="alert" style="display: none;" id="userMustLogInAlert">
184		You are not logged in anymore. Please log in again.
185	</div>
186	<div class="alert alert-success text-center" role="alert" style="display: none;" id="accountDeletionStartedAlert">
187		Account deletion has been started.
188	</div>
189	<div class="container">
190		<header class="d-flex flex-wrap justify-content-center align-items-center py-3 mb-2">
191			<a href="/" class="text-decoration-none header-brand">
192			    Quantify My Bike
193			</a>
194			<ul class="nav col-12 col-md-auto ms-md-3 me-md-auto mb-2 mb-md-0 justify-content-center">
195			    <li><a href="/" class="nav-link px-2 link-secondary">Home</a></li>
196			    <li><a href="/features" class="nav-link px-2 link-dark">Features</a></li>
197			</ul>
198			<div class="text-end">
199			    <button type="button" class="btn btn-outline-primary me-2" id="logInButton" disabled>Log in</button>
200			    <button type="button" class="btn btn-primary" id="signUpButton" disabled>Sign up</button>
201			</div>
202		</header>
203		<h1 class="text-center fs-2">
204			Get insight into bike components' durability<br>
205			Free bike manager for Strava
206		</h1>
207		<div class="text-center">
208			<a href="/features">See how it works</a>
209		</div>
210		<div id="screenshotsCarousel" class="carousel carousel-dark slide m-auto py-4" data-bs-ride="carousel">
211			<div class="carousel-indicators">
212				<button type="button" data-bs-target="#screenshotsCarousel" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Bikes Screenshots"></button>
213				<button type="button" data-bs-target="#screenshotsCarousel" data-bs-slide-to="1" aria-label="Components Screenshots"></button>
214			</div>
215			<div class="carousel-inner">
216				<div class="carousel-item active">
217					<img src="images/bikes-screenshots.png" class="d-block w-100" alt="Bikes Screenshots">
218			  	</div>
219			  	<div class="carousel-item">
220					<img src="images/components-screenshots.png" class="d-block w-100" alt="Components Screenshots">
221			  	</div>
222			</div>
223		</div>
224		<footer class="pt-3 pb-4 pe-2">
225			<div class="row">
226				<div class="col-sm-auto me-sm-auto mb-2 mb-sm-0">
227					<img src="images/powered_by_strava.svg" width="175" alt="Powered by Strava" class="me-2">
228					<a href="https://play.google.com/store/apps/details?id=com.quantifymybike.android">
229						<img src="images/get_it_on_google_play.png" width="150" alt="Get it on Google Play">
230					</a>
231				</div>
232				<div class="col-sm-auto align-self-center ms-1">
233					&nbsp;&copy; 2026 Quantify My Bike<br/>
234					<a href="https://www.facebook.com/quantifymybike" target="_blank" rel="noopener" title="Facebook" class="mx-1">
235						
236						<svg viewBox="0 0 512 512" fill="currentColor" class="svg-icon-facebook-brands">
237    <!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
238    <path d="M512 256C512 114.6 397.4 0 256 0S0 114.6 0 256C0 376 82.7 476.8 194.2 504.5V334.2H141.4V256h52.8V222.3c0-87.1 39.4-127.5 125-127.5c16.2 0 44.2 3.2 55.7 6.4V172c-6-.6-16.5-1-29.6-1c-42 0-58.2 15.9-58.2 57.2V256h83.6l-14.4 78.2H287V510.1C413.8 494.8 512 386.9 512 256h0z"/>
239</svg></a>
240					<a href="https://bsky.app/profile/quantifymybike.com" target="_blank" rel="noopener" title="Bluesky" class="mx-1">
241						
242						<svg viewBox="0 0 512 512" fill="currentColor" class="svg-icon-bluesky-brands">
243    <!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
244    <path d="M111.8 62.2C170.2 105.9 233 194.7 256 242.4c23-47.6 85.8-136.4 144.2-180.2c42.1-31.6 110.3-56 110.3 21.8c0 15.5-8.9 130.5-14.1 149.2C478.2 298 412 314.6 353.1 304.5c102.9 17.5 129.1 75.5 72.5 133.5c-107.4 110.2-154.3-27.6-166.3-62.9l0 0c-1.7-4.9-2.6-7.8-3.3-7.8s-1.6 3-3.3 7.8l0 0c-12 35.3-59 173.1-166.3 62.9c-56.5-58-30.4-116 72.5-133.5C100 314.6 33.8 298 15.7 233.1C10.4 214.4 1.5 99.4 1.5 83.9c0-77.8 68.2-53.4 110.3-21.8z"/>
245</svg></a>
246					<a href="https://www.strava.com/clubs/quantifymybike" target="_blank" rel="noopener" title="Strava Clubs" class="me-1">
247						
248						<svg viewBox="0 0 384 512" fill="currentColor" class="svg-icon-strava-brands">
249    <!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
250    <path d="M158.4 0L7 292h89.2l62.2-116.1L220.1 292h88.5zm150.2 292l-43.9 88.2-44.6-88.2h-67.6l112.2 220 111.5-220z"/>
251</svg></a>
252					<a href="/terms">Terms</a>
253					<a href="/privacy">Privacy</a>
254				</div>
255			</div>
256		</footer>
257	</div>
258    <div class="row" style="display: none;" id="cookieConsentBox">
259		<div class="col-md-4 col-sm-12 cookie-consent">
260		    <div class="p-3 pb-4">
261				<div>
262					<h3>Cookies</h3>
263				</div>
264				<div>
265					<p>
266						This site uses cookies. By continuing to use the site, you are agreeing to our use of cookies.
267						Please see our <a href="/privacy" target="_blank">privacy policy</a> for details.
268					</p>
269				</div>
270				<button type="button" class="btn btn-danger w-100" id="cookieConsentButton">Accept Cookies</button>
271		  	</div>
272		</div>
273	</div>
274	<div class="modal" id="signUpModal" tabindex="-1">
275		<div class="modal-dialog">
276		  	<div class="modal-content">
277				<div class="modal-header">
278			  		<h1 class="modal-title fs-5">Sign up for <span class="brand px-1">Quantify My Bike</span></h1>
279			  		<button type="button" class="btn-close" data-bs-dismiss="modal"></button>
280				</div>
281				<div class="modal-body">
282					<p>To sign up or log in to Quantify My Bike you use the orange Connect with Strava button.
283						There is no additional login/password needed.</p>
284					<p>Strava will ask you to authorize Quantify My Bike to view your profile and activities.</p>
285					<p class="text-center">
286						<input type="image" id="signUpConnectWithStravaButton" src="images/connect_with_strava.svg" alt="Connect with Strava"><br>
287						<input type="checkbox" id="signUpPersistentSessionInput">
288						<label for="signUpPersistentSessionInput">stay logged in on this device</label>
289					</p>
290					<p>By signing up for Quantify My Bike you agree to the <a href="/terms" target="_blank">Terms</a>.
291						View our <a href="/privacy" target="_blank">Privacy Policy</a>.</p>
292				</div>
293			</div>
294		</div>
295	</div>
296	<div class="modal" id="logInModal" tabindex="-1">
297		<div class="modal-dialog">
298		  	<div class="modal-content">
299				<div class="modal-header">
300			  		<h1 class="modal-title fs-5">Log in to <span class="brand px-1">Quantify My Bike</span></h1>
301			  		<button type="button" class="btn-close" data-bs-dismiss="modal"></button>
302				</div>
303				<div class="modal-body">
304					<p>Use the orange Connect with Strava button to log in to Quantify My Bike.</p>
305					<p>Strava will ask you to authorize Quantify My Bike to view your profile and activities
306						every single time you log in.</p>
307					<p class="text-center">
308						<input type="image" id="logInConnectWithStravaButton" src="images/connect_with_strava.svg" alt="Connect with Strava"><br>
309						<input type="checkbox" id="logInPersistentSessionInput">
310						<label for="logInPersistentSessionInput">stay logged in on this device</label>
311					</p>
312					<p>By logging in to Quantify My Bike you agree to the <a href="/terms" target="_blank">Terms</a>.
313						View our <a href="/privacy" target="_blank">Privacy Policy</a>.</p>
314				</div>
315			</div>
316		</div>
317	</div>
318</body>
319</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.