feat: add DiceBear avatar proxy with style picker on signup and profile pages

Implement avatar generation via local proxy at `/avatar/{style}/{seed}` that fetches from DiceBear 9.x API with in-memory caching and fallback to initial-based SVG. Add avatar style selection dropdown to signup form and profile edit page, storing `avatar_style` in user records. Update comment rendering to support nested threading with parent-child relationships in post view. Add `avatar_url` and `avatar_styles` template globals, register avatar router in main app, and include avatar CSS classes for rounded image display.
This commit is contained in:
2026-05-10 19:33:53 +00:00
parent 15a3b990fe
commit f4343c3d05
26 changed files with 745 additions and 456 deletions
+1 -3
View File
@@ -122,9 +122,7 @@
</div>
</div>
{% else %}
<div class="card" style="text-align: center; padding: 3rem 1rem; grid-column: 1 / -1;">
<p style="color: var(--text-muted); font-size: 0.9375rem;">No projects found. Create one!</p>
</div>
<div class="empty-state" style="grid-column: 1 / -1;">No projects found. Create one!</div>
{% endfor %}
</div>
</div>