Open search bar5-EOptimised for the perfect balance of weight and stiffness. Gone are the days that XC meant noodly handling. Our new stem is designed to cope with the extremes of a modern XC race course, without carrying so much as an extra gram of weight. Whether crossing continents, or smashing laps, we’ve got your back.
Hope
{"id":14928108290431,"title":"Hope XC Stem","handle":"hope-xc-stem","description":"\u003cdiv class=\"main-indented\"\u003e\n\u003cdiv class=\"row\"\u003e\n\u003cdiv class=\"product-listing center-wrap\"\u003e\n\u003cdiv class=\"new-page-intro-section\"\u003e\n\u003cdiv class=\"product-intro-right\"\u003e\n\u003ch5\u003eOptimised for the perfect balance of weight and stif
taxable":true,"featured_image":null,"available":true,"name":"Hope XC Stem - Purple \/ 90mm","public_title":"Purple \/ 90mm","options":["Purple","90mm"],"price":11000,"weight":0,"compare_at_price":null,"inventory_management":null,"barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]}],"images":["\/\/projektride.co.uk\/cdn\/shop\/files\/allthecolours.jpg?v=1738410721","\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2025-02-01at11.52.02.png?v=1738410731"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/files\/allthecolours.jpg?v=1738410721","options":["Color","Length"],"media":[{"alt":null,"id":64079180497279,"position":1,"preview_image":{"aspect_ratio":1.958,"height":2160,"width":4230,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/allthecolours.jpg?v=1738410721"},"aspect_ratio":1.958,"height":2160,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/allthecolours.jpg?v=1738410721","width":4230},{"alt":null,"id":64079181021567,"position":2,"preview_image":{"aspect_rati
Home
o":1.355,"height":1780,"width":2412,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2025-02-01at11.52.02.png?v=1738410731"},"aspect_ratio":1.355,"height":1780,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2025-02-01at11.52.02.png?v=1738410731","width":2412}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cdiv class=\"main-indented\"\u003e\n\u003cdiv class=\"row\"\u003e\n\u003cdiv class=\"product-listing center-wrap\"\u003e\n\u003cdiv class=\"new-page-intro-section\"\u003e\n\u003cdiv class=\"product-intro-right\"\u003e\n\u003ch5\u003eOptimised for the perfect balance of weight and stiffness. Gone are the days that XC meant noodly handling. Our new stem is designed to cope with the extremes of a modern XC race course, without carrying so much as an extra gram of weight. Whether crossing continents, or smashing laps, we’ve got your back.\u003c\/h5\u003e\n\u003ch5\u003e\/\/ Available in 70mm or 90mm, 0° rise\u003cbr\u003e\/\/ CNC machined from
{
"@context": "http://schema.org/",
"@type": "Product",
"name": "Hope XC Stem",
"url": "https:\/\/projektride.co.uk\/products\/hope-xc-stem","image": [
"https:\/\/projektride.co.uk\/cdn\/shop\/files\/allthecolours_4230x.jpg?v=1738410721"
],"description": "\n\n\n\n\nOptimised for the perfect balance of weight and stiffness. Gone are the days that XC meant noodly handling. Our new stem is designed to cope with the extremes of a modern XC race course, without carrying so much as an extra gram of weight. Whether crossing continents, or smashing laps, we’ve got your back.\n\/\/ Available in 70mm or 90mm, 0° rise\/\/ CNC machined from 2014-T6 aluminium\/\/ Titanium bolt upgrade kit available\/\/ Stainless Steel bolts: 136g 70mm \/\/ 149g: 90mm\/\/ Ti bolt upgrade kit \/\/ 124g 70mm \/\/ 137g: 90mm\/\/ Available in black, silver, bronze, red, blue, orange \u0026amp; purple\/\/ Proudly Designed, Tested and Manufactured in Barnoldswick, UK\n\n\n\n\n","brand": {
"@type": "Thing",
"name": "Hope"
},"gtin8": "","offers": [{
"@type" : "Offer","availability" : "http://schema.org/InStock",
"price" : 110.0,
"priceCurrency" : "GBP",
"url" : "https:\/\/projektride.co.uk\/products\/hope-xc-stem?variant=55060093370751"
},
{
"@type" : "Offer","availability" : "http://schema.org/InStock",
"price" : 110.0,
"priceCurrency" : "GBP",
"url" : "https:\/\/projektride.co.uk\/products\/hope-xc-stem?variant=55060093403519"
},
{
"@type" : "Offer","availability" : "http://schema.org/InStock",
"price" : 110.0,
"priceCurrency" : "GBP",
"url" : "https:\/\/projektride.co.uk\/products\/hope-xc-stem?variant=55060093436287"
},
{
"@type" : "Offer","availability" : "http://schema.org/InStock",
"price" : 110.0,
"priceCurrency" : "GBP",
"url" : "https:\/\/projektride.co.uk\/products\/hope-xc-stem?variant=55060093469055"
},
{
"@type" : "Offer","availability" : "http://schema.org/InStock",
"price" : 110.0,
"priceCurrency" : "GBP",
"url" : "https:\/\/projektride.co.uk\/products\/hope-xc-stem?variant=55060093501823"
},
{
"@type" : "Offer","availability" : "http://schema.org/InStock",
"price" : 110.0,
"priceCurrency" : "GBP",
"url" : "https:\/\/projektride.co.uk\/products\/hope-xc-stem?variant=55060093534591"
},
{
"@type" : "Offer","availability" : "http://schema.org/InStock",
"price" : 110.0,
"priceCurrency" : "GBP",
"url" : "https:\/\/projektride.co.uk\/products\/hope-xc-stem?variant=55060093567359"
},
{
"@type" : "Offer","availability" : "http://schema.org/InStock",
"price" : 110.0,
"priceCurrency" : "GBP",
"url" : "https:\/\/projektride.co.uk\/products\/hope-xc-stem?variant=55060093600127"
},
{
"@type" : "Offer","availability" : "http://schema.org/InStock",
"price" : 110.0,
"priceCurrency" : "GBP",
"url" : "https:\/\/projektride.co.uk\/products\/hope-xc-stem?variant=55060093632895"
},
{
"@type" : "Offer","availability" : "http://schema.org/InStock",
"price" : 110.0,
"priceCurrency" : "GBP",
"url" : "https:\/\/projektride.co.uk\/products\/hope-xc-stem?variant=55060093665663"
},
{
"@type" : "Offer","availability" : "http://sc
Open search barBikes
Handlebars
We reserve the right to make changes to the product information contained on this site at any time without notice, including with respect to equipment, specifications, models, colours, materials and pricing. Due to supply chain issues, compatible parts may be substituted at any time without notice.New BikesKids BikesSubmit your search requestBrake Rotors
Frames
Brake Pads
Brake Spares
{"id":15428561895807,"title":"Diamant Zing Trip Core (Midstep)","handle":"diamant-zing-trip-core-midstep","description":"\u003cdiv data-v-fa0c522c=\"\" class=\"b2b-buying-zone__info cell medium-6 large-12\"\u003e\n\u003cdiv data-v-fa0c522c=\"\" class=\"buying-zone__positioning-statement mb-2 pt-2 border-t border-gray-10\"\u003e\n\u003cp data-v-fa0c522c=\"\"\u003eThe Zing Trip Core combines low weight with high performance and offers everything you need for everyday use and vacation. Thanks to the external battery, which can be easily removed for charging, storage, transport, and overnight stays, it is particularly practical. The well-thought-out equipment emphasizes the
on_position_type":"float-right","storefront_form_duplicate_error":"You've already subscribed for alerts to this product.","storefront_mixed_cart_error":"This item needs to be purchased separately. Please check out or clear your cart before adding this item.","storefront_error_heading":"Error","default_locale":"en","collection_page_button_text_color":"#FFFFFF","collection_page_button_background_color":"#202223","show_button_if_any_out_of_stock":false,"show_button_if_any_variant_out_of_stock_collection":false,"show_button_on_index":false,"insert_button_after_selector_collection":null,"insert_button_after_selector_index":null,"push_enabled":false,"push_allowed":false,"storefront_form_push_label":"Push","storefront_form_push_description":"Click 'Allow' to be notified via push notification","storefront_form_push_error":"Permission rejected! Please review notification settings and try again","storefront_font_family":"OpenSans","insert_button_after_selector_collection_type":"afterend","show_channel_selector":false,"
lProduct.lastIndexOf('/') + 1)
window._RestockRocketConfig.host = 'https://app.restockrocket.io'
const SETTINGS_CACHE_DURATION = 15 * 60 * 1000; // 15 minutes in milliseconds
const LIQUID_CACHE_MAX_AGE = 2 * 60 * 60; // 2 hours in seconds
// Calculate Liquid cache freshness once at initialization
const liquidRenderedAt = window._RestockRocketConfig.liquidRenderedAt;
// Validate timestamp and calculate cache age
if (!liquidRenderedAt || typeof liquidRenderedAt !== 'number' || isNaN(liquidRenderedAt)) {
console.debug('STOQ - Invalid or missing liquidRenderedAt timestamp, assuming fresh');
window._RestockRocketConfig.isLiquidCacheFresh = true;
} else {
const now = Math.floor(Date.now() / 1000); // Current time in seconds
const liquidCacheAge = now - liquidRenderedAt; // Age in seconds
// Handle client clock ahead of server
if (liquidCacheAge
Surly
0) {
console.debug(`STOQ - Client clock appears ahead of server by ${Math.abs(Math.round(liquidCacheAge / 60))} minutes, assuming cache fresh`);
window._RestockRocketConfig.isLiquidCacheFresh = true;
} else if (liquidCacheAge
= LIQUID_CACHE_MAX_AGE) {
console.debug(`STOQ - Liquid cache is fresh (${Math.round(liquidCacheAge / 60)} minutes old)`);
window._RestockRocketConfig.isLiquidCacheFresh = true;
} else {
console.debug(`STOQ - Liquid cache is stale (${Math.round(liquidCacheAge / 60)} minutes old, max ${Math.round(LIQUID_CACHE_MAX_AGE / 60)} minutes)`);
window._RestockRocketConfig.isLiquidCacheFresh = false;
}
}
function checkSettingsExpiry(settings) {
try {
if (!settings || !settings.updated_at) {
console.debug('STOQ - Invalid settings data structure');
return null;
}
if (!settings.cache) {
console.debug('STOQ - settings caching disabled');
return null;
}
// Check if translations are enabled but missing from cache
// This handles the backfill period where DB has translations but metafield doesn't
if
Surly
ders = {
'X-Shopify-Shop-Domain': window._RestockRocketConfig.shop || window.Shopify.shop,
'ngrok-skip-browser-warning': 'skip'
};
if (window.Shopify?.theme?.role === 'main') {
headers['X-Shopify-Theme-Schema-Name'] = window.Shopify.theme.schema_name;
headers['X-Shopify-Theme-Schema-Version'] = window.Shopify.theme.schema_version;
headers['X-Shopify-Theme-Store-Id'] = window.Shopify.theme.theme_store_id;
}
fetch(
`${window._RestockRocketConfig.host}/api/v1/setting.json?translation_locale=${window._RestockRocketConfig.normalizedLocale}`,
{ headers }
)
.then(function(response) {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(function(settings) {
initializeScripts(settings);
})
.catch(function(error) {
// If request failed and we have cached settings (even if expired), use them as fallback
if (cachedSettings) {
console.debu
span class="visually-hidden">Hire Kryptolok Standard U-Lock & 4 foot Kryptoflex cableBuy Sell Ride Confident) or email (Early Rider
>
[email protected]
Shifters :
<
[]
Finishing Kit<
Hire Ortlieb 40L Pannier Bags
translation data in metafield
// Metafield hasn't been backfilled yet - force refresh
console.debug('STOQ - multi-language enabled but no translation data in cache, fetching fresh');
return null;
}
// Translations object exists in metafield - cache is valid
// If current locale isn't translated, applyTranslations will gracefully use default locale from base fields
if (window._RestockRocketConfig.normalizedLocale &&
!Object.prototype.hasOwnProperty.call(settings.translations, window._RestockRocketConfig.normalizedLocale)) {
console.debug('STOQ - locale not explicitly translated, will use default language from cache');
}
// Don't return null - continue using cache even for untranslated locales
}
const updatedAt = new Date(settings.updated_at);
if (isNaN(updatedAt.getTime())) {
console.debug('STOQ - Invalid updated_at date format in settings');
return null;
}
const
handle":"hope-direct-mount-stem","description":"\u003cdiv class=\"main-indented\"\u003e\n\u003cdiv class=\"row\"\u003e\n\u003cdiv class=\"product-listing center-wrap\"\u003e\n\u003cdiv class=\"new-page-intro-section\"\u003e\n\u003cdiv class=\"product-intro-right\"\u003e\n\u003ch5\u003eOur direct mounted stem helps keep the front end of your bike low and keeps weight down. For use with triple clamp forks\u003c\/h5\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003ch5\u003e\/ Machined from a solid billet of 2014 T6 aluminium\u003cbr\u003e\/\/ Fits directly to original triple clamp fork crown\u003cbr\u003e\/\/ Zero rise\u003cbr\u003e\/\/ 67mm Clamping width\u003cbr\u003e\/\/ Stainless Steel Taper head screws\u003cbr\u003e\/\/ Weight from: 132g\u003cbr\u003e\/\/ CNC machined from 2014 T6 aluminium\u003cbr\u003e\/\/ 31.8mm available in 40mm \u0026amp; 50mm lengths\u003cbr\u003e\/\/ 35mm available in 41.5mm \u0026amp; 50mm lengths\u003cbr\u003e\/\/ \/\/ Available in black, silver, red, blue, purple \u0026amp; orange\