- Flask frontend + serialized GPU worker + BTCPay invoice/webhook - 12 example images rendered from the real ComfyUI workflows - fix: ipadapter workflow uses modern IPAdapter node (was broken IPAdapterApply) - helper scripts: generate/optimize examples - README with deploy recipe
25 lines
1.1 KiB
HTML
25 lines
1.1 KiB
HTML
<!doctype html>
|
|
<html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1">
|
|
<title>Gallery — Comfy Apps</title>
|
|
<link rel="stylesheet" href="/static/style.css"></head>
|
|
<body>
|
|
<div class="wrap">
|
|
<header><div class="logo"><a href="/">Comfy<span>Apps</span></a></div><div class="nav"><a href="/">Home</a></div></header>
|
|
<div class="hero" style="padding-bottom:10px"><h1>Gallery</h1></div>
|
|
<div class="grid">
|
|
{% for j in jobs %}
|
|
<div class="card">
|
|
<div class="emoji">🖼️</div>
|
|
<h3>{{ j['app'].replace('_',' ').title() }}</h3>
|
|
<div><span class="status {{ j['status'] }}">{{ j['status'] }}</span></div>
|
|
{% if j['result_file'] %}
|
|
<a href="/image/{{ j['result_file'] }}" style="display:block;margin-top:14px"><img src="/image/{{ j['result_file'] }}" style="width:100%;border-radius:10px"></a>
|
|
{% else %}
|
|
<p class="muted" style="margin-top:12px;font-size:13px">{% if j['prompt'] %}“{{ j['prompt'][:70] }}…”{% else %}in progress{% endif %}</p>
|
|
{% endif %}
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
</body></html>
|