{% extends "base.html" %} {% block title %}{{ seo.title if seo is defined and seo else 'news48 — Fact-Checked News, 48 Hours at a Time' }}{% endblock %} {% block json_ld %} {% if seo is defined and seo and seo.json_ld %} {% for item in seo.json_ld %} {% endfor %} {% endif %} {% endblock %} {% block body_class %}page-index{% endblock %} {% block content %}

verified news that disappears in 48 hours

Clear summaries, live fact-checks, and grouped topics — refreshed around the clock, gone by design.
{{ stats.live_stories }} stories {% if stats.verified %}{{ stats.verified }} verified{% endif %} {% if stats.mixed %}{{ stats.mixed }} mixed{% endif %} {% if stats.disputed %}{{ stats.disputed }} disputed{% endif %} {% if stats.unverifiable %}{{ stats.unverifiable }} unverifiable{% endif %} {{ stats.clusters }} clusters {{ stats.sources }} sources {% if stats.last_updated %} updated {{ stats.last_updated | relative_time }} {% endif %} view live monitor

live stories

{% for story in stories %}
[{{ "%02d" | format(loop.index) }}]

{{ story.title }}

{% if story.summary %}

{{ story.summary }}

{% endif %}
{{ story.source_name or story.feed_source_name or "Unknown" }} {{ story.created_at | relative_time }} {% if story.fact_check_status == "verified" %} ✓ Verified {% elif story.fact_check_status == "disputed" %} ✗ Disputed {% elif story.fact_check_status == "mixed" %} ~ Mixed {% elif story.fact_check_status == "unverifiable" %} ? Unverifiable {% endif %} {% if story.is_breaking %} Breaking {% endif %} {% for tag in story.tags | parse_tags %} {{ tag }} {% endfor %} {% if story.sentiment %} {% if story.sentiment == 'positive' %}▲{% elif story.sentiment == 'negative' %}▼{% else %}—{% endif %} {{ story.sentiment }} {% endif %}
Read more → Open original source ↗
{% else %}

No live stories are available in the current 48-hour window.

{% endfor %}
{% if stories | length >= 10 %} {% endif %}

trending topics

{% if clusters %}
{% for cluster in clusters %}
{{ cluster.name }}
{% if cluster.articles and cluster.articles[0].summary %} {{ cluster.articles[0].summary[:120] }}... {% endif %}
{% if cluster.articles and cluster.articles[0].title %}
→ {{ cluster.articles[0].title }}
{% endif %}
{{ cluster.article_count }} stories
{{ cluster.article_count | cluster_bar(max_cluster_count, 20) }}
{% endfor %}
{% else %}

No topic clusters are available in the current 48-hour window.

{% endif %}

expiring soon

Catch these stories before they leave the 48-hour window.

{% if expiring %}
{% for item in expiring %}
{{ item.title }} {{ item.created_at | hours_remaining }}h left
{% endfor %}
{% else %}

No stories are close to expiry right now.

{% endif %}

Everything on news48 self-destructs after 48 hours. No archive, no stale links — just what matters now.

{% endblock %}