Giter VIP home page Giter VIP logo

hangboard's People

Contributors

alnorris avatar chadrien avatar clauderic avatar dominictracey avatar duddu avatar fabriziomoscon avatar fruitiex avatar gitter-badger avatar hineshmandalia avatar ianko avatar janivihervas avatar jevakallio avatar justinwoo avatar kimmobrunfeldt avatar krivachy avatar lapanti avatar lvarayut avatar mkauppila avatar sercanov avatar shamilik avatar tehmou avatar tino-junge avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

hangboard's Issues

android timing performance

With the older galaxy device I have, the sounds aren't always evenly spaced. This is with release build 0.3.2. The emulator seems to work fine, just when I pull from the Play Store onto my device.

Timer doesn't continue when app is in background

One of the motivators for this app was so that I didn't have to switch between my generic timer app (Tabata) and Google Spreadsheets for recording weight adjustments because the timer stops when you change away from Tabata. While being able to manage the whole hangboard process inside of the app is nice, it would be good to be able to have the timer continue in the background if you checked your messages during recovery phases, etc.

Next workout weight wrong

From my intermediate workout:

Displayed value for next workout wrong on 2nd set where I edited on workout screen. 30 > 50 showed as 70. Though it was correct on the recorded weight.

Create two other boards and allow users to pick

The idea is we want to mimic pulling new board definitions down to the app without updating it. So a REST or graphQL api. For now just do it with local storage JSON. It should not be kept in the store/state until the user explicitly chooses it.

Use the Metolius Contact and BeastMaker 1000.

  • create image maps
  • put JSON descriptions in ~/data directory (not ~/static)
  • create a board directory in ~/static that lists all board name and id

Add board selection list to Settings. When user picks non-default (Trango RP) board:

  • load that board into static store (configuration)
  • copy image to ???
  • update all workouts to reference new boardId?

Unit tests not running

Failing on checking global that allows redux tooling in dev builds. It seems like this should be stupid easy to mock out in jest, but I poked at it a few different ways and couldn't figure it out right off.

Allow program editing

User should be able to define:

  • warmup length
  • the number of grips in their workout
  • which sets they do for each grip

Add history view

New tab with one row per session as links to session detail StackView-displayed component showing session detail. This has a header with date, board, etc. and then has a row per set, grouped by grip. Reuse last complete component. Show weight per set.

Grip map for Tango RP board

? icon next to grip name on workout page pops up image in Stack Navigator which allows back arrow to return to workout. Image has picture with numbers and a key at the bottom.

Allow set edit/add

Allow user to define:

  • number reps
  • seconds on, off, recover
  • baseline weight add

Ask for new baseline for next workout after last set.

Allow users to record current workout weights during the session, and allow them to edit the next workout baseline after each set.

Some older thoughts:

What I think you are saying is that you should wait until the last set on the grip has been completed before asking about the next workout. I guess the problem I have here is that if you've screwed yourself with a too-large baseline, you shouldn't have to go through the whole set with incorrect weights being displayed to you. Note that there are two places you can edit the weight. During the exercise/rest/recovery phase (where you are saying "change of plans, this is the weight I'm now working with") and after the set completes when you specify what you want the weight to be for the next workout. Here's a scenario I can see myself getting into:

  • I finish the big edge on the advanced workout and am feeling weak but make it through and am into the recovery phase before the next grip
  • I see that I have a baseline of 30 for the next grip. This is too much I'm thinking so I make the baseline 20. (baseline => 20)
  • I go through the set and don't even make it to the end on the first set. I record that I only did 4 reps successfully and recommend that I use 10 for the baseline next time. (baseline => 10)
  • I'm already in the recovery phase so the display should now show (10 baseline +10 = 20) for the second set. I don't think I can do it, so I click the weight down to 10. (baseline => 0)-
  • I don't make it through again so I record I only completed three reps and that my second set next time should be 0 (baseline-10 + 10). (baseline => -10)
  • We are into the third set now so the weight is showing as (baseline-10 + 20 = 10). I click it down to 0 for the set. (baseline => -20)
  • Again I don't make it through so I record my last successful rep and change the next workout weight from 0 to -10. (baseline => -30)

I'm not sure if I'm being crazy with this but it's sort of complicated to define what makes sense to the user. We are only storing a baseline weight for the grip, but displaying the baseline adjusted weight for each set. And allowing the user to edit this baseline adjusted weight.

From Lena:
I also do not like that it is asking me to make a decision for the next workout weight after each interval. If I'm doing an advanced workout, for example, and I just finished the first set of 7 hangs, I do not yet know if I would be increasing weights for the next hangboard workout. I will only be able to make that decision after I finish the 3rd set of hangs on this hold, becuase that's what determines whether I would be increasing the weight, or not, for the next time I do hangboard. But right now, the only way for me to edit that would be to go back, and that would mess up my timer, so I still need to make a note on paper.

Add in a 10s 'prep' phase after a user navigates back

I noticed this would have been nice to have when I used the current (0.3.x) version. Something happens and you aren't ready to start a set but it starts and you need to go back. So you hit the back button, but that just restarts the exercise timer. You still have to put the phone down, get back under the board and get ready to go for the set.

This could look like "if you hit the back button, add in a temporary 10s 'Get Ready' phase before starting the exercise clock"

Add in Rock Rings

With the limited number of holds, it makes creating a workout something of a stretch but we could double up and make it work. Requested by Nate H. on Maine Climbers FB group.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.