This site has limited support for your browser. We recommend switching to Edge, Chrome, Safari, or Firefox.Services

See More
Early Rider
Cart
Shop All Second-Hand
Custom Builds for sale

Custom Build Inspiration
   
Quantity:
1
Header Image
1+
Increase quantity
Add to cart
Notify me when this product is available:

HIRE - BIKE PACKING BUNDLEand

spares

£0.00with

every
   bike

hire,
so
you’re
never kit tubes levers , multitool
Whether off for
a or
a
multi-
day
expedition,

Product Detailswe've

Planning got a your bikepacking back. adventure Just with select one the of bikepacking our kit hire when bikes?booking
Choose your our hire, bikepacking and kit hit add-on at the no road extra with cost confidence!and get  fully equipped ProjektRide Bike Hire Edinburgh.for the journey  ahead. With this option, {"id":15085580878207,"title":"HIRE - BIKE PACKING BUNDLE","handle":"hire-bike-packing-bundle","description":"\u003cp data-end=\"411\" data-start=\"71\"\u003e\u003cstrong data-end=\"135\" data-start=\"71\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ePlanning \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eadventure \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eone \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eof \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikes?\u003c\/span\u003e\u003c\/strong\u003e\u003cbr data-end=\"138\" data-start=\"135\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eChoose \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eadd-\u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eon \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eat \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eno \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eextra \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecost \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eget \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efully \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eequipped \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ejourney \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eahead. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethis \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoption, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou’ll \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ereceive \u003c\/span\u003e\u003cstrong data-end=\"293\" data-start=\"268\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etwo \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003espacious \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003epanniers\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"314\" data-start=\"297\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehandlebar \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"332\" data-start=\"318\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003esaddle \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"353\" data-start=\"340\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eframe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e – \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eperfect \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecarrying \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eeverything \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eneed \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etrip.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"686\" data-start=\"413\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ealso \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003einclude \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eessential \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etools \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003espares \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eevery \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebike \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eso \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou’re \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003enever \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecaught \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoff \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eguard. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eYour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewill \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecome \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cstrong data-end=\"551\" data-start=\"536\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003einner \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etubes\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cstrong data-end=\"568\" data-start=\"553\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etyre \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003elevers\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"589\" data-start=\"576\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emultitool\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eensuring \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eprepared \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebasic \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eroadside \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003erepairs \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emaintenance \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewhile \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eout \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eexploring.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWhether \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eheading \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoff \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eweekend \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eescape \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emulti-\u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eday \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eexpedition, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewe've \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003egot \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eback. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eJust \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eselect \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewhen \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebooking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eroad \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003econfidence!\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e \u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e\u003cspan\u003eProjektRide Bike Hire Edinburgh.\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\u003cul\u003e\u003c\/ul\u003e\n\u003cp\u003e \u003c\/p\u003e","published_at":"2025-05-17T12:52:01+01:00","created_at":"2025-05-17T12:52:01+01:00","vendor":"ProjektRide","type":"Bike Hire - Equipment","tags":["spo-cs-disabled","spo-default","spo-disabled","spo-notify-me-disabled"],"price":0,"price_min":0,"price_max":0,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":55470310752639,"title":"Default Title","option1":"Default Title","option2":null,"option3":null,"sku":"","requires_shipping":false,"taxable":true,"featured_image":null,"available":true,"name":"HIRE - BIKE PACKING BUNDLE","public_title":null,"options":["Default Title"],"price":0,"weight":0,"compare_at_price":null,"inventory_management":null,"barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]}],"images":["\/\/projektride.co.uk\/cdn\/shop\/files\/Yourparagraphtext.png?v=1747481130","\/\/projektride.co.uk\/cdn\/shop\/files\/resize_width_1000_1296x_d1ffd242-63bc-4a9f-85e2-400f274532d7.jpg?v=1747481423","\/\/projektride.co.uk\/cdn\/shop\/files\/MediumBagel-1000dBlack_e93e5742-98ec-49fc-a228-4e6b779f3781_1800x1800-removebg-preview.png?v=1747481439","\/\/projektride.co.uk\/cdn\/shop\/files\/71BUhqY7apL._AC_UF894_1000_QL80_-removebg-preview.png?v=1747481437","\/\/projektride.co.uk\/cdn\/shop\/files\/1470757225-89172100.webp?v=1747481463","\/\/projektride.co.uk\/cdn\/shop\/files\/PRSBA0064.webp?v=1747481972"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/files\/Yourparagraphtext.png?v=1747481130","options":["Title"],"media":[{"alt":null,"id":65817952059775,"position":1,"preview_image":{"aspect_ratio":1.415,"height":1587,"width":2245,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Yourparagraphtext.png?v=1747481130"},"aspect_ratio":1.415,"height":1587,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Yourparagraphtext.png?v=1747481130","width":2245},{"alt":null,"id":65817987580287,"position":2,"preview_image":{"aspect_ratio":1.215,"height":745,"width":905,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/resize_width_1000_1296x_d1ffd242-63bc-4a9f-85e2-400f274532d7.jpg?v=1747481423"},"aspect_ratio":1.215,"height":745,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/resize_width_1000_1296x_d1ffd242-63bc-4a9f-85e2-400f274532d7.jpg?v=1747481423","width":905},{"alt":null,"id":65817992954239,"position":3,"preview_image":{"aspect_ratio":1.0,"height":500,"width":500,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/MediumBagel-1000dBlack_e93e5742-98ec-49fc-a228-4e6b779f3781_1800x1800-removebg-preview.png?v=1747481439"},"aspect_ratio":1.0,"height":500,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/MediumBagel-1000dBlack_e93e5742-98ec-49fc-a228-4e6b779f3781_1800x1800-removebg-preview.png?v=1747481439","width":500},{"alt":null,"id":65817992462719,"position":4,"preview_image":{"aspect_ratio":1.832,"height":369,"width":676,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/71BUhqY7apL._AC_UF894_1000_QL80_-removebg-preview.png?v=1747481437"},"aspect_ratio":1.832,"height":369,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/71BUhqY7apL._AC_UF894_1000_QL80_-removebg-preview.png?v=1747481437","width":676},{"alt":null,"id":65817995739519,"position":5,"preview_image":{"aspect_ratio":1.0,"height":900,"width":900,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/1470757225-89172100.webp?v=1747481463"},"aspect_ratio":1.0,"height":900,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/1470757225-89172100.webp?v=1747481463","width":900},{"alt":null,"id":65818065994111,"position":6,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/PRSBA0064.webp?v=1747481972"},"aspect_ratio":1.0,"height":550,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/PRSBA0064.webp?v=1747481972","width":550}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cp data-end=\"411\" data-start=\"71\"\u003e\u003cstrong data-end=\"135\" data-start=\"71\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ePlanning \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eadventure \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eone \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eof \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikes?\u003c\/span\u003e\u003c\/strong\u003e\u003cbr data-end=\"138\" data-start=\"135\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eChoose \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eadd-\u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eon \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eat \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eno \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eextra \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecost \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eget \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efully \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eequipped \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ejourney \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eahead. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethis \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoption, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou’ll \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ereceive \u003c\/span\u003e\u003cstrong data-end=\"293\" data-start=\"268\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etwo \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003espacious \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003epanniers\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"314\" data-start=\"297\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehandlebar \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"332\" data-start=\"318\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003esaddle \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"353\" data-start=\"340\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eframe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e – \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eperfect \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecarrying \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eeverything \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eneed \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etrip.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"686\" data-start=\"413\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ealso \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003einclude \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eessential \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etools \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003espares \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eevery \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebike \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eso \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou’re \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003enever \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecaught \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoff \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eguard. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eYour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewill \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecome \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cstrong data-end=\"551\" data-start=\"536\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003einner \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etubes\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cstrong data-end=\"568\" data-start=\"553\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etyre \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003elevers\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"589\" data-start=\"576\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emultitool\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eensuring \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eprepared \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebasic \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eroadside \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003erepairs \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emaintenance \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewhile \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eout \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eexploring.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWhether \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eheading \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoff \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eweekend \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eescape \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emulti-\u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eday \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eexpedition, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewe've \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003egot \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eback. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eJust \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eselect \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewhen \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebooking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eroad \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003econfidence!\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e \u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e\u003cspan\u003eProjektRide Bike Hire Edinburgh.\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\u003cul\u003e\u003c\/ul\u003e\n\u003cp\u003e \u003c\/p\u003e"} bag<a class="product__media product__media--featured" href="/products/hire-smith-convoy-helmet" title="Hire Lazer Compact Helmet" aria-label="Hire Lazer Compact Helmet" style="background-image: url(//projektride.co.uk/cdn/shop/files/my2023_tempo-kineticore-black_right_1400x1011800x600-removebg-preview_1_600x.png?v=1747484784)"> – <span class="visually-hidden">Hire Lazer Compact Helmetperfect > for

