rssume 0.2.1

RSS middleware with AI-powered translation and summarization
{% extends "base.html" %}
{% block title %}rssume Dashboard{% endblock %}
{% block content %}
<h1>Dashboard</h1>
<p class="subtitle">Monitor your RSS feeds and AI processing status</p>

{% set feeds_count = feeds | length %}
{% set total_articles = 0 %}
{% set total_translated = 0 %}
{% set total_with_summary = 0 %}
{% for s in stats %}
{% set total_articles = total_articles + s.article_count %}
{% set total_translated = total_translated + s.translated_count %}
{% set total_with_summary = total_with_summary + s.with_summary_count %}
{% endfor %}
{% include "partials/stats_bar.html" %}

<h2>Feeds</h2>
<table>
    <thead><tr><th>Name</th><th>Status</th><th>Articles</th><th>Translated</th><th>Summarized</th><th>Last Fetch</th><th>RSS</th></tr></thead>
    <tbody>
        {% for feed in feeds %}
        {% set fs = feed_statuses | get(key=feed.name) %}
        <tr>
            <td><a href="/panel/feed/{{ feed.name }}" style="color:var(--link);text-decoration:none;">{{ feed.name }}</a></td>
            <td><span class="status-dot" id="status-{{ feed.name }}" style="color: {% if fs and fs.status == 'Fetching' %}#0070f3{% elif fs and fs.status starts_with 'Translating' %}#0070f3{% elif fs and fs.status == 'Done' %}#50e3c2{% elif fs and fs.status == 'Error' %}#ee0000{% else %}#888888{% endif %};" title="{{ fs.status | default(value='Idle') }}"></span></td>
            <td>{% set c=0 %}{% for s in stats %}{% if s.feed_name==feed.name %}{% set c=s.article_count %}{% endif %}{% endfor %}{{ c }}</td>
            <td>{% set c=0 %}{% for s in stats %}{% if s.feed_name==feed.name %}{% set c=s.translated_count %}{% endif %}{% endfor %}<span class="badge {% if c>0 %}badge-success{% endif %}">{{ c }}</span></td>
            <td>{% set c=0 %}{% for s in stats %}{% if s.feed_name==feed.name %}{% set c=s.with_summary_count %}{% endif %}{% endfor %}<span class="badge {% if c>0 %}badge-success{% endif %}">{{ c }}</span></td>
            <td style="font-size:12px;color:var(--mute);">{% if fs and fs.last_fetch_at %}{{ fs.last_fetch_at | truncate(length=19) }}{% else %}--{% endif %}</td>
            <td><code style="font-size:12px;">/feeds/{{ feed.name }}</code></td>
        </tr>
        {% endfor %}
    </tbody>
</table>

{% if feeds | length == 0 %}
<div class="empty-state"><h3>No feeds configured</h3><p>Add RSS feeds to your config.toml to get started.</p></div>
{% endif %}
{% endblock %}