|
1 | 1 | { |
2 | | - "version": "1.1.0", |
3 | | - "description": "Foundation Milestones are trackable micro-achievements within the Beginner level. They provide progress feedback for athletes who are below the OP Beginner benchmarks. Milestones are NOT levels -- they are pre-level markers that apps can use to show early progress. Estimated timelines assume a healthy but sedentary adult training 3x/week. For deconditioned, frail, or post-injury individuals, timelines may be 2-3x longer (ICFSR consensus: 3-5 months for meaningful functional improvement).", |
| 2 | + "version": "1.2.0", |
| 3 | + "description": "Foundation Milestones are trackable micro-achievements below the Beginner level. They provide progress feedback for athletes who are below the OP Beginner benchmarks. Milestones are NOT levels. They are pre-level markers that apps can use to show early progress. Estimated timelines assume a healthy but sedentary adult training 3x/week.", |
4 | 4 | "milestones": [ |
5 | 5 | { |
6 | 6 | "id": "F1", |
7 | 7 | "name": "Foundation", |
8 | 8 | "shortName": "F1", |
9 | 9 | "color": "#86EFAC", |
10 | | - "description": "Can perform basic human movements safely. Ready to start a bodyweight exercise program.", |
| 10 | + "description": "Can perform basic human movements safely. Standing movements only, no floor work. A chair and household items are all you need.", |
11 | 11 | "estimatedWeeks": "1-2", |
12 | 12 | "requirements": [ |
13 | 13 | { |
|
24 | 24 | "criteria": { "type": "reps", "target": 10 }, |
25 | 25 | "description": "10 push-ups against a wall with full range of motion" |
26 | 26 | }, |
27 | | - { |
28 | | - "movement": "glute_bridge", |
29 | | - "name": "Glute Bridge", |
30 | | - "category": "pulling", |
31 | | - "criteria": { "type": "reps", "target": 10 }, |
32 | | - "description": "10 glute bridges with full hip extension" |
33 | | - }, |
34 | 27 | { |
35 | 28 | "movement": "farmers_carry_30s", |
36 | 29 | "name": "Farmer's Carry", |
37 | | - "category": "gymnastics", |
| 30 | + "category": "carrying", |
38 | 31 | "criteria": { "type": "time", "target": 30, "unit": "seconds" }, |
39 | | - "description": "Carry two heavy bags or water bottles (approx. 5kg each) while walking for 30 seconds" |
| 32 | + "description": "Carry two heavy bags or water bottles while walking for 30 seconds" |
40 | 33 | }, |
41 | 34 | { |
42 | | - "movement": "walk_1km", |
43 | | - "name": "Walk 1km", |
| 35 | + "movement": "walk_500m", |
| 36 | + "name": "Walk 500m", |
44 | 37 | "category": "monostructural", |
45 | 38 | "criteria": { "type": "completion" }, |
46 | | - "description": "Walk 1 kilometer without stopping" |
| 39 | + "description": "Walk 500 meters without stopping" |
47 | 40 | } |
48 | 41 | ], |
49 | | - "sources": ["rikli_jones_2013", "jones_rikli_1999", "nsca_essentials_2016", "bohannon_2019", "who_physical_activity_2020", "chodzko_zajko_2009"] |
| 42 | + "sources": ["rikli_jones_2013", "jones_rikli_1999", "nsca_essentials_2016", "bohannon_2019", "who_physical_activity_2020"] |
50 | 43 | }, |
51 | 44 | { |
52 | 45 | "id": "F2", |
53 | 46 | "name": "Moving", |
54 | 47 | "shortName": "F2", |
55 | 48 | "color": "#4ADE80", |
56 | | - "description": "Can perform bodyweight exercises with good form. Building functional capacity for daily activities and exercise.", |
| 49 | + "description": "Can perform bodyweight exercises with good form. Floor work introduced, still no gym needed.", |
57 | 50 | "estimatedWeeks": "2-4", |
58 | 51 | "requirements": [ |
59 | 52 | { |
60 | 53 | "movement": "air_squat_partial", |
61 | 54 | "name": "Air Squat (Partial Depth)", |
62 | 55 | "category": "squatting", |
63 | | - "criteria": { "type": "reps", "target": 20 }, |
64 | | - "description": "20 bodyweight squats to approximately parallel" |
| 56 | + "criteria": { "type": "reps", "target": 15 }, |
| 57 | + "description": "15 bodyweight squats to approximately parallel" |
65 | 58 | }, |
66 | 59 | { |
67 | 60 | "movement": "incline_push_up", |
|
71 | 64 | "description": "10 push-ups with hands on a bench-height surface" |
72 | 65 | }, |
73 | 66 | { |
74 | | - "movement": "hip_hinge_pvc", |
75 | | - "name": "Hip Hinge (Broomstick)", |
| 67 | + "movement": "standing_hip_hinge", |
| 68 | + "name": "Standing Hip Hinge", |
76 | 69 | "category": "pulling", |
77 | 70 | "criteria": { "type": "reps", "target": 10 }, |
78 | | - "description": "10 hip hinges with broomstick along spine maintaining 3 points of contact" |
| 71 | + "description": "10 bodyweight hip hinges with flat back, hands sliding down thighs to just below knee" |
79 | 72 | }, |
80 | 73 | { |
81 | 74 | "movement": "plank_30s", |
82 | | - "name": "Plank Hold", |
83 | | - "category": "bodyweight", |
| 75 | + "name": "Forearm Plank", |
| 76 | + "category": "core", |
84 | 77 | "criteria": { "type": "time", "target": 30, "unit": "seconds" }, |
85 | 78 | "description": "Hold a forearm plank for 30 seconds with neutral spine" |
86 | 79 | }, |
87 | 80 | { |
88 | | - "movement": "walk_run_intervals", |
89 | | - "name": "Walk/Run 800m", |
| 81 | + "movement": "walk_1km", |
| 82 | + "name": "Walk 1km", |
90 | 83 | "category": "monostructural", |
91 | | - "criteria": { "type": "completion", "details": "800m of walk/run combination" }, |
92 | | - "description": "Complete 800 meters of walking and running in any combination" |
| 84 | + "criteria": { "type": "completion" }, |
| 85 | + "description": "Walk 1 kilometer without stopping" |
93 | 86 | } |
94 | 87 | ], |
95 | | - "sources": ["nsca_essentials_2016", "mcgill_2015", "strand_2014", "acsm_guidelines", "fragala_2019"] |
| 88 | + "sources": ["nsca_essentials_2016", "mcgill_2015", "strand_2014", "acsm_guidelines"] |
96 | 89 | }, |
97 | 90 | { |
98 | 91 | "id": "F3", |
99 | 92 | "name": "Ready", |
100 | 93 | "shortName": "F3", |
101 | 94 | "color": "#22C55E", |
102 | | - "description": "Movement quality and base fitness sufficient for structured training with equipment. Ready for gym onboarding and barbell introduction.", |
| 95 | + "description": "Movement quality and base fitness sufficient for structured training. Ready for gym onboarding and barbell introduction.", |
103 | 96 | "estimatedWeeks": "4-8", |
104 | 97 | "requirements": [ |
105 | 98 | { |
|
110 | 103 | "description": "20 bodyweight squats below parallel with good form" |
111 | 104 | }, |
112 | 105 | { |
113 | | - "movement": "push_up_single", |
114 | | - "name": "Full Push-up", |
| 106 | + "movement": "knee_push_up", |
| 107 | + "name": "Knee Push-up", |
115 | 108 | "category": "pressing", |
116 | | - "criteria": { "type": "reps", "target": 1 }, |
117 | | - "description": "1 full push-up with chest to floor and full lockout" |
| 109 | + "criteria": { "type": "reps", "target": 10 }, |
| 110 | + "description": "10 push-ups from knees with chest to floor and full lockout" |
118 | 111 | }, |
119 | 112 | { |
120 | | - "movement": "rdl_bodyweight", |
121 | | - "name": "Romanian Deadlift (Bodyweight)", |
| 113 | + "movement": "dead_hang_15s", |
| 114 | + "name": "Dead Hang", |
122 | 115 | "category": "pulling", |
123 | | - "criteria": { "type": "reps", "target": 10 }, |
124 | | - "description": "10 bodyweight Romanian deadlifts with neutral spine" |
| 116 | + "criteria": { "type": "time", "target": 15, "unit": "seconds" }, |
| 117 | + "description": "Hang from a bar for 15 seconds with straight arms" |
125 | 118 | }, |
126 | 119 | { |
127 | | - "movement": "dead_hang_or_carry", |
128 | | - "name": "Dead Hang OR Farmer's Carry", |
129 | | - "category": "gymnastics", |
130 | | - "criteria": { "type": "either", "options": [ |
131 | | - { "movement": "dead_hang_30s", "type": "time", "target": 30, "unit": "seconds" }, |
132 | | - { "movement": "farmers_carry_60s", "type": "time", "target": 60, "unit": "seconds" } |
133 | | - ]}, |
134 | | - "description": "Hang from a bar for 30 seconds, OR carry two heavy bags (approx. 8kg each) for 60 seconds" |
| 120 | + "movement": "plank_60s", |
| 121 | + "name": "Forearm Plank", |
| 122 | + "category": "core", |
| 123 | + "criteria": { "type": "time", "target": 60, "unit": "seconds" }, |
| 124 | + "description": "Hold a forearm plank for 60 seconds with neutral spine" |
135 | 125 | }, |
136 | 126 | { |
137 | | - "movement": "run_mile_any_pace", |
138 | | - "name": "Run 1 Mile", |
| 127 | + "movement": "jog_1500m", |
| 128 | + "name": "Jog 1500m", |
139 | 129 | "category": "monostructural", |
140 | 130 | "criteria": { "type": "completion" }, |
141 | | - "description": "Run 1 mile (1609m) without walking breaks, at any pace" |
142 | | - }, |
143 | | - { |
144 | | - "movement": "plank_60s", |
145 | | - "name": "Plank Hold (60 Seconds)", |
146 | | - "category": "bodyweight", |
147 | | - "criteria": { "type": "time", "target": 60, "unit": "seconds" }, |
148 | | - "description": "Hold a forearm plank for 60 seconds with neutral spine" |
| 131 | + "description": "Jog 1500 meters without walking breaks, at any pace" |
149 | 132 | } |
150 | 133 | ], |
151 | | - "sources": ["nsca_essentials_2016", "mcgill_2015", "strand_2014", "acsm_guidelines", "bohannon_2019", "runninglevel", "fragala_2019"] |
| 134 | + "sources": ["nsca_essentials_2016", "mcgill_2015", "strand_2014", "acsm_guidelines", "bohannon_2019"] |
152 | 135 | } |
153 | 136 | ] |
154 | 137 | } |
0 commit comments