{% extends "base.html" %} {% import "partials/bag_card.html" as bag_card %} {% import "partials/icons.html" as icons %} {% import "partials/scan_input.html" as scan %} {% block title %}Brewlog{% endblock %} {% block head %} {% if is_authenticated %} {% endif %} {% endblock %} {% block content %} {% if is_authenticated %}
{{ scan::scan_input("scan-extract-form", "scan-image", "$_extracting", "$_extractError", "Describe the coffee bag…", "Waiting for response…") }}
{% include "partials/forms/scan_result_form.html" %}
{% endif %} {% if !recent_brews.is_empty() %}

Recent Brews

View all brews →
{% for brew in recent_brews %}
{{ brew.roast_name }}

{{ brew.roaster_name }}

{{ brew.coffee_weight }} · {{ brew.water_volume }} · {{ brew.water_temp }} · {{ brew.ratio }}

{{ brew.grind_setting }} · {{ brew.grinder_name }}

{{ brew.brewer_name }}{% if let Some(fp) = brew.filter_paper_name %} · {{ fp }}{% endif %}

{% if !brew.quick_notes.is_empty() %} {% for qn in brew.quick_notes %} {{ qn.label }} {% endfor %} {% else %} No Notes {% endif %}
{% if is_authenticated %}
{% if let Some(fp_id) = brew.filter_paper_id %} {% endif %}
{% endif %}
{% endfor %}
{% endif %} {% if !open_bags.is_empty() %}

Open Bags

View all bags →
{% for bag in open_bags %} {{ bag_card::card(bag, is_authenticated) }} {% endfor %}
{% endif %} {% if !recent_events.is_empty() %}

Recent Activity

View full timeline →
{% for event in recent_events %}
{{ event.kind_label }}

{{ event.title }}{% if let Some(sub) = event.subtitle %} · {{ sub }}{% endif %}

{% endfor %}
{% endif %}

Stats

{{ icons::beaker("h-6 w-6 text-accent") }} {{ stats.brews }} Brews {{ icons::fire("h-6 w-6 text-accent") }} {{ stats.roasts }} Roasts {{ icons::building("h-6 w-6 text-accent") }} {{ stats.roasters }} Roasters {{ icons::bag("h-6 w-6 text-accent") }} {{ stats.bags }} Bags {{ icons::cup("h-6 w-6 text-accent") }} {{ stats.cups }} Cups {{ icons::location("h-6 w-6 text-accent") }} {{ stats.cafes }} Cafes {{ icons::wrench("h-6 w-6 text-accent") }} {{ stats.gear }} Gear
{% endblock %}