Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add Workout Editor #115

Open
10 of 15 tasks
dvmarinoff opened this issue Apr 15, 2022 · 6 comments
Open
10 of 15 tasks

add Workout Editor #115

dvmarinoff opened this issue Apr 15, 2022 · 6 comments

Comments

@dvmarinoff
Copy link
Owner

dvmarinoff commented Apr 15, 2022

Workout editor:

  • User can create a workout, executable by Flux

  • User can save the workout

  • User can export the workout in .zwo format

  • User can export the workout in .fit format

  • User can use the custom slope attributes to set slope targets

  • User can add a new row by pressing the add (+) button

  • User can remove the last row by pressing the remove (-) button

  • User can save the workout from the save button

  • User can export the workout from the export/download button

  • User can add a row to a selection group (multiple rows) by using the radio buttons

  • User can duplicate complex intervals by selecting a group of rows and pressing the add button

  • User can remove a group of rows by selecting them and pressing the remove button

  • User can insert a Row in a position after a selected Row

  • add a feedback workout graph

  • * maybe add a plain text declaration (workout DSL)

Screenshot

Example for a duplicating a Over-Under + Rest group:

Screenshot

Screenshot

@cbourgeois
Copy link

Nice initiative, I played a bit with it, good job.

Overall I think that the best UI for workout editors out there is the one provided by intervals.icu :
https://forum.intervals.icu/t/workout-builder/1163

Just typing :

6m 50%
10m 40-50%

is much faster than fiddling with each value in a table like the one above.
Displaying the graph is also a nice UI feedback, which allows in a glance to ensure the sanity of the values.

I would recommend that design.

At the moment, the biggest limitation with workouts in your otherwise great app is the fact that files workouts are not saved across sessions, and it's not very friendly to have to reupload them everytime.

@TClin76
Copy link

TClin76 commented Apr 27, 2022

Does Slope have higher priority than ERG If target power and target slope presented in the same interval?

@dvmarinoff
Copy link
Owner Author

@TClin76 Yes, slope has higher priority. To disable it for the interval leave it blank or dash, but 0 would set the trainer to slope mode with 0 grade.

@dvmarinoff
Copy link
Owner Author

dvmarinoff commented Apr 27, 2022

@cbourgeois

The text declaration syntax is an interesting option, thanks for sharing! Do you know what is the general feedback on this approach from intervals.icu?

workouts are not saved across sessions

The app is fully static, which leaves the option to choose between the browsers' IndexedDB and LocalStorage. I've been thinking on the problem, but I can't make my mind on how to approach it. IndexedDB is frankly giving me nightmares, and I don't know if I can trust LocalStorage for storing User data of that size. I am thinking also of adding some sort of bulk import/export solution that will allow for storing the workouts on the local user device and transferring them to another device.

@dvmarinoff
Copy link
Owner Author

Created a poll discussion about the interval definition. You can vote here

@cbourgeois
Copy link

@cbourgeois

The text declaration syntax is an interesting option, thanks for sharing! Do you know what is the general feedback on this approach from intervals.icu?

Hey @dvmarinoff , the feedback around this looks positive, from what I can gather reading the thread I linked above.
I also personally found it very handy, quick and powerful, this is of course biased by the fact that this I am in the software industry.

workouts are not saved across sessions

The app is fully static, which leaves the option to choose between the browsers' IndexedDB and LocalStorage. I've been thinking on the problem, but I can't make my mind on how to approach it. IndexedDB is frankly giving me nightmares, and I don't know if I can trust LocalStorage for storing User data of that size. I am thinking also of adding some sort of bulk import/export solution that will allow for storing the workouts on the local user device and transferring them to another device.

I understand, this is indeed not simple, perhaps it would be nice to find a way to link to a bank of workouts hosted somewhere else that users could simply load into the app before a workout ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants