Bikes
See More
window._RestockRocketC onfig = window._RestockRocketConfig || {} // Helper function to normalize locale format from hyphen to underscore (e.g., 'en-US' -> 'en_us') // This matches the backend's Mobility.normalize_locale behavior // Returns empty string if locale is empty or invalid (matches original behavior) function normalizeLocale(locale) { if (!locale || locale.trim() === '') { return ''; } return locale.toString().toLowerCase().replace(/-/g, '_'); } window._RestockRocketConfig.locale = 'en'; window._RestockRocketConfig.normalizedLocale = normalizeLocale('en'); window._RestockRocketConfig.shop = 'projektride.myshopify.com'; window._RestockRocketConfig.pageType = 'collection';window._RestockRocketConfig.marketId = 382140642;window._RestockRocketConfig.countryName = 'United Kingdom'; window._RestockRocketConfig.countryIsoCode = 'GB';window._RestockRocketConfig.cartInventoryQuantity = {};window._RestockRocketConfig.cachedSettings = {"id":38500,"shop_id":38436,"currency":"GBP","created_at":
"2025-07-26T09:13:57.337Z","updated_at":"2025-11-11T14:27:02.312Z","enable_app":true,"enable_signup_widget":false,"storefront_button_text":"Notify me when available","storefront_button_text_color":"#FFFFFF","storefront_button_background_color":"#202223","storefront_form_header":"Notify me","storefront_form_description":"Get a notification as soon as this product is back in stock by signing up below!","storefront_form_button_text":"Notify me when available","storefront_form_button_text_color":"#FFFFFF","storefront_form_button_background_color":"#202223","storefront_form_terms":"Promise we won't spam. You'll only receive notifications for this product.","storefront_form_error":"Please enter a valid email address","storefront_form_success":"Thank you! We will notify you when the product is available.","enable_powered_by":true,"show_button_on_preorder":true,"sms_enabled":false,"email_enabled":true,"storefront_button_disable_tag":"rocket-hide","theme_config":{},"storefront_form_email_placeholder":"Email address","New Bikesstorefront_form_phone_placeholder":"SMS","storefront_form_phone_label":"Phone number","storefront_form_email_label":"Email","storefront_form_phone_error":"Please enter a valid phone number","storefront_form_customer_name_placeholder":"Name","storefront_form_customer_name_error":"Please enter your name","storefront_form_did_you_mean_error":"Did you mean %{suggested_email}? Or use %{current_email}","form_customer_name_enabled":false,"form_customer_name_required":false,"css_config":"","js_config":null,"collect_promotion_consent":false,"storefront_form_promotion_consent_label":"Notify me about other news, sales, discounts & offers too","show_button_on_collection":false,"sms_default_country":"us","sms_restrict_country":false,"sms_default_channel":true,"optin_required":false,"optin_success_text":"Registration confirmed! You'll receive an alert when the product is restocked.","storefront_button_border_radius":0,"storefront_button_disable_tag_hides_button":true,"storefront_button_disable_tag_enabled":false,"quantity_
required":false,"storefront_form_quantity_label":"Quantity","enable_alerts":true,"sms_allowed":false,"email_allowed":true,"collect_promotion_consent_default":true,"insert_button_after_selector":null,"insert_button_after_selector_type":"afterend","storefront_button_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 See Morebe 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,"storefront_form_empty_error":"Please fill in one or more of the options above","storefront_form_push_input":"Send notification to your browser","insert_button_after_selector_page":null,"show_button_on_page":false,"insert_button_after_selector_search":null,"show_button_on_search":false,"app_proxy_path_prefix":"/apps/restockrocket-production","collection_link_selector":"","index_link_selector":"","page_link_selector":"","search_link_selector":"","collection_check_link_visibility":true,"collection_buttons_container":null,"index_buttons_container":null,"page_buttons_container":null,"search_buttons_container":null,"extension_enable_url_variant_detection":true,"extension_enable_value_variant_detection":true,"extension_value_variant_selector":"[name='id']","r
esubscribe_text":"This product is out of stock. Get notified when it's restocked again by entering your details below!","preorder_enabled":true,"preorder_buy_button_selector":null,"preorder_add_to_cart_button_selector":"","preorder_badge_selector":"","preorder_button_out_of_stock_text":"Out of stock","preorder_button_add_to_cart_text":"Add to cart","preorder_form_selector":"form[action*=\"/cart/add\"]","preorder_collection_enabled":false,"preorder_collection_form_selector":"form[action*=\"/cart/add\"]","preorder_collection_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_index_enabled":false,"preorder_index_form_selector":"form[action*=\"/cart/add\"]","preorder_index_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_page_enabled":false,"preorder_page_form_selector":"form[action*=\"/cart/add\"]","preorder_page_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_search_enabled":false,"preorder_search_form_selector":"form[action*=\"/car t/add\"]","preorder_search_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_collection_badge_selector":null,"preorder_index_badge_selector":null,"preorder_page_badge_selector":null,"preorder_search_badge_selector":null,"preorder_badge_selector_type":"afterend","preorder_collection_badge_selector_type":"afterend","preorder_button_child_selector":"span","preorder_button_disclaimer_insert_selector":"","preorder_button_disclaimer_insert_selector_type":"afterend","preorder_payment_insert_selector":"","preorder_payment_insert_selector_type":"afterend","preorder_price_container_selector":"","preorder_price_container_selector_insert_type":"afterend","preorder_terms_insert_selector":"","preorder_terms_insert_selector_type":"afterend","preorder_original_price_selector":"","preorder_price_format":"{{amount}} {{currency}}","show_badge_if_any_variant_is_preorder":false,"enable_console_debug":false,"inline_form_enabled":false,"inline_form_selector":null,"inline_form_selector_type":"afterend","sto
refront_form_prefill_customer":true,"market_setup_type":"single_market","shopify_app_id":5940125,"cache":true,"cached_at":"2025-11-11T14:27:02.333Z","multi_language_enabled":false,"translation_locale":"en"};window._RestockRocketConfig.cachedPreorderVariantIds = {"preorder_variant_ids":[42167799447778,43590980075746,43916521013474,43934694998242,43934695031010,43934695620834,43935975440610,43935975473378,43935989399778,43935989432546,43935990284514,43935994118370,43935995625698,43935995855074,43936000835810,43936003195106,43936003227874,43936008012002,43936008044770,43936022757602,43936022790370,43936022823138,43936022855906,43936056115426,43936061030626,43936064930018,43936070631650,43936078037218,43936078069986,43936088195298,43936093470946,43936101138658,43936107266274,43936124076258,43936124109026,43936124141794,43936124174562,43936129941730,43936129974498,43936130007266,43936142393570,43936142426338,43936142459106,43936152060130,43936152092898,43936152125666,43936193118434,43936250429666,43936255803618,43 936266682594,43936266715362,43936293978338,43936294011106,43936316424418,43936316457186,43936320880866,43936320913634,43936320946402,43936327041250,43936327074018,43936327106786,43936331661538,43936332349666,43936333103330,43936351224034,43936353714402,43936362889442,43936362922210,43936388153570,43936389333218,43936395526370,43936398508258,43936401522914,43936408568034,43936414400738,43936700727522,43936706101474,43936706134242,43936706167010,43936706199778,43936706232546,43936706265314,43938308587746,43938308653282,43938308718818,43938308751586,43938308784354,43938308817122,43938322612450,43938322645218,43938322677986,43981336051938,43981336084706,43981336117474,43981336150242,43981345587426,43981345620194,43981345652962,43981345685730,43981357580514,43981357613282,43981362462946,43981362495714,43981362528482,43981369016546,43981369049314,43981374914786,43981374947554,43981374980322,43981392904418,43981695844578,43981695877346,43981695910114,43981695942882,43981986070754,43981987905762,43981987938530,440529
06967266,44052907327714,44052907360482,44052907393250,44052907426018,44052907458786,44052907491554,44052909097186,44052909129954,44140302827746,44140302893282,44140317016290,44155590508770,44155590541538,44155594211554,44155594244322,44155594277090,44155594309858,44155594342626,44155594375394,44155594440930,44155594473698,44155594506466,44195991847138,44195991945442,44329993437410,44329993470178,44329993502946,44329993535714,44329993568482,44957136584930,44957136781538,44957136945378,45068753961186,45068753993954,45069622640866,45069622903010,45069622968546,45069750730978,45069750763746,45353010921698,45353010954466,45353010987234,45353018261730,45353018294498,45353018327266,55569712382335,55569712447871,55569712480639,55569933074815,55570550194559,55570550227327,55604008976767,55638316908927,55638316941695,55638316974463,56220814999935,56220815032703,56270279606655,56270279639423,56270279672191,56314171064703,56314171097471,56398983725439,56398983758207,56398983790975,56399322251647],"updated_at":"2025-12-13 T19:43:13Z","market_locations_enabled":false,"market_id":382140642,"preorder_location_filter_enabled":false,"preorder_location_filter_ids":[],"collection_id":null};window._RestockRocketConfig.cachedInStockVariantIds = { in_stock_variant_ids: [] };window._RestockRocketConfig.cachedOutOfStockVariantIds = { out_of_stock_variant_ids: [] };window._RestockRocketConfig.cachedVariantPreorderLimits = {"variant_preorder_limits":{},"updated_at":"2025-12-13T19:27:30Z","shopify_market_id":382140642,"market_locations_enabled":false}; window._RestockRocketConfig.cachedVariantPreorderLimitsMarketKey = "variant_preorder_limits_for_market_382140642";window._RestockRocketConfig.cachedVariantShippingTexts = {"variant_shipping_texts":{},"updated_at":"2025-12-13T19:27:30Z","shopify_market_id":382140642,"market_locations_enabled":false}; window._RestockRocketConfig.cachedVariantShippingTextsMarketKey = "variant_shipping_texts_for_market_382140642";window._RestockRocketConfig.sellingPlans = [{"shopify_selling_plan_group_id":
98590196095,"shopify_selling_plan_id":713071886719,"enabled":true,"variant_ids":[55569933140351,55569712382335,55569712415103,55569712480639,55569933173119,55570017616255,55569933074815,55570017550719,55569712447871,55569933107583,55570017583487],"product_variants_source":"custom","name":"Preorder","preorder_button_text":"Preorder","preorder_button_description":"Note: This is a preorder. Items will ship based on the estimated delivery date.","preorder_button_description_background_color":"#ebebeb","preorder_button_description_text_color":"#000000","preorder_button_description_border_radius":10,"preorder_button_description_show_quantity_limit":false,"preorder_button_description_quantity_limit_suffix":" units available for preorder","preorder_button_description_shipping_text_prefix":"Shipping: ","delivery_exact_time":null,"delivery_after_n_intervals":null,"delivery_at":"2025-07-26T09:20:18.169Z","delivery_type":"asap","quantity_limit_text":"{{ quantity }} units available for preorder","preorder_button_descriptiShop All New Bikeson_show_shipping":true,"preorder_button_description_icons_enabled":true,"preorder_shipping_text":"Shipping: {{ date }}","shipping_applies_to_all_products":true,"shipping_text":"Estimated to ship within 2 months","payment_type":"full","billing_checkout_charge_type":"percentage","billing_checkout_charge_amount":null,"billing_checkout_charge_percentage":"100.0","pricing_type":"no_discount","pricing_amount":null,"pricing_percentage":null,"discount_text":"Save {{ discount }}","billing_title":"Full payment","billing_description":null,"enable_billing_widget":false,"inventory_provider":"stoq","preorder_badge_enabled":false,"preorder_badge_text":"Preorder","preorder_badge_text_color":"#FFFFFF","preorder_badge_background_color":"#000000","preorder_discounted_price_enabled":null,"payment_line_item_property_enabled":false,"shipping_line_item_property_enabled":true,"custom_line_item_property_text":null,"preorder_button_text_color":"#ffffff","preorder_button_background_color":"#565557","preorder_button_colors_enabled":true
,"markets_enabled":false,"market_id":13779632354,"shopify_market_ids":[],"use_shopify_selling_plan":true,"use_simplified_shipping_text":false,"translations":{},"payment_options":[{"billing_type":"no_remaining_balance","billing_checkout_charge_type":"percentage","billing_checkout_charge_amount":null,"billing_checkout_charge_percentage":"100.0","billing_at":"2025-07-26T09:20:38.472Z","billing_after_n_intervals":7,"billing_after_interval_type":"day","pricing_type":"no_discount","pricing_amount":null,"pricing_percentage":null,"billing_title":"Full payment","billing_description":null,"discount_text":"Save {{ discount }}","shopify_selling_plan_id":713071886719,"is_default":true,"type":"full","translations":{}}],"require_preorder_acknowledgement":false,"preorder_acknowledgement_text":"I acknowledge and agree to the preorder terms and conditions for this product.","preorder_min_quantity":null,"preorder_max_quantity":null,"countdown_timer_enabled":false,"countdown_timer_insert_selector":null,"countdown_timer_insert_se lector_type":"afterend","countdown_timer_style":"text","countdown_timer_text_color":"#000000","countdown_timer_background_color":"#f5f5f5","countdown_timer_border_radius":8,"countdown_timer_format":"DHMS","countdown_timer_use_schedule_dates":true,"countdown_timer_custom_start_date":null,"countdown_timer_custom_end_date":null,"countdown_timer_starts_text":null,"countdown_timer_ends_text":null,"updated_at":"2025-08-19T10:05:43.042Z","allow_mixed_cart":true}];window._RestockRocketConfig.integrations = [{"id":"15c94526-b6b8-4de1-9bc1-23b1ca52ddb0","shop_id":38436,"enabled":true,"page_types":["product","collection","index","search","page","cart","list-collections","article","blog"],"configuration":{"toastDuration":10000,"toastPosition":"bottom-right","enableXHRHijack":true,"enableFetchHijack":true,"quantityLimitDisabled":false},"type":"hijack","css_config":null,"js_config":null,"created_at":"2025-07-26T09:16:04.076Z","updated_at":"2025-07-26T09:16:04.076Z"}];window._RestockRocketConfig.obfuscateInventoryQuantity =
false;window._RestockRocketConfig.scriptUrlProduct = 'https://cdn.shopify.com/extensions/019b1405-52e0-7e89-a6c1-1ac7fea6dd8f/restock-rocket-shopify-410/assets/restockrocket-product.js' window._RestockRocketConfig.scriptUrlCollection = 'https://cdn.shopify.com/extensions/019b1405-52e0-7e89-a6c1-1ac7fea6dd8f/restock-rocket-shopify-410/assets/restockrocket-collection.js' window._RestockRocketConfig.scriptHost = window._RestockRocketConfig.scriptUrlProduct.substring(0, window._RestockRocketConfig.scriptUrlProduct.lastIndexOf('/') + 1) window._RestockRocketConfig.host = 'https://app.restockrocket.io' const SETTINGS_CACHE_DURATION = 15 * 60 * 1000; // 15 minutes in milliseconds 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 (settings.multi_language_enabled) { if (!settings.translations) { // Translations enabled but no 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 us
ing 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 age = Date.now() - updatedAt.getTime(); if (age Road / Gravel / Touring Bikes<
SETTINGS_CACHE_DURATION) { console.debug('STOQ - settings changed recently, skipping cache'); return null; } return settings; } catch (error) { console.debug('STOQ - Error checking settings cache:', error); return null; } } function createRestockRocketContainer() { const restockRocketContainer = document.createElement('div'); restockRocketContainer.id = 'restock-rocket'; document.body.appendChild(restockRocketContainer); } function createRestockRocketScript(scriptUrl) { const restockRocketScriptElement = document.createElement('script'); restockRocketScriptElement.setAttribute('defer', 'defer'); restockRocketScriptElement.src = scriptUrl; document.body.appendChild(restockRocketScriptElement); } createRestockRocketContainer() console.debug('STOQ - extension activated') function applyTranslations(settings) { try { // Skip translation logic entirely if multi-language is not enabled if (!settings || !settings.multi_language_enabled) { return settings; } if (!settings.translations) { console.debug('STOQ - No translations found, skipping translation'); return settings; } const normalizedLocale = window._RestockRocketConfig.normalizedLocale; const translations = settings.translations; if (!normalizedLocale) { // No matching locale has translations; drop payload to save memory console.debug('STOQ - No matching locale for translations. Available:', Object.keys(translations || {})); delete settings.translations; return settings; } console.debug(`STOQ - Applying translations for normalized locale: ${normalizedLocale} (original: ${window._RestockRocketConfig.locale})`); const translatedFields = translations[normalizedLocale]; if (translatedFields && typeof translatedFields === 'object') { Object.keys(translatedFields).forEach(function(key) { const value = translatedFields[key]; if (value !== null && value !== undefined && value !== '') { settings[key] = value; } }); } else { console.debug('STOQ - No translated fields found for locale:', normalizedLocale); } delete settings.translations; return settings; } catch (e) { console.debug('STOQ - error applying translations:', e); return settings; } } // First try to get settings from metafields with expiry check const cachedSettings = window._RestockRocketConfig.cachedSettings; const validCachedSettings = cachedSettings ? checkSettingsExpiry(cachedSettings) : null; if (validCachedSettings) { console.debug('STOQ - using
cached settings'); initializeScripts(validCachedSettings); } else { console.debug('STOQ - fetching fresh settings'); const headers = { '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.debug('STOQ - using expired cached settings as fallback'); initializeScripts(cachedSettings); } else { console.error('STOQ - failed to load settings:', error); } }) .catch(function(e) { console.error(e) }) } function initializeScripts(settings) { settings = applyTranslations(settings); window._RestockRocketConfig.settings = settings; console.debug(`STOQ - settings configured for ${window._RestockRocketConfig.pageType}`); if(settings.enable_app) { const hijackIntegration = window._RestockRocketConfig.integrations.find(function(integration) { return integration.type === 'hijack' && integration.enabled && integration.page_types.includes(window._RestockRocketConfig.pageType); }) if(window._RestockRocketConfig.pageType === 'collection' && (settings.show_button_on_collection || settings.
preorder_collection_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'index' && (settings.show_button_on_index || settings.preorder_index_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'search' && (settings.show_button_on_search || settings.preorder_search_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'page' && (settings.show_button_on_page || settings.preorder_page_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'product') { createRestockRocketScript(window._RestockRocketConfig.scriptUrlProduct); } else if(hijackIntegration) { createRestockRocketScript(window._RestockRockeHybrid / City BikestConfig.scriptUrlCollection); } else { console.debug(`STOQ - no scripts enabled for ${window._RestockRocketConfig.pageType}`); } // Check and update cart selling plans after scripts are loaded if (settings.preorder_enabled) { updateCartSellingPlans(); } // Dispatch custom event when app is loaded const appLoadedEvent = new CustomEvent('stoq:loaded', { detail: { pageType: window._RestockRocketConfig.pageType, enabled: settings.enable_app, settings: settings } }); console.debug('STOQ - dispatching app loaded event'); window.dispatchEvent(appLoadedEvent); } } function updateCartSellingPlans() { // Wait for the API to be available with retries const maxRetries = 10; const retryDelay = 500; function attemptCartCheck(attempt = 1) { if (window._RestockRocket && window._RestockRocket.updateCartSellingPlans) { window._RestockRocket.updateCartSellingPlans()
.then(hasUpdates => { if (hasUpdates) { console.debug('STOQ - cart selling plans updated successfully'); } else { console.debug('STOQ - no cart selling plan updates needed'); } }) .catch(error => { console.error('STOQ - error updating cart selling plans:', error); }); } else if (attempt <
.restock-rocket-button,.restock-rocket-button-float{opacity:1!important;border:none!important;cursor:pointer!important;background-image:none!important;box-shadow:none!important;padding:15px 20px;font-size:16px;width:100%;font-family:inherit}@font-face{font-family:OpenSans;font-weight:200;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-Light.woff)}@font-face{font-family:OpenSans;font-weight:300;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-Regular.woff)}@font-face{font-family:OpenSans;font-weight:600;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-SemiBold.woff)}.restock-rocket-button-container{position:relative;z-index:1;width:100%}.restock-rocket-button-container-float-right{position:fixed;z-index:123123;top:calc(50% - 200px);right:0;transform:rotate(270deg);transform-origin:bottom right}.restock-rocket-button-container-float-left{position:fixed;z-index:123123;top:calc(50% - 200px);left:40px;transform:rotate(90deg);transform-origin:top left}.restock-rocket-button-container-float-left:hover,.restock-rocket-button-container-float-right:hover,.restock-rocket-button-container:hover,.restock-rocket-button-float:hover,.restock-rocket-button:hover{opacity:.8}.restock-rocket-button{min-height:50px;margin-top:10px;margin-bottom:10px}.restock-rocket-button-collection{position:relative;font-size:13px;line-height:1;padding:7px;height:auto;z-index:3}.restock-rocket-wrapper{background-color:rgba(0,0,0,.5);z-index:123123123;width:100%;height:100%;overflow:auto;position:fixed;right:0;top:0;transition-property:all;transition-duration:.3s;display:flex;flex-direction:column;justify-content:center;}.restock-rocket-wrapper-inline{width:100%;height:100%;margin-top:20px}.restock-rocket-preorder-description{padding:10px 15px;margin-top:20px;display:flex;flex-direction:column;gap:10px;}.preorder-description-details{margin-bottom:0;display:flex;flex-direction:column;gap:10px;}.preorder-detail-item{display:flex;flex-direction:row;justify-content:start;gap:8px;align-items:center;}.restock-rocket-payment-widget{border:1px solid #ebebeb;margin-bottom:20px;}.restock-rocket-payment-option{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:15px 20px;}.restock-rocket-payment-option:not(:last-child){border-bottom:1px solid #ebebeb;}.restock-rocket-payment-input-container{flex:1 1 auto;min-width:0}.restock-rocket-preorder-discount-badge{background:#ebebeb;height:25px;line-height:25px;padding:0 15px;border-radius:25px;font-size:0.8rem;flex:0 0 auto}.restock-rocket-payment-input{margin-right:10px;margin-top:-3px;vertical-align:middle;margin-left:0;accent-color:#202223}.restock-rocket-payment-description{margin-top:4px;flex:1 1 100%}.restock-rocket-preorder-badge{font-size:13px;line-height:1;padding:5px 13px 6px;border-radius:40px;height:auto;border:none;width:auto;z-index:2;margin:0;background:0 0}.preorder-badge-collection{position:absolute;top:10px;right:10px}.preorder-badge-product{margin-left:10px}.restock-rocket-price-strike{text-decoration:line-through;color: #666666;}.restock-rocket-discounted-price{margin-left:10px;}.restock-rocket-acknowledgement-checkbox{margin-bottom:12px;display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height: 1.5;}.restock-rocket-acknowledge-checkbox-input{wi dth:18px;height:18px;margin-top:2px;cursor:pointer;flex-shrink:0;accent-color: #0d0d0d;}.restock-rocket-acknowledge-checkbox-label{flex:1;cursor:pointer;}.restock-rocket-preorder-countdown-timer{display:flex;flex-direction:column;align-items:center;padding:16px;margin:8px 0;font-family:inherit;}.restock-rocket-preorder-countdown-timer .countdown-header{font-size:16px;margin-bottom:6px;text-align:center}.restock-rocket-preorder-countdown-timer .countdown-units{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.restock-rocket-preorder-countdown-timer .countdown-unit{display:flex;flex-direction:column;align-items:center;gap:6px}.restock-rocket-preorder-countdown-timer .countdown-box{min-width:40px;padding:10px 6px;text-align:center;font-size:20px;line-height:1}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:14px;font-weight:500;text-align:center;text-transform:capitalize;opacity:.7}@media (max-width:768px){.restock-rocket-preorder-countdown-timer{padding:14px}.restock-rocket-preorde
r-countdown-timer .countdown-box{min-width:55px;padding:14px 10px;font-size:26px}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:11px}}@media (max-width:480px){.restock-rocket-preorder-countdown-timer{padding:12px}.restock-rocket-preorder-countdown-timer .countdown-units{width:100%;gap:10px}.restock-rocket-preorder-countdown-timer .countdown-box{width:100%;min-width:50px;padding:12px 8px;font-size:24px}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:10px}}.restock-rocket-toast{position:fixed;cursor:pointer;background:#fff;border:0;min-width:40px;min-height:40px;box-shadow:0 0 15px rgba(0,0,0,.1)!important;z-index:622004;padding:20px 30px;font-family:inherit;font-size:inherit;color:#000;display:flex;justify-content:center;align-items:center}.restock-rocket-toast a{text-decoration:none;font-weight:700;color:#000}.restock-rocket-toast .dismiss{margin-left:15px;z-index:1;font-size:20px;}.restock-rocket-toast-top{top:60px}.restock-rocket-toast-bottom{bottom:75px}.restock-rocElectric Bikesket-toast-left,.restock-rocket-toast-right{-webkit-animation:.5s forwards slide;animation:.5s forwards slide}.restock-rocket-toast-left{left:0;transform:translateX(-100%);-webkit-transform:translateX(-100%);border-radius:0 10px 10px 0}.restock-rocket-toast-left.slide-out{-webkit-animation:.5s forwards slide-out-left;animation:.5s forwards slide-out-left}.restock-rocket-toast-right{right:0;transform:translateX(100%);-webkit-transform:translateX(100%);border-radius:10px 0 0 10px}.restock-rocket-toast-right.slide-out{-webkit-animation:.5s forwards slide-out-right;animation:.5s forwards slide-out-right}@keyframes slide{100%{transform:translateX(0)}}@-webkit-keyframes slide{100%{-webkit-transform:translateX(0)}}@keyframes slide-out-left{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}@-webkit-keyframes slide-out-left{0%{-webkit-transform:translateX(0)}100%{-webkit-transform:translateX(-100%)}}@keyframes slide-out-right{0%{transform:translateX(0)}100%{transform:translateX(100%)}}@-webkit-keyframes slid
Kids Bikes
Frames
Shop by Brand
See More
Gloria
Trek
Amflow
Yeti
Ridgeback
Brother
Genesis
Singular
Enigma
Frog
Kona
Surly
UTO (ex Eovolt)
Early Rider
Second-Hand Bikes
See More
Shop All Second-Hand
Custom Builds
See More
Custom Builds for sale
Custom Build Inspiration
Services
See More
Workshop
See More
Workshop Prices
Book a Service
Track Your Service
Other
See More
Custom Builds
Cycle To Work Schemes
Insure Your Bike
Parts & Components
See More
Brands
See More
Hope
Enve
Cockpit
See More
Handlebars
Stems
Grips & Bar-Tape
Headsets
Brakes
See More
Complete Brakes
Brake Rotors
Brake Pads
Brake Spares
Forks
See More
Front Suspension
Rear Suspension
Finishing Kit
See More
Tyres
Tubes
Tubeless
Saddles
Seat Posts & Clamps
Pedals
Gears & Drivetrain
See More
Components
E-bike Batteries and chargers
Wheels
See More
Complete Wheels
Essentials
See More
Accessories
See More
Bottles and Cages
Locks
Mudguards
Bike Packing
Bags and Transportation
Phone Holders
Bells
Lights
Rider Care
Maintenance
See More
Cleaners, Degreasers and Lubrication
Tubeless
Tools & Maintenance
Clothing and Protection
See More
ProjektRide Merchandise
Helmets
Gloves
Clothing
Socks
Sell Your Bike
Contact Us
Log in
Create account
Search
Cart
Close
Spend
£50
to qualify for free shipping
Congratulations! Your order qualifies for free shipping
Open navigation menu
Open search bar
Open cart
Home
Hire
Bikes
New Bikes
Shop All New Bikes
Road / Gravel / Touring Bikes
Hybrid / City Bikes
Mountain Bikes
Electric Bikes
Kids Bikes
Frames
Shop by Brand
Gloria
Trek
Amflow
Yeti
Ridgeback
Brother
Genesis
Singular
Enigma
Frog
Kona
Surly
UTO (ex Eovolt)
Early Rider
Second-Hand Bikes
Shop All Second-Hand
Custom Builds
Custom Builds for sale
Custom Build Inspiration
Services
Workshop
Workshop Prices
Book a Service
Track Your Service
Other
Custom Builds
Cycle To Work Schemes
Insure Your Bike
Parts & Components
Brands
Hope
Enve
Cockpit
Handlebars
Stems
Grips & Bar-Tape
Headsets
Brakes
Complete Brakes
Brake Rotors
Brake Pads
Brake Spares
Forks
Front Suspension
Rear Suspension
Finishing Kit
Tyres
Tubes
Tubeless
Saddles
Seat Posts & Clamps
Pedals
Gears & Drivetrain
Components
E-bike Batteries and chargers
Wheels
Complete Wheels
Essentials
Accessories
Bottles and Cages
Locks
Mudguards
Bike Packing
Bags and Transportation
Phone Holders
Bells
Lights
Rider Care
Maintenance
Cleaners, Degreasers and Lubrication
Tubeless
Tools & Maintenance
Clothing and Protection
ProjektRide Merchandise
Helmets
Gloves
Clothing
Socks
Sell Your Bike
Contact Us
Open search bar
My Account
Open cart
Open navigation menu
Open search bar
Open cart
Close search bar
Search text field
Submit your search request
View all
Loading more
.
.
.
New products
Home
/
Collections
/
New products
Sort by
Featured
Best selling
Alphabetically, A-Z
Alphabetically, Z-A
Price, low to high
Price, high to low
Date, old to new
Date, new to old
Sort
Price
£
From
-
£
To
Brand
Aeore
Altura
Amflow
Apidura
Atran Velo
AtranVelo
Basso
Benno
bic
Bombtrack
brooks
Brooks
Brother Cycles
Burgtec
Cane Creek
Continental
continental
Coros
Cube
Diamant
dynaplug
Early Rider
Enigma
Enve
Eovolt
Ergon
ESI
Evoc
extra
Fidlock
Flux
Frog
Genesis
Gloria
halo
happy bottom
Hope
Hydrapack
hydrapak
ison
Kinesis
Knog
Kona
Kranx
Kryptonite
Lazer
Lezyne
Madison
madison
Marin
Maxxis
morganblue
Muc-Off
Muc-off
One-Up
OneUp
Orange seal
ortlieb
Park Tool
Parktool
Passport
Pirelli
ProjektRide
renthal
Restrap
Ridgeback
ridgeback
RockShox
Rockshox
Safety Labs
Schwalbe
schwalbe
sea to summit
Shimano
Skarper
Surly
Teravail
Thomson
Topeak
Trek
Truflo
upgrade
Vecnum
Voile
Yeti
zipp
Model
1243
ACCESS
Accessories
Advance
All Road
Allant
Apidura
Arcus
backpack
Bags and Transportation
bar bag
Basket
Battery
bicycle
bike
Bike
Bike Packing
bikes
BIKES
Boost
bottles and cages
brooks
brothers
Checkpoint
Cleaners
Cleaners Degreasers and Lubrication
Complete wheels
components
Croix De Fer
Dew
Disc Trucker
District
Domane
Dual Sport
Early Rider
electric
Electron
Émonda
Eovolt
Equilibrium
esi
essentials
Finishing Kit
FKTI
fork bag
Frame
Frame bag
frames
FX
Genesis
Gravel
grips
Grips & Bar-tape
Halo
Handlebars
hope
Hope Controls
Hope Wheels
hybrid
izyrent
Kona
Madone
maintenance
morganblue
Mudguards
NEW
New
new bikes
pannier
Pedals
Precaliber
PROJEKTRIDE MERCHANDISE
Rail+
Renthal
Road
road
Road / Gravel / Touring Bikes
Saddle bags
Saddles
Seat Posts & Clamps
seatpost
seatposts and clamps
second hand
secondhand
Slash
Speed Concept
spo-cs-disabled
spo-default
spo-disabled
spo-notify-me-disabled
Straggler
surly
Suvea
Tools & Maintenance
Tour De Fer
Touring
Tyre
tyres
UTO
Verve
Material
Aluminum
Carbon
Steel
Alloy
Cork
Fabric
titanium
Size
XS
Extra Small
X-Small
X-small
S
SM
Small
small
M
MD
Medium
medium
Medium Large
L
LG
Large
XL
Extra Large
X-Large
X-large
XXL
XX-Large
44
47
48
49
50
52
54
56
58
60
61
62
64
27.5 x 2.10
29 x 2.20
700c x 38
700c x 42
700c x 47
12/142 CLINCHER/SHIMANO
12/142 CLINCHER/SHIMANO/CERAMIC
12/142 CLINCHER/XDR
12/142 CLINCHER/XDR/CERAMIC
38cm
42cm
46cm
48cm
50cm
52cm
54cm
56cm
58cm
60cm
62cm
0.5L
3L
9L
14L
1.4 Litre
2.8 Litre
4.0 Litre
10mm
20mm
30mm
40mm
100mm
120mm
125mm
150mm
160mm
35mm Reach
42.5mm Reach
12/142 - Mircospline
12/142 - N3W
12/142 - Shimano
12/142 - XDR
12X142MM CLINCHER/SHIMANO
12X142MM CLINCHER/SHIMANO/CERAMIC
12X142MM CLINCHER/XDR
12X142MM CLINCHER/XDR/CERAMIC
700c / 25mm
700c / 28mm
700c / 32mm
Extra Extra Large
Extra Large - 56
Extra Large - 60
L-XL
Large - 51
Large - 57
Large / Extra Large
Medium - 46
Medium - 53
Medium / Large
ML
One Size
Regular
S-M
Small - 50
Small / Medium
Colour
Baby Blue
Baumwollweiss Metallic
Black
Black / Green
Black / Purple
Black / Red
BLACK/GOLD
Black/Gold
Blue
Blue / Red
Blue Sage
Bronze Age
Carbon Black
Carbon Red Smoke
CHRIS KING R45D BLACK HUB
Chris King R45D Black Hub
Cobra Blood/Viper Red/Rage Red
Dark Blue
Dark Green/Ivy Smoke Splatter
Dark Red/Carbon Red Smoke Splatter
Dark Star
Deep Smoke
Dust
Emerald Iris/Purple Phaze
ENVE ALLOY DISC BLACK HUB
ENVE Alloy Disc Black Hub
Era White
Era White/Buff Beige
Era White/Supernova Marble
Fjord Blue to Miami Green Fade
Fury Red
Fury Red Fade
Gecko Phaze
Gloss Crystal White/Matte Deep Smoke
Gloss Dark Star/Matte Deep Smoke
Gloss Fury Red/Matte Deep Smoke
Gloss Lavender Haze
Glowstick to Living Coral Fade
GOLD
Gold
Gray
Green
Grey
Heugrün
ICON Couler
ICON Interstellar
Keswick Green / Lichen Green Splatter
Lava
Lava/Black Olive
Lavender Haze
Lehmbeige
Living Coral
Magic Mint
Marianas Blue
Maroon
Matt Black
Matte Black
MATTE BLACK
Matte Carbon Smoke/Prismatic Pearl
Matte Dark Web
Matte Dark Web/Clear Gloss
Matte Deep Smoke
Matte Lavender Haze/Deep Smoke
Matte Lichen/Keswick Green Fade
MATTE TURQUIOSE
Matte Turquiose
Mercury
Metallic Red Smoke to Red Carbon Smoke
Metallic Red Smoke/Red Carbon Smoke
Miami Green/Dark Aquatic Fade
Mitternachtsblau
Mulsanne Blue
Multi Color
Multi Colour
Orange
Pea Lime Soup
Pennyflake
Pink
Plasma Grey Pearl
Purple
Purple Flip/Black Fade
Purple Phaze/Amethyst Marble
Radioactive Red to Navy to Teal Fade
Red
RED
Red Smoke
Samtschwarz Metallic
Silver
SILVER
Slate
Spruce
Stealth Black
Teal
Team Replica
Tequila Sunrise
Turquoise
White
White / Black
White / Gold
Yellow
Condition
New
Second Hand
Electric
Yes
No
Filter
Clear filters (
0
)
Clear filters (
0
)
Close filters
Trek Émonda SL 6 Disc
Trek Émonda SL 6 Disc
Trek Émonda SL 6 Disc
£3,510.00
Red
Trek Émonda SL 6 Disc Pro
Trek Émonda SL 6 Disc Pro
Trek Émonda SL 6 Disc Pro
From £3,510.00
Black
Red
Trek Émonda SL 6 Pro Di2
Trek Émonda SL 6 Pro Di2
Trek Émonda SL 6 Pro Di2
£3,700.00
Black
Red
Trek Émonda SL 6
Trek Émonda SL 6
Trek Émonda SL 6
£4,200.00
Trek Émonda SL 7
Trek Émonda SL 7
Trek Émonda SL 7
£5,200.00
Trek Émonda SL 7
Trek Émonda SL 7
Trek Émonda SL 7
£5,200.00
Trek Émonda SLR 6
Trek Émonda SLR 6
Trek Émonda SLR 6
£7,000.00
Trek Émonda SLR 7
Trek Émonda SLR 7
Trek Émonda SLR 7
£8,300.00
Trek Émonda SLR 7 AXS
Trek Émonda SLR 7 AXS
Trek Émonda SLR 7 AXS
£8,300.00
Trek Émonda SLR 9 AXS
Trek Émonda SLR 9 AXS
Trek Émonda SLR 9 AXS
£12,250.00
Trek Speed Concept SLR 6 AXS
Trek Speed Concept SLR 6 AXS
Trek Speed Concept SLR 6 AXS
£8,900.00
Trek Speed Concept SLR 9 AXS
Trek Speed Concept SLR 9 AXS
Trek Speed Concept SLR 9 AXS
£13,425.00
Trek Speed Concept SLR 7
Trek Speed Concept SLR 7
Trek Speed Concept SLR 7
£8,450.00
Black / Purple
Black / Teal
Carbon Black
Black / Oil Slick
Black / Red
Trek Speed Concept SLR 7 AXS
Trek Speed Concept SLR 7 AXS
Trek Speed Concept SLR 7 AXS
£8,900.00
Black / Purple
Green / Purple
Carbon Black
Matte Black
Black / Red
Trek Speed Concept SLR 9
Trek Speed Concept SLR 9
Trek Speed Concept SLR 9
£11,250.00
Green
Black
Black / Purple
Black / Red
Trek Speed Concept SLR 8 AXS
Trek Speed Concept SLR 8 AXS
Trek Speed Concept SLR 8 AXS
£8,900.00
Black / Purple
Black / Green
Black
Black / Red
Trek Speed Concept SLR 9 AXS
Trek Speed Concept SLR 9 AXS
Trek Speed Concept SLR 9 AXS
£11,750.00
Black / Purple
Black / Green
Black
Black / Red
Trek Madone SLR 9 AXS Gen 8
Trek Madone SLR 9 AXS Gen 8
Trek Madone SLR 9 AXS Gen 8
From £10,500.00
Black
Multi Colour
Silver
Pink
Maroon
White / Gold
White
Trek Domane AL 2 Gen 4
Trek Domane AL 2 Gen 4
Trek Domane AL 2 Gen 4
£1,050.00
Black
Red
Trek Domane AL 4 Gen 4
Trek Domane AL 4 Gen 4
Trek Domane AL 4 Gen 4
£1,700.00
Trek Domane AL 5 Gen 4
Trek Domane AL 5 Gen 4
Trek Domane AL 5 Gen 4
£2,000.00
Trek Domane SLR 9 Gen 4
Trek Domane SLR 9 Gen 4
Trek Domane SLR 9 Gen 4
From £10,800.00
Multi Color
Matte Black
Carbon Black
Orange
Blue / Red
Black / Red
White
Trek Domane SLR 8 AXS Gen 4
Trek Domane SLR 8 AXS Gen 4
Trek Domane SLR 8 AXS Gen 4
£8,450.00
Multi Colour
Black
Orange
Red
Trek Dual Sport 2 Gen 5
Trek Dual Sport 2 Gen 5
Trek Dual Sport 2 Gen 5
From £650.00
Blue
Green
Grey
←
1
…
15
16
17
18
19
…
46
→