{% extends "base.html" %} {% block extra_css %} {% endblock %} {% block extra_js %} {% endblock %} {% block breadcrumbs %} {% endblock %} {% block main %}

{{ property.name }}

{{ property.url }}
{% if user.is_authenticated %} Visibility Report · pdf Report · md {% if not property.is_protected %}
{% endif %} {% endif %}
live signals
http status
{{ property.current_status }}
{% if property.current_status == 200 %}OK · all clear{% else %}failing{% endif %}
tls cert
{% if property.invalid_cert %}invalid{% else %}valid{% endif %}
chain + trust
security
{% if property.has_security_issue %}issues{% else %}pass{% endif %}
header scan
response
{{ property.avg_response_time }} ms
rolling avg
{% if property.lighthouse_scores %}
lighthouse
{% for category, score in property.lighthouse_scores | items %}
{{ category }}
{{ score }}%
{% endfor %}
{% endif %}
response time · last 31 checks
status codes
uptime split
security · header scan
Use HTTPS {% if property.is_https %}pass{% else %}fail{% endif %}
Set MIME types {% if property.has_mime_type %}pass{% else %}fail{% endif %}
Content sniff protection {% if property.has_content_sniffing_protection %}pass{% else %}fail{% endif %}
Clickjack protection {% if property.has_clickjack_protection %}pass{% else %}fail{% endif %}
Hide server version {% if property.hides_server_version %}pass{% else %}fail{% endif %}
HSTS enabled {% if property.has_hsts %}pass{% else %}fail{% endif %}
HSTS preload {% if property.has_hsts_preload %}pass{% else %}fail{% endif %}
{% if user.is_authenticated %}
scheduled audits
Crawler  
Last success
Last attempt
Pages crawled
Duration
Issues found
Next run
Lighthouse  
Last success
Last attempt
Duration
Next run
{% endif %} {% if property.lighthouse_details %}
performance breakdown

Lighthouse combines these weighted metrics to produce the Performance score. Opportunities below are the biggest wins; savings are estimated against the audited URL only.

{% if property.lighthouse_details.metrics %}
{% for metric in property.lighthouse_details.metrics %}
{{ metric.acronym }} · {{ metric.weight }}%
{{ metric.display_value or "—" }}
{{ metric.title }}
{% endfor %}
{% endif %} {% if property.lighthouse_details.opportunities %}
top opportunities
Audit Detail Est. savings
{% for opp in property.lighthouse_details.opportunities %}
{{ opp.title }} {{ opp.display_value or "—" }} {% set saved = opp.savings_ms | format_ms_savings %} {% if saved %}{{ saved }}{% else %}{% endif %}
{% endfor %} {% else %}
No actionable opportunities; everything passing at this URL.
{% endif %}
{% endif %} {% if insights_groups and insights_groups | length > 0 %}
{% for group in insights_groups %}
{{ group.type }} · {{ group.items | length }}
Severity URL Issue Item
{% for insight in group.items %}
{{ insight.severity | upper }} {{ insight.url | url_path }} {{ insight.issue }} {{ insight.item or "" }}
{% endfor %} {% endfor %}
{% elif property.last_crawl_error %}
Last crawl failed: {{ property.last_crawl_error }}
{% endif %} {% endblock %}