Kona
Surly
UTO (ex Eovolt)
Early Rider
/span\u003e\u003c\/b\u003e\u003cspan style=\"font-weight: 400;\"\u003eShimano MT801 Bottom Bracket, Gusset\u003c\/span\u003e\u003cspan style=\"font-family: -apple-system, BlinkMacSystemFont, 'San Francisco', 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif; font-size: 0.875rem;\"\u003e sealed bearing headset.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePedals - \u003c\/strong\u003eBurgtec Composite pedals\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003e*Stock is fairly steady at the moment, if a part goes out of stock, we would always replace with like for like component. Where possible, we aim to optimise bar width, stem length and crank length depending on what size has been ordered.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eIf you're drawn to the aesthetic of the bike but feel you require a wider gear range, chunkier tires, or fancy upgrades, fear not! We specialize ispond promptly and aim to get back to you within 5 working hours. Your satisfaction and peace of mind are our top priorities.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eEmail -\u003cspan\u003e \u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"mailto:edinburgh@projektride.co.uk\"\u003e\u003cspan style=\"font-weight: 400;\"\u003eedinburgh@projektride.co.uk\u003c\/span\u003e\u003c\/a\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eT - 0131 374 5324\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eIf you would like to take advantage of the cycle to work schemes, please give us a call or email and we can get this set-up for you.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eThanks!\u003c\/span\u003e\u003c\/p\u003e","published_at":"2025-10-28T19:34:26+00:00","created_at":"2025-10-28T17:04:26+00:00","vendor"
ble":true,"featured_image":null,"available":true,"name":"Brother Big Bro Hardtail Bike - Complete Shop Stock 2025 Build - Swamp Thing \/ Medium","public_title":"Swamp Thing \/ Medium","options":["Swamp Thing","Medium"],"price":220000,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56300214550911,"title":"Swamp Thing \/ Large","option1":"Swamp Thing","option2":"Large","option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Brother Big Bro Hardtail Bike - Complete Shop Stock 2025 Build - Swamp Thing \/ Large","public_title":"Swamp Thing \/ Large","options":["Swamp Thing","Large"],"price":220000,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56300214583679,"title":"Swamp Thing \/ Extra Large","option1":"Swamp Thing","option2":"Extra Large","option3":null,
- Second-Hand Bikes
- Shop All Second-Hand
- percentage":false}],"disabled_plan_ids":[713813721471,713176482175],"cached_at":"2026-02-18T08:36:42Z"}; if (cachedData && typeof cachedData === 'object' && cachedData.cached_at) { // Find the maximum updated_at from all items in old array const oldPlans = window._RestockRocketConfig.sellingPlans; const maxUpdatedAt = Array.isArray(oldPlans) && oldPlans.length > 0 ? oldPlans.reduce(function(max, plan) { // Parse dates for proper comparison (handles mixed ISO formats) if (plan.updated_at) { const planDate = new Date(plan.updated_at); const maxDate = max ? new Date(max) : null; return (!maxDate || (planDate && !isNaN(planDate) && planDate > maxDate)) ? plan.updated_at : max; } return max; }, '') : null; // Use cached if old array is empty/has no timestamps, or cached is newer // Parse dates for comparison to handle format differen estockRocketConfig.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.product = {"id":15364529783167,"title":"Brother Big Bro Hardtail Bike - Complete Shop Stock 2025 Build","handle":"brother-big-bro-hardtail-bike-complete-shop-stock-build-copy","description":"\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eOver the past Four years at ProjektRide Bike shop, we've meticulously crafted hundreds of custom builds, gaining invaluable expertise in pairing the perfect parts with each frame. We've r
uk\/cdn\/shop\/files\/BEE02E39-1AE9-468F-B092-50D17F9D5151.jpg?v=1761673251"},"aspect_ratio":1.505,"height":3264,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/BEE02E39-1AE9-468F-B092-50D17F9D5151.jpg?v=1761673251","width":4912},{"alt":null,"id":68399512846719,"position":5,"preview_image":{"aspect_ratio":1.505,"height":3264,"width":4912,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/63EE569D-6CFC-4984-A256-841AF3B95A27_e06100c2-6188-41c9-b470-739bad202c11.jpg?v=1761673251"},"aspect_ratio":1.505,"height":3264,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/63EE569D-6CFC-4984-A256-841AF3B95A27_e06100c2-6188-41c9-b470-739bad202c11.jpg?v=1761673251","width":4912},{"alt":null,"id":68399512879487,"position":6,"preview_image":{"aspect_ratio":1.505,"height":3264,"width":4912,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/347BD882-5B16-4033-9E85-45F41BAC6686_aa48751c-d21c-432e-b759-89b1399f2818.jpg?v=1761673251"},"aspect_ratio":1.505,"height":3264,"media_type":"image","src"


<
th":3360,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2025-10-28at17.38.40.png?v=1761673251"},"aspect_ratio":1.776,"height":1892,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2025-10-28at17.38.40.png?v=1761673251","width":3360}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eOver the past Four years at ProjektRide Bike shop, we've meticulously crafted hundreds of custom builds, gaining invaluable expertise in pairing the perfect parts with each frame. We've recently expanded our offerings to include complete Brothers bikes as part of our custom-build lineup.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eThe Brother Big Bro is an incredibly versatile bike, perfect for bike packing, mountain biking, touring, commuting, and more. It's a true all-rounder, designed to excel in various riding conditions and eset, 32 tooth chainring, 11-51 tooth cassette. 180mm 6 bolt rotors\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eBars, Stem and Seatpost\u003c\/b\u003e\u003cspan style=\"font-weight: 400;\"\u003e\u003cspan\u003e \u003c\/span\u003e- Gusset, 50mm Length Stem, 780mm Width bars.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eGrips\u003cspan\u003e \u003c\/span\u003e\u003c\/b\u003e\u003cspan style=\"font-weight: 400;\"\u003e- Ergon GS1\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eWheelset\u003cspan\u003e \u003c\/span\u003e\u003c\/b\u003e\u003cspan style=\"font-weight: 400;\"\u003e- Halo Ridgeline 29er, 32 hole spoke. \u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eTyres\u003c\/b\u003e\u003cspan style=\"font-weight: 400;\"\u003e\u003cspan\u003e \u003c\/span\u003e- 29'' x 2.3 Schwalbe
p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003e*Stock is fairly steady at the moment, if a part goes out of stock, we would always replace with like for like component. Where possible, we aim to optimise bar width, stem length and crank length depending on what size has been ordered.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eIf you're drawn to the aesthetic of the bike but feel you require a wider gear range, chunkier tires, or fancy upgrades, fear not! We specialize in custom builds tailored to your specific needs and preferences. Get in touch with us, and let's discuss how we can create your dream bike together.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eOnce you've placed your order for the bike, please expect a delivery time of around 7 to 10 days. Your patience is appreciated as we ensure your bike is prepared and delivered to you promptly.\u003c\ath.floor(Date.now() / 1000); // Current time in seconds
const liquidCacheAge = now - liquidRenderedAt; // Age in seconds
// Handle client clock ahead of server
if (liquidCacheAge
p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003e*Stock is fairly steady at the moment, if a part goes out of stock, we would always replace with like for like component. Where possible, we aim to optimise bar width, stem length and crank length depending on what size has been ordered.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eIf you're drawn to the aesthetic of the bike but feel you require a wider gear range, chunkier tires, or fancy upgrades, fear not! We specialize in custom builds tailored to your specific needs and preferences. Get in touch with us, and let's discuss how we can create your dream bike together.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan style=\"font-weight: 400;\"\u003eOnce you've placed your order for the bike, please expect a delivery time of around 7 to 10 days. Your patience is appreciated as we ensure your bike is prepared and delivered to you promptly.\u003c\ath.floor(Date.now() / 1000); // Current time in seconds
const liquidCacheAge = now - liquidRenderedAt; // Age in seconds
// Handle client clock ahead of server
if (liquidCacheAge 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 (settings.multi_language_enabled) {
if (!settings.translations) {
// Translations enabled but no
age = Date.now() - updatedAt.getTime();
if (age hopify.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(cac
age = Date.now() - updatedAt.getTime();
if (age hopify.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(cacfig.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._RestockRocketConfig.scriptUrlCollection);
} else {
console.debug(`STOQ - no scripts enab
Workshop




<<<
<
<<
<<