Inspiration

Bouldering is one of the fastest-growing sports around the globe. The goal of BlocBond is to provide a centralised hub for all those with an interest in bouldering. With a passion for bouldering ourselves, we hope to reduce the barrier to entry, strengthen the community, and alleviate common issues faced within the bouldering space.

A common issue that plagues the bouldering scene is the inconsistent difficulty rating for climbing routes across gyms. The standard for ratings is an increasing difficulty scale from V1 - V15+, but not all gyms abide by these standards. Additionally, a rating of V5 from one gym may actually be vastly different from a V5 rating in another gym. BlocBond aims to allow climbers to rate their completed routes based on this standard scale, providing a centralized rating system that aims to increase the consistency and accuracy of climbs.

Another issue faced in the bouldering space is the difficulties faced by those with colorblindness. A bouldering wall typically consists of many colourful routes which often cross each other. The only indicators for a route are the tape which marks start and end holds and the coloured holds themselves. This proves troublesome when a route is perhaps created with red holds and another is created with green holds in close vicinity. Those with colorblindness may find it hard to distinguish which holds are their to use as they both look the same. BlocBound allows climbing gyms (and route setters) to post images of routes with the ability to outline all the holds in a climb. This enables people with colour blindness to have a much easier time identifying the correct holds.

It is also sometimes difficult for climbers to find routers of certain category (overhang, slab, etc) and hold type (pinch, crimp, etc). BlocBond makes it easier for climbers to find a desired route by including tags to posted routes.

What it does

  • Find climbing gyms through an interactive map
  • Get directions and real-time navigation to gyms
  • View interior maps of gyms for easier navigation
  • Browse climbs globally
  • View climbing route information
  • Rate climbing routes
  • Upload routes that outline the correct holds with boxes
  • Interactive and responsive User Interface

How we built it

GitHub, Flask, Python, TypeScript, TailwindCSS, Next.js, Vercel. Database, Canvas, JWT Tokens, HTML, React, shadcn/ui, Aceternity UI, Framer Motion, GoDaddy NextAuth.js (Google Provider - Google Account Integration), Google Maps JavaScript API, Google Maps Markers, Google Cloud Storage (Buckets), Google Cloud Run (Backend)

Challenges we ran into

  • Saving the route image file after adding outlines
  • Resolving merge conflicts
  • Time constraints prevented us from implementing all functionality we had planned

Accomplishments that we're proud of

  • Integrated google technologies
  • Developed fully functionally backend
  • Created visually appealing frontend
  • Assisting those with colorblindness
  • Building an application for our passions

What we learned

  • Teamwork and collaboration
  • Time management
  • Working in a collaborative codebase

What's next for BlocBond

  • Add a community board that allows for discussion
  • Add functionality to share routes and gyms
  • Complete functionality that allows completed routes to be saved to the user’s profile
  • Complete search bar functionality
  • Add functionality to delete route uploads
  • Add functionality to save interested routes to profile
  • Automatically highlighting holds on new routes through AI (Convolutional Neural Network)
  • Displaying climbs in 3D (Three.js)

Built With

Share this project:

Updates