include essential Hire Ortlieb 40L Pannier Bagstools and spares Hire Ortlieb 40L Pannier Bags so you’re never Hire Ortlieb 40L Pannier Bagscaught off £0.00guard. Your kit will Hire Kryptolok Standard U-Lock & 4 foot Kryptoflex cablecome with inner <, span class="visually-hidden">Hire Kryptolok Standard U-Lock & 4 foot Kryptoflex cable , and a Hire Kryptolok Standard U-Lock & 4 foot Kryptoflex cablemultitool , £0.00ensuring you're prepared for HIRE - BIKE PACKING BUNDLEbasic roadside repairs HIRE - BIKE PACKING BUNDLE out exploring.

Whether off for a weekend HIRE - BIKE PACKING BUNDLEescape or £0.00a multi- day expedition, we've got your #FeaturedImage--template--15326745395426__1645734801adfd4c07 { --overlay-opacity: 0.2; }back. Just select the when booking your hire, ProjektRideand Buy Sell Ride Confidenthit the road with FAQconfidence!Questions and answers

 

ProjektRide Bike Hire Edinburgh.

I'm looking to find out more information about a product, where can I find this?

     

    Please get in touch with a member of the team either by phone (
    01313745324
    ) or email (
    3cspan class=\"_fadeIn_m1hgl_8\"\u003eexploring.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWhether \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eheading \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoff \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eweekend \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eescape \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emulti-\u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eday \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eexpedition, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\ u003ewe've \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003egot \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eback. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eJust \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eselect \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewhen \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebooking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan c
    lass=\"_fadeIn_m1hgl_8\"\u003eroad \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003econfidence!\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e \u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e\u003cspan\u003eProjektRide Bike Hire Edinburgh.\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\u003cul\u003e\u003c\/ul\u003e\n\u003cp\u003e \u003c\/p\u003e"}; window._RestockRocketConfig.variantsInventoryPolicy = {55470310752639 : "deny",}; window._RestockRocketConfig.variantsInventoryQuantity = {55470310752639 : parseInt("-106"),}; window._RestockRocketConfig.variantsPreorderCount = {55470310752639 : parseInt(""),}; window._RestockRocketConfig.variantsPreorderCountForMarket = {55470310752639 : null,}; window._RestockRocketConfig.variantsPreorderMaxCount = {55470310752639 : parseInt(""),}; window._RestockRocketConfig.va riantsPreorderMaxCountForMarket = {55470310752639 : null,}; window._RestockRocketConfig.variantsShippingText = {55470310752639 : "",}; window._RestockRocketConfig.variantsShippingTextForMarket = {55470310752639 : null,}; window._RestockRocketConfig.selected_variant_id = 55470310752639; window._RestockRocketConfig.selected_variant_available = window._RestockRocketConfig.product.variants.find(function(variant) { return variant.id == window._RestockRocketConfig.selected_variant_id }).available;window._RestockRocketConfig.scriptUrlProduct = 'https://cdn.shopify.com/extensions/019cd40b-736e-74a5-adbe-431365bfd910/restockrocket-1-465/assets/restockrocket-product.js' window._RestockRocketConfig.scriptUrlCollection = 'https://cdn.shopify.com/extensions/019cd40b-736e-74a5-adbe-431365bfd910/restockrocket-1-465/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 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 FAQ<

    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 Questions and answers<

    = 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 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
    age = Date.now() - updatedAt.getTime(); if (age <
    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