Brand and design · Hi-fi screens · S24 Growth · Growth

Data-binding map: S24 Growth · Growth

Data-binding map of Growth · Growth: every field to its source, and what each required state shows.

Generated by botgumi-design index from ../../screens.json. Edit that file, not this page.

Every field S24 shows and where it comes from.

Field Source (endpoint or local state) Format Fallback
range call GET /growth · GET /v1/growth?range=4w|8w|12w segmented 8w
language chips api GET /growth languages[] · growth.languages[] → ?language= shown only when languages.length > 1; "All languages" + endonym + session count hidden
ability api GET /growth ability · growth.ability, ability_delta_30d, sample_count, algo_version display + delta null → baseline card growth.baseline.title with sample_count
ability api GET /growth ability_delta_30d
ability api GET /growth sample_count
ability api GET /growth algo_version
level badge api GET /me level.level · me.level.level — —
trend label api GET /growth trend · growth.trend growth.trend.<value> —
chart api GET /growth series[].week_start · growth.series[].week_start / value / sample_n one point per week; value = null && sample_n = 0 → gap marker "None"; no interpolation; weeks before the first session are blank; partial current week (CCR-5) dashed —
chart api GET /growth series[].value
chart api GET /growth series[].sample_n
hook api GET /growth next_unlock · growth.next_unlock (Accept-Language) lock pill hidden when null
dimensions api GET /growth dimensions[].label · growth.dimensions[].label (Accept-Language) / score / delta_30d / color_token bars null score → "—" + "shown after 3 sessions"
dimensions api GET /growth dimensions[].score
dimensions api GET /growth dimensions[].delta_30d
dimensions api GET /growth dimensions[].color_token
micro-skills api GET /growth micro_skills[].title · growth.micro_skills[].title (Accept-Language) / suggested / achieved / mastery + current focus = me.focus.micro_skill_id pips + % suggested = 0 → "not suggested yet"
micro-skills api GET /growth micro_skills[].suggested
micro-skills api GET /growth micro_skills[].achieved
micro-skills api GET /growth micro_skills[].mastery
micro-skills api GET /me focus.micro_skill_id
achievements api GET /growth achievements[] · growth.achievements[] (Accept-Language) unlocked lime / locked progress —
recent sessions api GET /growth recent_sessions[] · growth.recent_sessions[] → article.title (article language), completed_at, round1_overall, round2_overall, duration_delta_ms, xp_awarded row hide section when empty
empty api GET /growth state · growth.state = empty empty state —
GET /v1/growth?range=4w|8w|12w&language= call GET /growth · From the board's data-bind; no row in data-binding.md yet.
growth.ability_delta_30d api GET /growth ability_delta_30d · From the board's data-bind; no row in data-binding.md yet.
growth.achievements[0] (Accept-Language) api GET /growth achievements[] · From the board's data-bind; no row in data-binding.md yet.
growth.achievements[1] (Accept-Language) api GET /growth achievements[] · From the board's data-bind; no row in data-binding.md yet.
growth.achievements[2] (Accept-Language) api GET /growth achievements[] · From the board's data-bind; no row in data-binding.md yet.
growth.achievements[3] (Accept-Language) api GET /growth achievements[] · From the board's data-bind; no row in data-binding.md yet.
growth.achievements[4] (Accept-Language) api GET /growth achievements[] · From the board's data-bind; no row in data-binding.md yet.
growth.achievements[5] (Accept-Language) api GET /growth achievements[] · From the board's data-bind; no row in data-binding.md yet.
growth.achievements[6] (Accept-Language) api GET /growth achievements[] · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[0].delta_30d api GET /growth dimensions[].delta_30d · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[0].label (Accept-Language) api GET /growth dimensions[].label · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[0].score api GET /growth dimensions[].score · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[1].delta_30d api GET /growth dimensions[].delta_30d · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[1].label (Accept-Language) api GET /growth dimensions[].label · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[1].score api GET /growth dimensions[].score · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[2].delta_30d api GET /growth dimensions[].delta_30d · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[2].label (Accept-Language) api GET /growth dimensions[].label · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[2].score api GET /growth dimensions[].score · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[3].delta_30d api GET /growth dimensions[].delta_30d · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[3].label (Accept-Language) api GET /growth dimensions[].label · From the board's data-bind; no row in data-binding.md yet.
growth.dimensions[3].score api GET /growth dimensions[].score · From the board's data-bind; no row in data-binding.md yet.
growth.languages[0].language / sessions → GET /v1/growth?language= api GET /growth languages[].language · From the board's data-bind; no row in data-binding.md yet.
growth.languages[0].language / sessions → GET /v1/growth?language= api GET /growth languages[].sessions
growth.languages[0].language / sessions → GET /v1/growth?language= call GET /growth
growth.languages[1].language / sessions → GET /v1/growth?language= api GET /growth languages[].language · From the board's data-bind; no row in data-binding.md yet.
growth.languages[1].language / sessions → GET /v1/growth?language= api GET /growth languages[].sessions
growth.languages[1].language / sessions → GET /v1/growth?language= call GET /growth
growth.micro_skills[0] (mastery = achieved/suggested, last 10 sessions) api GET /growth micro_skills[] · From the board's data-bind; no row in data-binding.md yet.
growth.micro_skills[1] (mastery = achieved/suggested, last 10 sessions) api GET /growth micro_skills[] · From the board's data-bind; no row in data-binding.md yet.
growth.micro_skills[2] (mastery = achieved/suggested, last 10 sessions) api GET /growth micro_skills[] · From the board's data-bind; no row in data-binding.md yet.
growth.micro_skills[3] (mastery = achieved/suggested, last 10 sessions) api GET /growth micro_skills[] · From the board's data-bind; no row in data-binding.md yet.
growth.micro_skills[4] (mastery = achieved/suggested, last 10 sessions) api GET /growth micro_skills[] · From the board's data-bind; no row in data-binding.md yet.
growth.micro_skills[5] (mastery = achieved/suggested, last 10 sessions) api GET /growth micro_skills[] · From the board's data-bind; no row in data-binding.md yet.
growth.micro_skills[6] (mastery = achieved/suggested, last 10 sessions) api GET /growth micro_skills[] · From the board's data-bind; no row in data-binding.md yet.
growth.next_unlock (Accept-Language) api GET /growth next_unlock · From the board's data-bind; no row in data-binding.md yet.
growth.recent_sessions[0] api GET /growth recent_sessions[] · From the board's data-bind; no row in data-binding.md yet.
growth.recent_sessions[1] api GET /growth recent_sessions[] · From the board's data-bind; no row in data-binding.md yet.
growth.recent_sessions[2] api GET /growth recent_sessions[] · From the board's data-bind; no row in data-binding.md yet.
growth.sample_count (ability = null) api GET /growth sample_count · From the board's data-bind; no row in data-binding.md yet.
growth.sample_count + algo_version api GET /growth sample_count · From the board's data-bind; no row in data-binding.md yet.
growth.sample_count + algo_version api GET /growth algo_version

Binds on the boards

The data-bind values across every state.

  • GET /v1/growth?range=4w|8w|12w&language=
  • growth.ability
  • growth.ability_delta_30d
  • growth.achievements[0] (Accept-Language)
  • growth.achievements[1] (Accept-Language)
  • growth.achievements[2] (Accept-Language)
  • growth.achievements[3] (Accept-Language)
  • growth.achievements[4] (Accept-Language)
  • growth.achievements[5] (Accept-Language)
  • growth.achievements[6] (Accept-Language)
  • growth.dimensions[0].delta_30d
  • growth.dimensions[0].label (Accept-Language)
  • growth.dimensions[0].score
  • growth.dimensions[1].delta_30d
  • growth.dimensions[1].label (Accept-Language)
  • growth.dimensions[1].score
  • growth.dimensions[2].delta_30d
  • growth.dimensions[2].label (Accept-Language)
  • growth.dimensions[2].score
  • growth.dimensions[3].delta_30d
  • growth.dimensions[3].label (Accept-Language)
  • growth.dimensions[3].score
  • growth.languages[0].language / sessions → GET /v1/growth?language=
  • growth.languages[1].language / sessions → GET /v1/growth?language=
  • growth.micro_skills[0] (mastery = achieved/suggested, last 10 sessions)
  • growth.micro_skills[1] (mastery = achieved/suggested, last 10 sessions)
  • growth.micro_skills[2] (mastery = achieved/suggested, last 10 sessions)
  • growth.micro_skills[3] (mastery = achieved/suggested, last 10 sessions)
  • growth.micro_skills[4] (mastery = achieved/suggested, last 10 sessions)
  • growth.micro_skills[5] (mastery = achieved/suggested, last 10 sessions)
  • growth.micro_skills[6] (mastery = achieved/suggested, last 10 sessions)
  • growth.next_unlock (Accept-Language)
  • growth.recent_sessions[0]
  • growth.recent_sessions[1]
  • growth.recent_sessions[2]
  • growth.sample_count (ability = null)
  • growth.sample_count + algo_version
  • growth.series[].week_start / value / sample_n
  • growth.state = empty
  • growth.trend
  • me.level.level

States

  • Loading: From states.md (Growth): chart/card skeletons
  • Empty: growth.state = empty (0 sessions).
  • Error (retryable / not): From states.md (Growth): inline Retry card · fatal: generic error
  • Offline: From states.md (Growth): cached /growth + banner