Community

Build packs. Share plans.

The Kinetic import formats for community packs, custom programs and plan files: for developers, coaches, IDE agents and any AI app that writes JSON.

01 Scope

Two import families for custom strength content.

Strength workout library

.kinetic-workout-library · .json. Reusable saved workouts and custom exercises.

Strength planning calendar

.kinetic-strength-plan · .json. Dated plans, weekly schedules, rest days.

There is no separate schedule file type beyond the strength planning format.

02 Encoding rules

JSON, UTF-8. schemaVersion is an integer. Field names are case-sensitive. bodyRegionsRaw is comma-separated. Dates are full ISO 8601 date-times.

"date": "2026-04-06T00:00:00Z"     ✓
"date": "2026-04-06"               ✗ date-only

03 Strict vs flexible fields

FieldTypeStrictAccepted
schemaVersionintegerYes1
exerciseCategorystringYessee enums
equipmentstringYessee enums
bodyRegionsRawstringYescomma-separated regions
entryTypestringYesworkout, rest
name · title · notes · goal · category · appVersionstringNofree text

04 Allowed enum values

Exercise category

Equipment

Body region

{ "bodyRegionsRaw": "chest,shoulders,triceps" }

05 Reuse built-in exercises first

If the movement exists in the default library, use its exact id as exerciseIdentifier. Create a customExercises entry only for gym-specific machines, house variations, uncommon cable or band drills, or specialty bars.

Built-in exerciseexerciseIdentifierCategoryEquipment
Barbell Back Squatbarbell_back_squatsquatbarbell
Romanian Deadliftromanian_deadlifthingebarbell
Dumbbell Bench Pressdumbbell_bench_presspushdumbbell
Pull-Uppull_uppullbodyweight
Walking Lungewalking_lungelungedumbbell
Overhead Pressoverhead_presspushbarbell
Cable Rowcable_rowpullcable
Goblet Squatgoblet_squatsquatdumbbell
Farmer's Carryfarmers_carrycarrydumbbell
Plankplankcorebodyweight
Leg Pressleg_presssquatmachine
Cable Face Pullcable_face_pullpullcable
Barbell Bench Pressbarbell_bench_presspushbarbell
Incline Dumbbell Pressincline_dumbbell_presspushdumbbell
Lat Pulldownlat_pulldownpullcable
Seated Cable Rowseated_cable_rowpullcable
Barbell Bent-Over Rowbarbell_bent_over_rowpullbarbell
Dumbbell Lateral Raisedumbbell_lateral_raiseisolationdumbbell
Triceps Pushdowntriceps_pushdownisolationcable
Dumbbell Biceps Curldumbbell_biceps_curlisolationdumbbell
Bulgarian Split Squatbulgarian_split_squatlungedumbbell
Glute Bridgeglute_bridgehingebodyweight
Standing Calf Raisestanding_calf_raiseisolationmachine
Dead Bugdead_bugcorebodyweight

06 Supported import formats

Workout library

Programs are reusable, not dated. Custom exercises are referenced as custom-<lowercased-uuid>; duplicate names import as safe copies.

{
  "schemaVersion": 1,
  "exportedAt": "2026-03-28T18:00:00Z",
  "appVersion": "1.0 (1)",
  "programs": [],
  "customExercises": []
}

Strength planning calendar

Plans are named calendars with dated entries; entryType is workout or rest; rest entries have an empty exercises array.

{
  "schemaVersion": 1,
  "exportedAt": "2026-03-28T18:00:00Z",
  "appVersion": "1.0 (1)",
  "plans": []
}

07 Mapping requests to formats

You wantUse
Reusable custom workoutsWorkout library
Community workout packWorkout library
Custom exercise packWorkout library
Weekly split with datesPlanning calendar
Monthly schedulePlanning calendar
Rest-day schedulePlanning calendar

08 AI prompt templates

For any AI app, IDE agent or coding assistant. Copy a template and replace the brief at the bottom.

Generate a workout library pack

JSON only, schemaVersion 1, full ISO 8601 date-times, exact enums, every program and exercise field, realistic UUIDs, no markdown fences.

Generate a valid Kinetic strength workout library JSON file.

Requirements:
- Output JSON only.
- Use schemaVersion 1.
- Use full ISO 8601 date-times, for example 2026-04-06T00:00:00Z. Never date-only values.
- Include top-level fields: schemaVersion, exportedAt, appVersion, programs, customExercises.
- Use exact enum values for exerciseCategory, equipment, and bodyRegionsRaw.
- bodyRegionsRaw must be a comma-separated string using only:
  chest, upperBack, lowerBack, shoulders, biceps, triceps, forearms, core, glutes, quads, hamstrings, calves, adductors, abductors, traps
- Each program must include id, name, category, notes, createdAt, updatedAt, and exercises.
- Each exercise must include id, exerciseIdentifier, exerciseName, exerciseCategory, equipment, bodyRegionsRaw, sortOrder, targetSets, targetReps, targetWeight, targetRestSeconds.
- If you include customExercises, each must include id, name, category, equipment, bodyRegionsRaw, createdAt, updatedAt.
- Use realistic UUIDs.
- Do not include markdown fences.

Pack brief:
[PASTE THE COMMUNITY PACK OR CUSTOM LIBRARY REQUEST HERE]

Generate a strength planning calendar

JSON only, schemaVersion 1, entryType workout or rest, full timestamps (not YYYY-MM-DD), planned exercises on workout days, empty arrays on rest days.

Generate a valid Kinetic strength planning JSON file.

Requirements:
- Output JSON only.
- Use schemaVersion 1.
- Use full ISO 8601 date-times, for example 2026-04-06T00:00:00Z. Never date-only values.
- Include top-level fields: schemaVersion, exportedAt, appVersion, plans.
- Use exact enum values for exerciseCategory, equipment, and bodyRegionsRaw.
- entryType must be exactly workout or rest.
- bodyRegionsRaw must be a comma-separated string using only:
  chest, upperBack, lowerBack, shoulders, biceps, triceps, forearms, core, glutes, quads, hamstrings, calves, adductors, abductors, traps
- Each plan must include id, name, goal, notes, createdAt, updatedAt, and entries.
- Each entry must include id, date, entryType, title, notes, and exercises.
- Workout entries should include planned exercises.
- Rest entries should usually have an empty exercises array.
- Each exercise must include id, exerciseIdentifier, exerciseName, exerciseCategory, equipment, bodyRegionsRaw, sortOrder, targetSets, targetReps, targetWeight, targetRestSeconds.
- Use realistic UUIDs.
- Do not include markdown fences.

Planning brief:
[PASTE THE WEEKLY SPLIT OR SCHEDULE REQUEST HERE]

Convert a spreadsheet or notes dump

Pick library or calendar, normalise enums, keep titles human, sortOrder from 0, empty exercises on rest days, no explanations.

Convert the following training notes into a valid Kinetic import file.

Rules:
- Decide whether the content is better represented as:
  1. a strength workout library, or
  2. a strength planning calendar
- Output JSON only.
- Use the exact Kinetic schema for the chosen format.
- Use schemaVersion 1.
- Use full ISO 8601 date-times, for example 2026-04-06T00:00:00Z. Never date-only values.
- Normalize all enum values to valid Kinetic raw values.
- Keep titles and notes human-readable.
- Preserve exercise order using sortOrder starting at 0.
- Use an empty exercises array for rest days.
- Do not include markdown fences or explanations.

Source content:
[PASTE NOTES, CSV ROWS, OR SPREADSHEET CONTENT HERE]

09 Validate before importing

The Kinetic validator Drop a strength pack, a plan file, a week file or a meal plan. It checks everything in your browser, suggests fixes and previews your week. Nothing is uploaded. OPEN THE VALIDATOR →

10 Import instructions

Workout library

Get a valid .kinetic-workout-library file onto your phone (Files, AirDrop, download). Kinetic › Settings › strength library › Import. Programs and custom exercises import with collision-safe names.

Strength plan

Get a valid .kinetic-strength-plan file onto your phone. Kinetic › Strength Planner › Import. Duplicates are renamed safely.

11 Packaging advice

One coherent theme per file, e.g. upper-lower-hypertrophy-pack.kinetic-workout-library or 8-week-summer-cut.kinetic-strength-plan. Plain-English titles and notes. Best complete pack: one library file for reusable workouts plus one planner file for the dated schedule.

12 Compatibility notes

Schema version 1. Custom extensions and plain .json both import when the payload is valid. Strength planning imports are strength-only today.

13 Plan files (.kinetic-plan)

A plan file is one week (or a block of weeks) for every activity: runs, lifts, HIIT, yoga, Pilates, stretching and rest. Coaches send it to clients over any chat or email; your own AI can write one from the plan-file guide. Kinetic opens it in an import preview, so nothing changes until you accept.

{
  "format": "kinetic-plan",
  "schemaVersion": 1,
  "exportedAt": "2026-10-01T14:05:00Z",
  "appVersion": "1.0.12 (57)",
  "plans": [
    {
      "id": "0b6f6c1e-5c8b-4a9e-9d3a-000000000001",
      "name": "5K Build",
      "goal": "5K under 25:00",
      "notes": "",
      "entries": [
        {
          "id": "0b6f6c1e-5c8b-4a9e-9d3a-000000000105",
          "date": "2026-10-05",
          "activity": "running",
          "title": "Easy run",
          "notes": "",
          "cardio": { "target": "time", "durationSeconds": 1800, "zone": 2 }
        },
        {
          "id": "0b6f6c1e-5c8b-4a9e-9d3a-000000000106",
          "date": "2026-10-06",
          "activity": "strength",
          "title": "Upper body A",
          "notes": "",
          "strength": {
            "exercises": [
              {
                "id": "0b6f6c1e-5c8b-4a9e-9d3a-000000000206",
                "exerciseIdentifier": "Barbell_Bench_Press_-_Medium_Grip",
                "exerciseName": "Barbell Bench Press - Medium Grip",
                "exerciseCategory": "push",
                "equipment": "barbell",
                "bodyRegionsRaw": "chest",
                "sortOrder": 0,
                "targetSets": 4,
                "targetReps": 8,
                "targetWeight": 135,
                "targetRestSeconds": 90
              }
            ]
          }
        },
        {
          "id": "0b6f6c1e-5c8b-4a9e-9d3a-000000000107",
          "date": "2026-10-07",
          "activity": "pilates",
          "title": "Pilates core",
          "notes": "",
          "mindBody": { "mode": "guided", "focus": "core", "durationMinutes": 30 }
        },
        {
          "id": "0b6f6c1e-5c8b-4a9e-9d3a-000000000108",
          "date": "2026-10-08",
          "activity": "hiit",
          "title": "Intervals",
          "notes": "",
          "hiit": { "rounds": 8, "workSeconds": 40, "restSeconds": 20 }
        },
        {
          "id": "0b6f6c1e-5c8b-4a9e-9d3a-000000000110",
          "date": "2026-10-10",
          "activity": "stretching",
          "title": "Mobility",
          "notes": "",
          "mindBody": { "mode": "timer", "durationMinutes": 20 }
        },
        {
          "id": "0b6f6c1e-5c8b-4a9e-9d3a-000000000111",
          "date": "2026-10-11",
          "activity": "rest",
          "title": "Rest",
          "notes": ""
        }
      ]
    }
  ]
}