{% extends 'base.html' %} {% block title %}{{ 'Overview' if personal else profile.display_name }} · Stride{% endblock %} {% block breadcrumb %}{{ 'OVERVIEW' if personal else 'SHARED PROFILE' }}{% endblock %} {% block head %}{% endblock %} {% block content %} {% if not personal %}← Friends{% endif %}

{{ 'Your running' if personal else profile.display_name ~ '’s running' }}

{{ 'Distance, effort, and your recent sessions.' if personal else 'Activities shared with friends.' }}

{% if not personal %}Friends · Shared runs{% endif %}
LATEST RUN / ROUTE REPLAY

{{ mapped_run.title if mapped_run else 'Your next run starts here.' }}

{% if mapped_run %}

{{ mapped_run.started_at|localdate(mapped_run.owner.timezone) }} · {{ '%.2f'|format(mapped_run.distance_km) }} km

View run {{ icon('arrow') }}{% else %}

Import a run with GPS to see your route in motion.

{% endif %}

{{ 'Loading recorded route…' if mapped_run else 'No GPS running route available yet.' }}

ACTIVITIES {{ icon('run') }}
{{ stats.count }}

Recorded sessions

TIME ON YOUR FEET {{ icon('clock') }}
{{ stats.duration|duration }}

Total recorded timer time

AVERAGE PACE {{ icon('route') }}
{{ stats.pace }}/km

Weighted by distance

WEEKLY DISTANCE

Training volume

8 weeks to latest activity
TOTAL ASCENT
{{ '{:,.0f}'.format(stats.elevation) }}m

Elevation gain

Across {{ stats.count }} recorded activities

{% if record_book.records %}
{% for record in record_book.records %}{{ record.label }}{{ pace_text(record.seconds * 1000 / record.distance) }}/km{% endfor %}
{% endif %}
SESSION HISTORY

{{ 'Your activities' if personal else 'Shared activities' }}

{{ stats.count }} activities
{% include '_activities.html' %}
{% endblock %} {% block scripts %}{% endblock %}