Skip to content

An app where climbers can track their Ascents, and setters publish their work

License

Notifications You must be signed in to change notification settings

MihaiB-dev/Bouldering_app

Repository files navigation

Issues Commits MIT License LinkedIn


Logo

Bouldering app project in Java

A way for climbers to track what routes they have done in the past and for setters to publish their routes.
Explore the docs »

· Report Bug · Request Feature

Table of Contents
  1. How bouldering works
  2. Getting Started
  3. Usage
  4. Roadmap
  5. License
  6. Contact

About the Project

How bouldering works?

Bouldering is a style of climbing done close to the ground without the use of ropes and harnesses, and with crash matting for protection. On a single wall there are routes with a variety of difficulties from which you can choose from. For this app we will use Font-Scale (French) and colours.

We will have these specified grades:

  • (green zone beginners)> 4, 5, 5+
  • (yellow zone intermediate) 6a, 6a+, 6b, 6b+, 6c, 6c+, 7a
  • (red zone Advanced) 7a+, 7b, 7b+, 7c
  • (purple zone Pro) 7c+, 8a, 8a+, 8b
  • (Whitezone Elite) 8b+, 9a, 8c+

(back to top)

What is my contribution to this community?

There are some features that I want to implement during this project:

  1. A secure way to sign-up and log-in on the platform
  2. A way for setters to add a route image into the database
  3. Specify on the image what is the route itself (click on a volume and create a pointer to that volume)
  4. A feature for climbers to add their Ascents to their profile
  5. A custom profile with stats that are dynamically changing after each ascent. (Like in GTA 5)
  6. A feature for setters to add the routes in the archives (for future use)
  7. Setters can grade their routes that gradually changes due to average grade ascents of climbers that complete the route.
  8. A main page with all routes that are active on the walls.
  9. A visualization for Climbers to see their Ascents sorted by difficulty
  10. Most popular routes currently on the walls.
  11. An admin tht can Delete Users, Delete Routes and Ascents
  12. A report with all the functions that are used in the app (for school project)

(back to top)

Tech details

For more information about what contains each class and about how the functions work, please refer to the Documentation

Built With

  • Static Badge
  • Static Badge
  • [Static Badge]

Getting Started

For this app we will need to install OpenCV, and clone the project

Prerequisites

  1. Follow this tutorial to Install OpenCV
  2. Install docker + mysql image, tutorial here (step 1 - 4)

Installation

  1. Clone the repo
   git clone https://github.com/MihaiB-dev/Bouldering_app
  1. If you are using Intellij, you can watch with tutorial

  2. Setup the docker database for this project, I've made a tutorial here (step 5 and 6). Name the database Bouldering_app.

Usage

Firstly, run the Main.java. There are 3 pages : unregistered Page, setters main page and climbers main page. Unregistered page, first that you will see:

image

Setter main page:

image

Climber main page:

image

(back to top)

Roadmap

  • Create an authentication process for users
  • Create a method to add routes as image, and edit on image (computer vision)
  • Create the user profile (printing)
  • Add ascents as climbers (auto functions : update user stats, auto increment route attempts with attempts from the usera ascent, update average grade from the user, update the liveGrade of the route by getting the average of all users that added this route to their ascents)
  • Archive routes as setters
  • Connect to a database all the data stored
  • Add exceptions (catch errors that may be)
  • Log for setters when a new route is added

See the open issues for a full list of proposed features (and known issues).

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Bivol Mihai - [email protected]

Project Link: https://github.com/MihaiB-dev/Bouldering_app

(back to top)

About

An app where climbers can track their Ascents, and setters publish their work

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages